Dirty Pipe, una dintre cele mai grave vulnerabilități din ultimii ani în Linux

Recent a fost lansată știrea pe net despre descoperirea lui o nouă vulnerabilitate în Linux care este listat ca „Severitate ridicată” care afectează toate nucleele începând cu versiunea 5.8, precum și derivate, inclusiv Android.

Cunoscut ca Dirty Pipe permite ca datele să fie suprascrise în fișiere numai pentru citire și poate duce la escaladarea privilegiilor prin injectarea codului în procesele „rădăcină”.

Deși a fost deja corectat în nucleul principal Linux, eroarea ar putea fi transformată sub forma unui exploit de escaladare a privilegiilor pe toate dispozitivele care rulează versiunea 5.8 sau ulterioară a nucleului Linux.

De asemenea, înseamnă că o grămadă de smartphone-uri Android nou lansate, cum ar fi Samsung Galaxy S22 și Google Pixel 6, sunt, de asemenea, vulnerabile, până când fiecare dispozitiv primește patch-ul corespunzător de la OEM-ul respectiv.

Despre Dirty Pipe

Vulnerabilitatea a fost dezvăluit de cercetătorul de securitate Max Kellerman și catalogat ca (CVE-2022-0847), a fost nevoie de câteva luni pentru a găsi o exploatare de dovadă a conceptului.

Vulnerabilitatea permite unui utilizator neprivilegiat să injecteze și să suprascrie date în fișiere numai în citire, inclusiv procese SUID care rulează ca root. Porecla colocvială pare a fi o joacă cu infamul bug Vaca murdară și un mecanism Linux numit pipelining pentru transmiterea mesajelor între procese, deoarece acesta din urmă este utilizat în timpul rutinei de exploatare.

Totul a început acum un an cu un bilet de asistență legat de fișierele corupte. Un client s-a plâns că jurnalele de acces descărcate nu au putut fi despachetate. Și într-adevăr, a existat un fișier jurnal corupt pe unul dintre serverele de jurnal; ar putea fi necomprimat, dar gzip a raportat o eroare CRC. Nu mi-am putut explica de ce a fost corupt, dar am presupus că procesul de împărțire nocturnă s-a prăbușit și a produs un fișier corupt. Am corectat manual CRC-ul fișierului, am închis biletul și am uitat curând de problemă.

După luni de analiză, cercetătorul a descoperit în cele din urmă că fișierele client corupte erau rezultatul unei erori în nucleul Linux. El a găsit o modalitate de a exploata Dirty Pipe pentru a permite oricui cu un cont, inclusiv conturi mai puțin privilegiate „nimeni”, să adauge o cheie SSH la contul de utilizator root.

Pentru a declanșa vulnerabilitatea, Kellerman și-a împărtășit dovada conceptului, atacatorul trebuie să aibă permisiuni de citire. De asemenea, defilarea nu trebuie să fie la granița unei pagini, scrierea nu poate depăși limita unei pagini și fișierul nu poate fi redimensionat.

Pentru a exploata această vulnerabilitate, trebuie: să creați o conductă, să umpleți conducta cu date arbitrare (prin setarea steagului PIPE_BUF_FLAG_CAN_MERGE pe toate intrările din inel), să goliți conducta (lăsând steagul setat pe toate instanțele structurii pipe_buffer din structură a inelului pipe_inode_info), îmbinați datele din fișierul țintă (deschis cu O_RDONLY) în conductă chiar înainte de offset-ul țintă și scrieți date arbitrare în conductă.

Dirty Pipe afectează, de asemenea, orice versiune de Android bazată pe una dintre versiunile vulnerabile ale nucleului Linux. Deoarece Android este atât de fragmentat, modelele de dispozitive afectate nu pot fi urmărite uniform.

Potrivit lui Kellerman, Google și-a îmbinat remedierea erorilor cu nucleul Android luna trecută, imediat după ce a fost remediat odată cu lansarea versiunilor de kernel Linux 5.16.11, 5.15.25 și 5.10.102.

Acestea fiind spuse, probabil că va trebui să așteptăm puțin înainte ca OEM-urile să înceapă să lanseze actualizări Android care conțin remedierea. Pixel 6 de la Google, de exemplu, este încă vulnerabil, dar utilizatorii avansați pot atenua defectul instalând un nucleu de piață de schimb personalizat, corectat, ca opțiune alternativă.

Dezvoltatorii de kernel Linux au lansat corecții (5.16.11, 5.15.25, 5.10.102) pe 23 februarie, în timp ce Google a corectat nucleul Android pe 24 februarie. Kellermann și alți experți au comparat vulnerabilitatea cu CVE-2016-5195 „Vaca murdară” și au spus că este și mai ușor de exploatat.

În cele din urmă, dacă sunteți interesat să aflați mai multe despre aceasta, puteți consulta detaliile În următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.