Retrospectiva promovării backdoor-ului în pachetul xz

Se presupune că backdoor-ul din pachetul xz a fost introdus de dezvoltatorul Jia Tan, care în 2022 a obținut statutul de menținător și a lansat versiuni începând cu 5.4.2. Pe lângă proiectul xz, autorul presupus al backdoor-ului a participat de asemenea la dezvoltarea pachetelor xz-java și xz-embedded și a fost inclus printre menținătorii proiectului XZ Embedded, utilizat în nucleul Linux.

În organizarea promovării backdoor-ului au fost observați încă doi participanți — Jigar Kumar și Hans Jansen, care, se pare, sunt personaje virtuale. Jigar Kumar a contribuit în aprilie 2022 la acceptarea unor patch-uri timpurii din xz de către Jia Tan, implementând suport pentru filtre de tip string și a exercitat presiune morală asupra lui Lasse Collin, atunci menținător, criticându-l că nu este capabil să își îndeplinească sarcinile și că nu acceptă patch-uri utile. În iunie, Lasse Collin a fost de acord că proiectul are nevoie de un nou menținător, s-a plâns de epuizare și probleme cu sănătatea mintală, și a transferat dreptul de menținător lui Jia Tan. După asta, utilizatorul Jigar Kumar nu a mai apărut în mailing list.

Obținând drepturile de menținător, Jia Tan a început să adauge activ modificări în proiect și, conform statisticilor, în doi ani a ocupat locul doi printre dezvoltatori după numărul de modificări. În martie 2023, responsabilul de testarea pachetului xz în serviciul oss-fuzz a fost înlocuit de la Lasse Collin la Jia Tan, iar în iunie au fost acceptate modificări în xz care au adăugat în liblzma suport pentru mecanismul IFUNC (constructorul crc64_fast a fost înlocuit cu ifunc), care ulterior a fost utilizat pentru interceptarea funcțiilor în backdoor. Modificarea a fost propusă de Hans Jansen, iar Jia Tan a acceptat-o în xz. Contul lui Hans Jansen a fost creat chiar înainte de trimiterea pull request-ului.

În iulie 2023, Jia Tan a trimis dezvoltatorilor oss-fuzz o cerere de dezactivare a verificării ifunc din cauza incompatibilității sale cu modul „-fsanitize=address”. La începutul lunii februarie 2024, linkul către site-ul proiectului în oss-fuzz și pe pagina principală a tukaani.org a fost modificat din „tukaani.org/xz/” în „xz.tukaani.org”, unde subdomeniul „xz.tukaani.org” era găzduit de serviciul GitHub Pages și controlat personal de Jia Tan. Pe 23 februarie, în depozitul xz au fost publicate arhive pentru testarea funcționării decodorului, printre care se aflau fișierele bad-3-corrupt_lzma2.xz și good-large_compressed.lzma, care conțineau un backdoor ascuns. Machetele M4 pentru activarea backdoor-ului au fost incluse doar în arhiva tar cu versiunea 5.6.0 și au fost excluse din depozitul Git, dar au fost menționate în fișierul .gitignore.

Pe 17 martie, Hans Jansen, care a dezvoltat anterior patch-uri cu suport pentru IFUNC, a fost înregistrat ca participant la proiectul Debian, iar pe 25 martie a trimis o cerere de actualizare a versiunii pachetului xz-utils în depozitul Debian. Cererile de actualizare a versiunii au fost, de asemenea, înaintate dezvoltatorilor Fedora și Ubuntu (la Ubuntu, depozitul era în stadiul de înghețare și modificarea a fost respinsă).

La solicitările de actualizare a versiunii xz s-au alăturat și unii utilizatori, care au declarat că în noua versiune au fost corectate erorile care interferează cu funcționarea, evidențiate în timpul depanării în valgrind (problemele au apărut din cauza unei determinări incorecte a aranjamentului stivei în handlerul backdoor-ului și aceste probleme au fost remediate de dezvoltatorii backdoor-ului în versiunea xz 5.6.1). De asemenea, Andres Freund, un angajat Microsoft implicat în dezvoltarea PostgreSQL, s-a arătat interesat de eroare, descoperind existența backdoor-ului și informând comunitatea despre aceasta.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster