Opdagede flere sårbarheder, der kompromitterer mange Matrix-kunder

matrix protokol

Matrix er en åben protokol til onlinemeddelelser. Det er designet til at give brugere mulighed for at kommunikere via online chat, voice over IP og videochat.

For nylig platform udviklere decentral kommunikations «Matrix» udgav en advarsel om forskellige sårbarheder der blev opdaget og de er kritiske i bibliotekerne matrix-js-sdk, matrix-ios-sdk og matrix-android-sdk2, der giver serveradministratorer mulighed for at efterligne andre brugere og læse beskeder fra end-to-end krypterede chats (E2EE).

Det nævnes det for at fuldføre et angreb skal en hjemmeserver styret af angriberne have adgang (hjemmeserver: en server til lagring af klienthistorik og konti). Brugen af ​​ende-til-ende-kryptering på klientsiden tillader ikke serveradministratoren at gribe ind i meddelelser, men de identificerede sårbarheder gør det muligt at omgå denne beskyttelse.

Problemer påvirker den primære Element Matrix-klient (tidligere Riot) til web, desktop, iOS og Android samt tredjepartsklientapps som Cinny, Beeper, SchildiChat, Circuli og Synod.im.

Sårbarhederne optræder ikke i bibliotekerne matrix-rust-sdk, hydrogen-sdk, Matrix Dart SDK, mautrix-python, mautrix-go og matrix-nio, samt Hydrogen, ElementX, Nheko, FluffyChat, Siphon, Timmy, Gomuks og Pantalaimon applikationer.

Bemærk, at kritiske alvorlighedsproblemer er implementeringsproblemer i matrix-js-sdk og derivater og ikke er protokolproblemer i Matrix. Den seneste version af forskernes papir, vi har set, portrætterer Element forkert som "the benchmark Matrix-klient" og forveksler implementeringsfejl med højere alvorlighed med protokolkritik af lavere alvorlighed.

Der er tre scenarier hovedangreb:

  1. Matrix-serveradministratoren kan bryde emoji-baseret verifikation (SAS, Short Authentication Chains) ved at bruge krydssignaturer og efterligne en anden bruger. Problemet er forårsaget af en sårbarhed (CVE-2022-39250) i matrix-js-sdk-koden relateret til kombinationen af ​​enheds-id-håndtering og krydssigneringsnøgler.
  2. En angriber, der kontrollerer serveren, kan efterligne en betroet afsender og videregive en falsk nøgle for at opsnappe beskeder fra andre brugere. Problemet skyldes en sårbarhed i matrix-js-sdk (CVE-2022-39251), matrix-ios-sdk (CVE-2022-39255) og matrix-android-sdk2 (CVE-2022-39248), som forårsagede Klienten accepterer forkert meddelelser adresseret til krypterede enheder, der bruger Megolm-protokollen i stedet for Olm , og tilskriver meddelelserne til Megolm-afsenderen i stedet for den faktiske afsender.
  3. Ved at udnytte de sårbarheder, der er nævnt i det foregående afsnit, kan serveradministratoren også tilføje en dummy reservenøgle til brugerkontoen for at udtrække de nøgler, der bruges til at kryptere meddelelser.

Forskerne, der identificerede sårbarheden også demonstreret angreb, der føjer en tredjepartsbruger til en chat eller tilslut en tredjepartsenhed til brugeren. Angrebene er baseret på, at de servicebeskeder, der bruges til at tilføje brugere til chatten, ikke er knyttet til chatopretterens nøgler og kan genereres af serveradministratoren.

Udviklerne af Matrix-projektet klassificerede disse sårbarheder som mindre, da sådanne manipulationer ikke er iboende for Matrix og kun påvirker klienter baseret på protokollen, men det betyder ikke, at de ikke vil gå ubemærket hen: hvis en bruger udskiftes, vil den blive vist på listen over chatbrugere, og når den tilføjes en enhed, vil en advarsel blive vist, og enheden vil blive markeret som ubekræftet (i dette tilfælde, umiddelbart efter tilføjelse af den uautoriserede enhed, vil den begynde at modtage de offentlige nøgler, der er nødvendige for at dekryptere meddelelser.

Du vil bemærke, at matrix-rust-sdk, hydrogen-sdk og andre XNUMX. og XNUMX. generations SDK'er ikke blev påvirket af fejlene i hovedårsagen til kritiske problemer her. Det er netop derfor, vi har arbejdet på at erstatte første generations SDK'er med en ren, omhyggeligt skrevet implementering af Rust i form af matrix-rust-sdk, komplet med en løbende uafhængig offentlig revision.

Sårbarheder er forårsaget af fejl i individuelle implementeringer af Matrix-protokollen og de er ikke problemer med selve protokollen. I øjeblikket har projektet udgivet opdateringer til de problematiske SDK'er og nogle af de klientapplikationer, der er bygget oven på dem.

Endelig ja du er interesseret i at kunne vide mere om det, kan du kontrollere detaljerne i følgende link.


Indholdet af artiklen overholder vores principper for redaktionel etik. Klik på for at rapportere en fejl her.

Vær den første til at kommentere

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort.

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.