Sårbarheder i Matrix-klienter, der kan afsløre end-to-end krypteringsnøgler

Sårbarheder (CVE-2021-40823, CVE-2021-40824) er blevet identificeret i de fleste klientapplikationer til Matrix decentrale kommunikationsplatform, hvilket gør det muligt at få oplysninger om nøglerne, der bruges til at transmittere meddelelser i end-to-end krypterede (E2EE) chats. opnået. En angriber, der kompromitterer en af ​​chatbrugerne, kan dekryptere meddelelser, der tidligere er sendt til denne bruger fra sårbare klientapplikationer.

Vellykket handling kræver adgang til meddelelsesmodtagerens konto. Adgang kan opnås enten gennem et læk af kontoparametre eller gennem hacking af Matrix-serveren, hvorigennem brugeren opretter forbindelse. Sårbarhederne udgør den største fare for brugere af krypterede chatrum, som Matrix-servere styret af angribere er forbundet til. Administratorer af sådanne servere kan forsøge at efterligne serverbrugere for at opsnappe chatbeskeder sendt fra sårbare klientapplikationer.

Sårbarhederne er forårsaget af logiske fejl i implementeringen af ​​nøgleafspilningsmekanismen foreslået i matrix-js-sdk < 12.4.1 (CVE-2021-40823), matrix-android-sdk2 < 1.2.2 (CVE-2021-40824) , matrix -rust-sdk < 0.4.0, FamedlySDK < 0.5.0 og Nheko ≤ 0.8.2. Implementeringer baseret på matrix-ios-sdk, matrix-nio og libolm bibliotekerne er ikke modtagelige for sårbarheder.

Derfor opstår der sårbarheder i alle applikationer, der låner den problematiske kode og ikke direkte påvirker Matrix- og Olm/Megolm-protokollerne. Problemet påvirker især Matrix-klientelementet (tidligere Riot) til web, desktop og Android samt tredjepartsklientapplikationer og -biblioteker, herunder FluffyChat, Nheko, Cinny og SchildiChat. Problemet vises ikke i den officielle klient til iOS-platformen, såvel som i Chatty-, Hydrogen-, mautrix-, purple-matrix- og Siphon-applikationerne.

Sårbarhederne blev identificeret under en sikkerhedsrevision af Element-klienten. Rettelser er nu blevet frigivet for alle berørte klienter. Brugere rådes til at installere opdateringer med det samme og tage klienter offline, før de installerer opdateringen. Der er ingen beviser for udnyttelse af sårbarheden før udgivelsen af ​​patchen. Det er umuligt at fastslå et angreb ved hjælp af standardklient- og serverlogfilerne, men da angrebet kræver kompromittering af kontoen, kan administratorer analysere tilstedeværelsen af ​​mistænkelige logins ved hjælp af godkendelseslogfiler på deres servere, og brugere kan evaluere listen over enheder, der er forbundet til deres konto for nylige genforbindelser og statusændringer tillid.

Nøgledelingsmekanismen, i implementeringen af ​​hvilken sårbarheder blev fundet, tillader en klient, der ikke har nøglerne til at dekryptere en besked, at anmode om nøgler fra afsenderens enhed eller dens andre enheder. For eksempel er en sådan kapacitet nødvendig for at sikre dekryptering af gamle meddelelser på en ny brugerenhed, eller hvis brugeren mister eksisterende nøgler. Protokolspecifikationen foreskriver som standard ikke at svare på nøgleanmodninger og kun at sende dem automatisk til verificerede enheder fra samme bruger. Desværre blev dette krav ikke opfyldt i praktiske implementeringer, og anmodninger om at sende nøgler blev behandlet uden korrekt enhedsidentifikation.

Kilde: opennet.ru

Tilføj en kommentar