Kritieke kwetsbaarheden die end-to-end encryptie in veel Matrix-clients compromitteren

De ontwikkelaars van het gedecentraliseerde communicatieplatform Matrix hebben gewaarschuwd voor kritieke kwetsbaarheden in de libraries matrix-js-sdk, matrix-ios-sdk en matrix-android-sdk2, waarmee serverbeheerders zich als andere gebruikers kunnen voordoen en berichten in chats met end-to-end encryptie (E2EE) kunnen lezen. De kwetsbaarheden zijn het gevolg van fouten in specifieke implementaties van het Matrix-protocol en zijn geen problemen van het protocol zelf. Momenteel heeft het project updates uitgebracht voor de problematische SDK's en een aantal client-applicaties die daarop zijn gebaseerd.

Voor een succesvolle aanval is toegang tot een door de aanvaller gecontroleerde thuisserver noodzakelijk server (homeserver — server voor het opslaan van de geschiedenis en klantaccounts). Het gebruik van end-to-end encryptie aan de clientzijde voorkomt niet dat een administrator de server zich mengt in het uitwisselen van berichten, maar de ontdekte kwetsbaarheden maken het mogelijk om deze bescherming te omzeilen. De problemen treffen de hoofdmatrixclient Element (voorheen Riot) voor web, desktop, iOS en Android, evenals externe client-applicaties, waaronder Cinny, Beeper, SchildiChat, Circuli en Synod.im. Kwetsbaarheden komen niet voor in de libraries matrix-rust-sdk, hydrogen-sdk, Matrix Dart SDK, mautrix-python, mautrix-go en matrix-nio, noch in de applicaties Hydrogen, ElementX, Nheko, FluffyChat, Syphon, Timmy, Gomuks en Pantalaimon.

Er worden drie hoofdspecificaties van aanvallen onderscheiden:

  • De beheerder van de Matrix-server kan de verificatie op basis van emoji (SAS, Short Authentication Strings) verstoren bij het gebruik van cross-signatures en zichzelf als een andere gebruiker voordoen. Dit probleem is veroorzaakt door een kwetsbaarheid (CVE-2022-39250) in de code van matrix-js-sdk, gerelateerd aan het mengen van de behandeling van apparaatspecifieke identificaties en cross-signature sleutels.
  • Een aanvaller die de controle over de server heeft, kan een vertrouwde afzender imposteren en een valse sleutel doorgeven om berichten van andere gebruikers af te luisteren. Dit probleem is veroorzaakt door een kwetsbaarheid in matrix-js-sdk (CVE-2022-39251), matrix-ios-sdk (CVE-2022-39255) en matrix-android-sdk2 (CVE-2022-39248), waardoor de client onjuist adressen aan apparaten geëncrypteerde berichten ontving die waren versleuteld met het Megolm-protocol in plaats van Olm, en de berichten toeschreef aan de Megolm-afzender in plaats van de werkelijke afzender.
  • Door gebruik te maken van de kwetsbaarheden die in het vorige punt zijn genoemd, kan de serverbeheerder ook een nep-backup sleutel aan de gebruikersaccount toevoegen om sleutels op te halen die worden gebruikt voor het versleutelen van berichten.

Onderzoekers die de kwetsbaarheid hebben ontdekt, demonstreerden ook aanvallen die leiden tot het toevoegen van een externe gebruiker aan de chat of het aansluiten van een vreemd apparaat op de gebruiker. De aanvallen zijn gebaseerd op het feit dat de serviceberichten die worden gebruikt om gebruikers aan de chat toe te voegen, niet aan de sleutels van de maker van de chat zijn gekoppeld en door de serverbeheerder kunnen worden gegenereerd. Ontwikkelaars van het Matrix-project hebben deze kwetsbaarheden geclassificeerd als niet-kritisch, omdat dergelijke manipulaties niet onopgemerkt zullen blijven — in het geval van een vervanging zal de gebruiker in de gebruikerslijst van de chat verschijnen, en bij het toevoegen van een apparaat zal er een waarschuwing verschijnen, en het apparaat zal worden gemarkeerd als onbetrouwbaar (terwijl onmiddellijk na het toevoegen van het vervalste apparaat de gedeelde sleutels die nodig zijn voor het decoderen van berichten, zullen worden verzonden).

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster