Pack2TheRoot (CVE-2026-41651): PackageKit nedostatak koji kompromitira Linux

Ključne točke:
  • Kvar se temelji na uvjetu utrke (TOCTOU) unutar upravljanja transakcijama D-Bus-a, zaobilazeći polkit autorizaciju.
  • Izravno utječe na popularne distribucije poput Ubuntua, Debiana, Fedore i Rocky Linuxa u njihovim zadanim instalacijama.
  • Napadač može prebrisati zastavice sigurne transakcije slanjem drugog zahtjeva prije nego što raspoređivač pokrene operaciju.
  • Ranjivost je ispravljena u PackageKitu 1.3.5, a postoji i privremeno ublažavanje stvaranjem prilagođenih pravila u polkitu.

Pack2TheRoot

Prije nekoliko dana Objavljene su informacije o novoj kritičnoj ranjivosti koji utječe na Linux okruženja pod nazivom "Pack2TheRoot". Katalogizirano pod CVE-2026-41651Ova greška utječe na PackageKit (alat koji djeluje kao D-Bus sloj apstrakcije za objedinjavanje upravljanja paketima na više distribucija).

Spominje se da presuda Omogućuje bilo kojem lokalnom korisniku bez privilegija proizvoljno instaliranje ili uklanjanje paketa. Iskorištavanjem ove ranjivosti, napadač može dobiti potpuni root pristup kompromitiranom sustavu. Utjecaj je znatan, s obzirom na to da je problem prisutan od verzije 1.0.2, objavljene prije više od dvanaest godina (2014.), i utječe na zadane konfiguracije popularnih distribucija kao što su Ubuntu, Debian, Rocky Linux i Fedora.

Pack2TheRoot: Ranjivost PackageKita omogućuje administratorski pristup na Linuxu

El Otkriće Pack2TheRoot-a rezultat je istrage predvođen Crvenim timom Deutsche Telekoma, koji je Koristili su model umjetne inteligencije Claudea Opusa kako bi vodili svoju analizu vektora eskalacije lokalnih privilegija.

LoIstraživači su isprva primijetili da se naredba pkcon install može izvršiti bez potrebe za lozinkom.u određenim Fedora konfiguracijama, što je izazvalo sumnju u temeljnu autorizaciju. Nakon što su potvrdili i odgovorno prijavili ranjivost održavateljima PackageKita, Razvijen je funkcionalni exploit, iako je njegova detaljna objava strateški odgođena kako bi se korisnicima i administratorima omogućila primjena potrebnih ažuriranja.

Mehanika napada

Korijen Ranjivost leži u karijernom stanju (Vrsta TOCTOU: Vrijeme provjere u Vrijeme korištenja) unutar upravljanje transakcijama u pozadini procesa (demon) PackageKitaPackageKit, koji djeluje kao root korisnik, delegira autorizaciju polkit sustavu. Kada klijent zatraži instalaciju paketa, na primjer pomoću metode InstallFiles, on prenosi skup zastavica koje diktiraju ponašanje transakcije.

Specifične zastavice, kao što su SIMULATE ili ONLY_DOWNLOAD, upućuju PackageKit da preskoči polkit autorizaciju. budući da predstavljaju sigurne operacije koje, u teoriji, ne mijenjaju stanje sustava. Do kvara dolazi jer program za obradu transakcija prepisuje Ovi indikatori se bezuvjetno keširaju sa svakim novim pozivom, bez provjere je li transakcija već autorizirana ili je u procesu izvršenja.

pack2theroot-poc2

Un Napadač može pokrenuti transakciju koristeći "sigurne" indikatore (čime se zaobilazi Polkitovo ovlaštenje) i, milisekunde kasnije, poslati drugi D-Bus zahtjev za istu transakciju, ali ovaj put sa zlonamjernim zastavicama koje nalažu stvarnu instalaciju. Zbog GLib-ove arhitekture prioriteta petlje događaja (gdje se D-Bus poruke obrađuju prije neaktivnih povratnih poziva), drugi zahtjev prepisuje parametre neposredno prije nego što planer započne operaciju.

Kao rezultat toga, transakcija prethodno autorizirana kao "sigurna" izvršava se sa zamjenskim parametrima., instaliranje paketa s administratorskim privilegijama.

Rješenja i ublažavanje

Treba napomenuti da je Ranjivost je zakrpana u verziji PackageKita 1.3.5.Stoga, programeri potiču administratore sustava da provjere jesu li njihovi sustavi ranjivi provjerom statusa servisa pomoću naredbi poput systemctl status packagekit ili praćenjem aktivnosti pomoću pkmon-a.

Las Glavne distribucije, uključujući Debian, Ubuntu i Fedoru, već su počele s distribucijom paketa. Ažuriranja se objavljuju putem njihovih službenih kanala. Za sustave gdje zakrpa nije odmah dostupna, istraživači su predložili zaobilazno rješenje: implementaciju prilagođenog polkit pravila.

ovo Pravilo odmah i tiho odbija radnje instalacije PackageKita. Za bilo kojeg korisnika osim root-a, ovo sprječava otvaranje prozora za uvjet utrke. Važno je napomenuti da, iako je iskorištavanje brzo i tiho, ostavlja jasan trag u sistemskim zapisnicima: nakon uspješnog iskorištavanja, PackageKit daemon se ruši zbog neuspjeha asercije (assertion failed: (!transaction->priv->emitted_finished)). Iako systemd ponovno pokreće uslugu, sprječavajući napad uskraćivanjem usluge, prisutnost ove poruke u journalctl-u snažan je pokazatelj da je sustav kompromitiran.

Konačno, ako ste zainteresirani saznati više o ovome, možete se obratiti pojedinosti na sljedećem linku.


Dodaj kao preferirani izvor