Dirty Pipe: egy biztonsági rés, amely lehetővé teszi az adatok felülírását

Nemrégiben a hír ezt megszakította sérülékenységet azonosítottak a Linux kernelben és amely már szerepel a CVE-2022-0847 katalógusban, és amelyet ők neveztek el "Piszkos cső".

Ez a "Dirty Pipe" névre keresztelt sebezhetőséglehetővé teszi a gyorsítótár tartalmának felülírását oldal bármely fájl esetén, beleértve azokat is, amelyek írásvédettre vannak beállítva, az O_RDONLY jelzővel vannak megnyitva, vagy amelyek csak olvasható fájlrendszeren találhatók.

A gyakorlati oldalon a sebezhetőség felhasználható kód beszúrására tetszőleges folyamatokba vagy megsérti az adatokat a megnyitott fájlokban. Módosíthatja például az sshd folyamat Author_keys fájljának tartalmát.

A Dirty Pipe-ról

Ez hasonló a Dirty COW kritikus sérülékenységéhez 2016-ban azonosították, és a Dirty Pipe veszélyt tekintve egy szinten van a Dirty COW-val, de hogy ez sokkal könnyebben kezelhető.

A Dirty Pipe-ot a levéltárak időszakos károsodásával kapcsolatos panaszok elemzése során azonosították hálózaton keresztül letöltött rendszerre, amely egy naplózószerverről tölti le a tömörített fájlokat (37 sérülés 3 hónap alatt betöltött rendszeren), amelyek a splice() művelettel és névtelen csövekkel készültek.

Sebezhetőség a Linux kernel 5.8-as verziója óta jelenik meg, 2020 augusztusában jelent meg.

Más szemszögből nézve azt mondhatjuk, hogy a Debian 11-ben jelen van, de nem érinti az Ubuntu 20.04 LTS alap kernelt, míg az RHEL 8.x és az openSUSE/SUSE 15 rendszermagok esetében, amelyek eredetileg régi ágakra épülnek, de lehetséges hogy a problémát okozó változás átkerült rájuk (pontos adat még nincs).

A sérülékenység oka a "buf->flags" érték inicializálásának hiánya a copy_page_to_iter_pipe() és a push_pipe() függvények kódjában, annak ellenére, hogy a memória nem törlődik a struktúra lefoglalásakor, és bizonyos manipulációk a névtelennel. pipes, a "buf->flags" más műveletből származó értéket is tartalmazhat. Ezzel a szolgáltatással egy privilegizált helyi felhasználó elérheti a PIPE_BUF_FLAG_CAN_MERGE érték megjelenését a zászlóban, lehetővé téve számukra, hogy felülírják az oldal gyorsítótárában lévő adatokat, egyszerűen új adatok írásával egy speciálisan előkészített névtelen csőbe.

támadásra meg lehet tenni, szükség van egy célfájlra, amelynek olvashatónak kell lennie és mivel a hozzáférési jogosultságokat nem ellenőrzik a csőbe íráskor, a csere végrehajtható az oldal gyorsítótárában, még a csak olvasható partíciókon található fájlok esetében is (például c CD-ROM fájlok esetén).

Ezzel az oldal gyorsítótárában lévő információk cseréje után a folyamat az adatok fájlból történő kiolvasásakor nem a valós adatokat kapja meg, hanem a kicserélteket.

Azt emlegetik a Dirty Pipe művelet egy névtelen cső létrehozásában és tetszőleges adatokkal való kitöltésében merül ki hogy elérje a PIPE_BUF_FLAG_CAN_MERGE jelző beállítását az összes hozzá tartozó gyűrűszerkezeten.

Az adatok ezután kiolvasásra kerülnek a csőből, de a jelző továbbra is beállítva marad a pipe_inode_info gyűrűstruktúrákban lévő pipe_buffer struktúra összes példányán. Ezután a splice() meghívása történik, hogy az adatokat a célfájlból egy névtelen csőbe olvassa be, a kívánt eltolástól kezdve. Amikor adatokat ír ebbe a névtelen csőbe, a PIPE_BUF_FLAG_CAN_MERGE jelző felülírja az adatokat az oldal gyorsítótárában, ahelyett, hogy a pipe_buffer szerkezet új példányát hozná létre.

Végül Ha érdekel, hogy többet tudjon meg róla, a részleteket az eredeti jegyzetben ellenőrizheti A következő linken.

Továbbá, ha érdekel nyomon tudja követni a frissítések közzétételét vagy tudjon róla csomagok közül a fő disztribúciókban, ezt az alábbi oldalakon teheti meg: DebianSUSEUbuntuRHELFedoraGentooArchLinux.

Megemlítik, hogy a javasolt biztonsági rés-javítás elérhető a Linux Kernel 5.16.11, 5.15.25 és 5.10.102 verzióiban, és a javítás az Android platformon használt kernelben is megtalálható.


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: AB Internet Networks 2008 SL
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.