Firejaili haavatavus, mis võimaldab juurjuurdepääsu süsteemile

Firejaili rakenduse isoleerimise utiliidis on tuvastatud haavatavus (CVE-2022-31214), mis võimaldab kohalikul kasutajal saada hostsüsteemi juurõigused. Avalikus omandis on saadaval toimiv utiliit, mida on testitud OpenSUSE, Debiani, Archi, Gentoo ja Fedora praegustes väljaannetes koos installitud utiliidiga Firejail. Probleem on lahendatud Firejail 0.9.70 versioonis. Kaitse parandamise lahendusena saate seadistustes (/etc/firejail/firejail.config) määrata parameetrid „join no” ja „force-nonewprivs yes”.

Firejail kasutab Linuxis isoleerimiseks nimeruume, AppArmori ja süsteemikõnede filtreerimist (seccomp-bpf), kuid isoleeritud täitmise seadistamiseks on vaja kõrgemaid õigusi, mis saavutatakse utiliidi lipuga suid root sidumisel või sudo abil. Haavatavuse põhjuseks on suvandi "--join=" loogika viga. ", mis on mõeldud ühenduse loomiseks juba töötava isoleeritud keskkonnaga (analoogselt liivakastikeskkonna sisselogimiskäsuga) keskkonna määratlusega selles töötava protsessiidentifikaatori järgi. Eelõiguste lähtestamise etapis määrab firejail kindlaks määratud protsessi õigused ja rakendab need uuele protsessile, mis on keskkonnaga ühendatud suvandi -join abil.

Enne ühenduse loomist kontrollib see, kas määratud protsess töötab firejaili keskkonnas. See kontroll hindab faili /run/firejail/mnt/join olemasolu. Haavatavuse ärakasutamiseks saab ründaja mounti nimeruumi abil simuleerida fiktiivset isoleerimata tulejala keskkonda ja seejärel luua sellega ühenduse suvandi „--join” abil. Kui seaded ei luba uutes protsessides täiendavate õiguste omandamise keelamise režiimi (prctl NO_NEW_PRIVS), ühendab firejail kasutaja näiva keskkonnaga ja proovib rakendada init-protsessi (PID 1) kasutajanimeruumi sätteid.

Selle tulemusel jõuab "firejail -join" kaudu ühendatud protsess muutumatute õigustega kasutaja algsesse kasutaja ID-nimeruumi, kuid teise ühenduspunkti ruumi, mida ründaja täielikult kontrollib. Ründaja võib enda loodud ühenduspunkti ruumis käivitada ka setuid-root programme, mis võimaldab näiteks muuta /etc/sudoers sätteid või PAM-i parameetreid oma failihierarhias ning sudo või sudo või juurõigustega käske täita. su kommunaalteenused.

Allikas: opennet.ru

Lisa kommentaar