La porta del darrere de XZ Utils fou un incident reportat el 29 de març de 2024 pel desenvolupador de programari Andres Freund quan va anunciar que havia trobat una porta del darrere introduïda de manera malintencionada a la utilitat Linux xz dins de la biblioteca liblzma a les versions 5.6.0 i 5.6.1 el febrer de 2024. xz es desplega habitualment com a part de la majoria de distribucions de Linux, encara que la porta del darrere només s'orientava a sistemes basats en Debian i RPM que s'executen amb l'arquitectura x86-64. La versió amb porta del darrere no es va desplegar àmpliament en el moment del descobriment. Aquesta porta del darrere oferia a un atacant que posseeixi una execució de codi remot de clau privada Ed448 específica als sistemes Linux afectats. A la incidència se li assignà una puntuació CVSS de 10,0, la puntuació més alta possible.
Rerefons Andres Freund, empleat de Microsoft i desenvolupador de PostgreSQL, va informar de la porta del darrere després d'investigar una regressió del rendiment a Debian Sid. Freund es va adonar que les connexions SSH generaven una quantitat inesperadament alta d'ús de la CPU, així com provocaven errors a Valgrind, una eina de depuració de memòria. Freund va informar de la seva troballa a la llista de correu de seguretat de codi obert d'Openwall Project, que la va portar a l'atenció de diversos distribuïdors de programari. Es descobriren proves que l'atacant va fer esforços per ofuscar el codi ja que la porta del darrere constava de múltiples etapes que actuaven conjuntament.
Un cop incorporada la versió compromesa al sistema operatiu, alteraria el comportament del procés del servidor SSH d'OpenSSH abusant de la biblioteca systemd, permetent a l'atacant obtenir el mateix nivell d'accés que qualsevol administrador autoritzat. Segons l'anàlisi de Red Hat, la porta del darrere podia "permetre a un actor maliciós trencar l'autenticació sshd i obtenir accés no autoritzat a tot el sistema de forma remota".
Una investigació posterior va trobar que la porta del darrere va ser la culminació d'aproximadament tres anys d'esforç d'un usuari que es deia Jia Tan i el sobrenom JiaT75, que va obtenir accés a una posició de confiança dins del projecte xz, després d'un període de pressió sobre el responsable de manteniment per cedir el control del projecte a través d'altres nous participants. La porta del darrere destacava pel seu nivell de sofisticació i pel fet que l'autor practicava un alt nivell de seguretat operativa durant un llarg període mentre treballava per assolir una posició de confiança. L'investigador de seguretat Dave Aitel ha suggerit que s'ajusta al patró atribuïble a APT29, un avançat actor d'amenaces persistents que es creu que treballa en nom del Servei d'Intel·ligència Exterior Rus (SVR RF).
Mecanisme Se sap que el codi maliciós es trobava a les versions 5.6.0 i 5.6.1 del paquet de programari XZ Utils. L'explotació roman inactiva tret que s'utilitzi un pedaç específic de tercers del servidor SSH. En les circumstàncies adequades, aquesta interferència podria permetre a un actor maliciós trencar l'autenticació sshd i obtenir accés no autoritzat a tot el sistema de forma remota. El mecanisme maliciós consisteix en dos fitxers de prova comprimits que contenen el codi binari maliciós. Aquests fitxers estan disponibles al repositori git, però romanen inactius tret que s'extreguin i s'injectin al programa. El codi utilitza el mecanisme glibc IFUNC per substituir una funció existent a OpenSSH anomenada per una versió maliciosa. OpenSSH normalment no carrega liblzma, però un pedaç comú de tercers utilitzat per diverses distribucions de Linux fa que carregui libsystemd, que al seu torn carrega lzma. Es va incloure una versió modificada de al fitxer tar de llançament penjat a GitHub, que extreu un script que realitza la injecció real a . Aquest fitxer m4 modificat no estava present al repositori git; només estava disponible a partir dels fitxers tar publicats pel mantenidor separats de git. Sembla que l'script només realitza la injecció quan el sistema es basa en un sistema Linux x86-64 que utilitza glibc i GCC i els paquets de dpkg o rpm.
Resposta Remediació L'agència federal nord-americana responsable de la ciberseguretat i la infraestructura, l'Agència de seguretat cibernètica i d'infraestructura, va emetre un avís de seguretat, recomanant que els dispositius afectats tornessin a una versió anterior no compromesa. Els venedors de programari Linux, inclosos Red Hat, SUSE i Debian, han reflectit l'avís CISA i han revertit les actualitzacions dels paquets afectats a versions anteriors. GitHub va desactivar els miralls per al repositori de xz.
Resposta més àmplia Alex Stamos de SentinelOne va opinar que "aquesta podria haver estat la porta del darrere més estesa i eficaç que s'hagi plantat mai en qualsevol producte de programari", i va assenyalar que si la porta del darrere no s'hagués detectat, hauria "donat als seus creadors una clau mestra per a qualsevol dels centenars de milions d'ordinadors a tot el món que executen SSH". A més, l'incident també va provocar una discussió sobre la viabilitat de tenir peces crítiques de la ciberinfraestructura a les espatlles de voluntaris no remunerats.
Referències
Enllaços externs
Andres Freund's report to the Openwall oss-security mailing list
Categoria:Programari maliciós Categoria:GNU/Linux