Aptikta keletas pažeidžiamumų, kurie kelia pavojų daugeliui „Matrix“ klientų

matricos protokolas

Matrix yra atviras momentinių pranešimų protokolas. Jis sukurtas taip, kad vartotojai galėtų bendrauti internetu, balso per IP ir vaizdo pokalbius.

Neseniai platformos kūrėjai decentralizuotos komunikacijoss «Matrix» paskelbė įspėjimą apie įvairius pažeidžiamumus kurie buvo aptikti ir jie yra kritiški bibliotekose matrix-js-sdk, matrix-ios-sdk ir matrix-android-sdk2, kurios leidžia serverio administratoriams apsimesti kitais vartotojais ir skaityti pranešimus iš tiesioginių šifruotų pokalbių (E2EE).

Minima, kad norint sėkmingai užbaigti ataką, turi būti prieiga prie namų serverio, kurį valdo užpuolikai (namų serveris: serveris klientų istorijai ir paskyroms saugoti). Kliento pusėje naudojamas šifravimas nuo galo iki galo neleidžia serverio administratoriui įsikišti į pranešimų siuntimą, tačiau nustatyti pažeidžiamumai leidžia apeiti šią apsaugą.

Problemos turi įtakos pagrindiniam „Element Matrix“ klientui (anksčiau vadinta Riot), skirta žiniatinkliui, staliniams kompiuteriams, iOS ir Android, taip pat trečiųjų šalių klientų programoms, pvz., Cinny, Beeper, SchildiChat, Circuli ir Synod.im.

Pažeidžiamumų nėra bibliotekose matrix-rust-sdk, hydrogen-sdk, Matrix Dart SDK, mautrix-python, mautrix-go ir matrix-nio, taip pat Hydrogen, ElementX, Nheko, FluffyChat, Siphon, Timmy, Gomuks ir Pantalaimon programos.

Atminkite, kad kritinės rimtumo problemos yra diegimo problemos matrix-js-sdk ir išvestiniuose dokumentuose, o ne protokolo problemos Matrix. Naujausioje mokslininkų darbo versijoje, kurią matėme, neteisingai pavaizduotas „Element“ kaip „etaloninis Matrix klientas“ ir painiojamos didesnio sunkumo diegimo klaidos su mažesnio sunkumo protokolo kritika.

Yra trys scenarijai pagrindinė ataka:

  1. „Matrix“ serverio administratorius gali nutraukti jaustukų patvirtinimą (SAS, trumpąsias autentifikavimo grandines), naudodamas kryžminius parašus ir apsimetinėdamas kitu vartotoju. Problemą sukelia matricos-js-sdk kodo pažeidžiamumas (CVE-2022-39250), susijęs su įrenginio ID tvarkymo ir kryžminio pasirašymo raktų deriniu.
  2. Užpuolikas, valdantis serverį, gali apsimesti patikimu siuntėju ir perduoti netikrą raktą, kad perimtų kitų vartotojų pranešimus. Problema kilo dėl matrix-js-sdk (CVE-2022-39251), matrix-ios-sdk (CVE-2022-39255) ir matrix-android-sdk2 (CVE-2022-39248) pažeidžiamumo, dėl kurio Klientas neteisingai priima pranešimus, adresuotus šifruotiems įrenginiams, naudodamas Megolm protokolą, o ne Olm , priskirdamas pranešimus Megolm siuntėjui, o ne tikram siuntėjui.
  3. Išnaudodamas pažeidžiamumą, paminėtą ankstesnėje pastraipoje, serverio administratorius taip pat gali pridėti fiktyvų atsarginį raktą prie vartotojo abonemento, kad išgautų raktus, naudojamus pranešimų šifravimui.

Tyrėjai, kurie nustatė pažeidžiamumą taip pat demonstravo atakas, kurios į pokalbį įtraukia trečiosios šalies vartotoją arba prijungti prie vartotojo trečiosios šalies įrenginį. Atakos pagrįstos tuo, kad paslaugų pranešimai, naudojami vartotojų įtraukimui į pokalbį, nėra susieti su pokalbių kūrėjo raktais ir gali būti generuojami serverio administratoriaus.

„Matrix“ projekto kūrėjai šias spragas priskyrė nedideliems, kadangi tokios manipuliacijos nėra būdingos Matrix ir veikia tik klientus pagal protokolą, tačiau tai nereiškia, kad jie neliks nepastebėti: jei vartotojas bus pakeistas, jis bus rodomas pokalbių vartotojų sąraše ir pridėjus įrenginį, bus rodomas įspėjimas ir įrenginys bus pažymėtas kaip nepatvirtintas (tokiu atveju iškart po neautorizuoto įrenginio pridėjimo jis pradės gauti viešuosius raktus, reikalingus žinutėms iššifruoti).

Pastebėsite, kad „matrix-rust-sdk“, „hydrogen-sdk“ ir kiti XNUMX-osios bei XNUMX-iosios kartos SDK nepaveikė klaidų, kurios yra pagrindinės čia iškilusių problemų priežastys. Būtent todėl stengėmės pakeisti pirmosios kartos SDK švariu, kruopščiai parašytu „Rust“ diegimu matricos-rust-sdk forma, kartu su nuolatiniu nepriklausomu viešuoju auditu.

Pažeidžiamumas atsiranda dėl atskirų diegimų klaidų Matricos protokolo ir tai nėra paties protokolo problemos. Šiuo metu projektas išleido probleminių SDK ir kai kurių klientų programų, sukurtų ant jų, atnaujinimus.

Pagaliau taip jus domina sužinoti daugiau apie tai, išsamią informaciją galite patikrinti sekanti nuoroda.


Straipsnio turinys atitinka mūsų principus redakcijos etika. Norėdami pranešti apie klaidą, spustelėkite čia.

Būkite pirmas, kuris pakomentuos

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas.

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.