Pack2TheRoot (CVE-2026-41651): Napaka PackageKit, ki ogroža Linux

Ključne točke:
  • Napaka temelji na stanju tekme (TOCTOU) znotraj upravljanja transakcij D-Bus, ki zaobide avtorizacijo polkit.
  • Neposredno vpliva na priljubljene distribucije, kot so Ubuntu, Debian, Fedora in Rocky Linux, v njihovih privzetih namestitvah.
  • Napadalec lahko prepiše zastavice varne transakcije tako, da pošlje drugo zahtevo, preden razporejevalnik sproži operacijo.
  • Ranljivost je odpravljena v PackageKit 1.3.5, začasno pa jo je mogoče ublažiti z ustvarjanjem pravil po meri v polkitu.

Pack2TheRoot

Pred nekaj dnevi Objavljene so bile informacije o novi kritični ranljivosti ki vpliva na okolja Linuxa, imenovana "Pack2TheRoot". Katalogizirano pod CVE-2026-41651.Ta napaka vpliva na PackageKit (orodje, ki deluje kot abstrakcijska plast D-Bus za poenotenje upravljanja paketov v več distribucijah).

Omenjeno je, da je sodba Omogoča vsakemu lokalnemu uporabniku brez privilegijev, da poljubno namešča ali odstranjuje pakete. Z izkoriščanjem te ranljivosti lahko napadalec pridobi poln root dostop do ogroženega sistema. Vpliv je precejšen, saj je težava prisotna že od različice 1.0.2, izdane pred več kot dvanajstimi leti (leta 2014), in vpliva na privzete konfiguracije priljubljenih distribucij, kot so Ubuntu, Debian, Rocky Linux in Fedora.

Pack2TheRoot: Ranljivost PackageKit omogoča skrbniški dostop v Linuxu

El Odkritje Pack2TheRoot je bilo rezultat preiskave pod vodstvom rdeče ekipe Deutsche Telekoma, ki Uporabili so model umetne inteligence Claudea Opusa. da bi usmerjali svojo analizo vektorjev lokalnega stopnjevanja privilegijev.

LoRaziskovalci so sprva opazili, da je ukaz pkcon install mogoče izvesti brez potrebe po geslu.v nekaterih konfiguracijah Fedore, kar je vzbudilo sum glede osnovne avtorizacije. Po potrditvi in ​​odgovornem poročanju o ranljivosti vzdrževalcem PackageKita, Razvit je bil delujoč izkoriščanje, čeprav je bila njegova podrobna objava strateško odložena, da bi uporabniki in skrbniki lahko uporabili potrebne posodobitve.

Mehanika napada

Koren Ranljivost se skriva v kariernem stanju (Tip TOCTOU: od časa preverjanja do časa uporabe) v upravljanje transakcij v ozadju (demon) PackageKitaPackageKit, ki deluje kot uporabnik root, prenese avtorizacijo na sistem polkit. Ko odjemalec zahteva namestitev paketa, na primer z metodo InstallFiles, posreduje niz zastavic, ki narekujejo vedenje transakcije.

Določene zastavice, kot sta SIMULATE ali ONLY_DOWNLOAD, naročijo PackageKitu, naj preskoči avtorizacijo Polkit. saj predstavljajo varne operacije, ki teoretično ne spreminjajo stanja sistema. Do napake pride, ker upravljalnik transakcij prepiše Ti indikatorji se brezpogojno shranijo v predpomnilnik z vsakim novim klicem, ne da bi se preverilo, ali je bila transakcija že odobrena ali je v postopku izvajanja.

pack2theroot-poc2

Un Napadalec lahko sproži transakcijo z uporabo "varnih" indikatorjev (s čimer se zaobide polkitovo avtorizacijo) in nekaj milisekund kasneje pošlje drugo zahtevo D-Bus za isto transakcijo, vendar tokrat z zlonamernimi zastavicami, ki zahtevajo dejansko namestitev. Zaradi arhitekture prioritet zanke dogodkov GLib (kjer se sporočila D-Bus obdelajo pred nedejavnimi povratnimi klici) druga zahteva prepiše parametre tik preden razporejevalnik začne operacijo.

Posledično se transakcija, ki je bila predhodno odobrena kot "varna", izvede z nadomeščenimi parametri., namestitev paketa s skrbniškimi pravicami.

Rešitve in blažitev

Treba je opozoriti, da je Ranljivost je bila odpravljena v različici PackageKit 1.3.5.Zato razvijalci pozivajo sistemske skrbnike, naj preverijo, ali so njihovi sistemi ranljivi, tako da preverijo stanje storitev z ukazi, kot je systemctl status packagekit, ali pa spremljajo aktivnost z ukazom pkmon.

The Večje distribucije, vključno z Debianom, Ubuntujem in Fedoro, so že začele distribuirati pakete. Posodobitve so izdane prek njihovih uradnih kanalov. Za sisteme, kjer popravek ni takoj na voljo, so raziskovalci predlagali rešitev: uvedbo pravila polkit po meri.

To Pravilo takoj in tiho zavrne namestitvena dejanja PackageKita. Za vse uporabnike, ki niso root, to prepreči odpiranje okna s pogoji tekmovanja. Pomembno je omeniti, da čeprav je izkoriščanje hitro in tiho, pusti jasno sled v sistemskih dnevnikih: po uspešnem izkoriščanju se demon PackageKit sesuje zaradi napake trditve (tržba ni uspela: (!transaction->priv->emitted_finished)). Čeprav systemd znova zažene storitev in prepreči napad zavrnitve storitve, je prisotnost tega sporočila v journalctl močan pokazatelj, da je bil sistem ogrožen.

Nenazadnje, če vas zanima več o tem, si lahko ogledate podrobnosti na naslednji povezavi.


Dodaj kot prednostni vir