Sponzorizat de newsflash.ro
Dacă vă interesează domeniul tech dincolo de prețul unui iPhone sau al unui Samsung, atunci cu siguranță ar trebui să știți că în acest weekend a fost descoperit un atac (denumit XZ) care dacă ar fi reușit, ar fi lăsat vulnerabile toate distribuțiile Linux.
Povestea începe așa: există un pachet de utilitare XZ (open source) care sunt folosite pentru a comprima cât mai bine fișierele – cred că ați auzit de LZMA2. În urmă cu câțiva ani un individ (JiaT75 – Jia Tan) a început să contribuie și el la dezvoltarea XZ, în primă fază cu niște schimbări inofensive, dar nu direct în XZ.
Pe 29 aprilie, un tip pe nume Andres Freund (principal software engineer la Microsoft) a trimis comunității oss-security un email legat de descoperirea unui backdoor în pachetul xz/lblzma 5.6.0 și 5.6.1.
Și de aici a pornit distracția și detecția vulnerabilității CVE-2024-3094 în care folosirea compresiei/decompresiei cu librării liblzma ducea la instalarea unui backdoor, extras din … fișierele de test ale pachetului XZ și modificate pentru a activa funcții specifice. Finalitatea era că se putea instala un backdoor în SSH, în special pentru distribuțiile care foloseau systemd.
La prima vedere nu pare nimic aiurea, nu? Și ce dacă ar zice unii…
Problema e că un backdoor în SSH deschide posibilitatea atacatorilor să se conecteze la aproape orice server Linux care avea instalată o versiune SSH adusă după instalarea locală a pachetelor xz/lblzma 5.6.0 și 5.6.1 și mai rău, pe termen lung problema putea ajunge direct în kernel-ul Linux.
Sunt două lucruri extrem de interesante în discuția legată de atacul XZ: cum a fost descoperit și cum a fost implementat. Amândouă trebuie spuse.
Timeline-ul descoperirii
Încep cu timeline-ul descoperirii (detaliile complete sunt aici), pe scurt. Andres Freund folosea o platformă proprie de testare, al cărei scop era să ˝curețe˝ un sistem, pentru a putea măsura mai bine performanța unor procese. Datorită acestui lucru și a faptului că pentru testarea era folosită o versiune de Linux beta, Andres a descoperit că procesul sshd folosea intermitent foarte mult CPU, pentru ca apoi procesul să crape. De aici a putut observa că problema venea de la libzlzma, fără nicio explicație clară. Săpând mai mult a descoperit problema …
Cum a ajuns să fie posibil atacul XZ?
Adică faptul că în pachetul XZ Utils există niște funcții capabile să extragă un cod … greșit la prima vedere, din fișierele de testare, să îl modifice să nu mai fie greșit și în felul acesta să obțină cod funcțional pentru a putea manipula fișierele compresate/decompresate cu libzlzma, inserând opțiuni de backdoor și în…
Sponzorizat de newsflash.ro
Citeste continuarea pe www.mobzine.ro