Odkrili so ranljivost v cgroups v1, ki omogoča preboj iz izoliranega vsebnika

Pred nekaj dnevi novica je bila objavljena podrobnosti so bile razkrite ranljivost to je bilo najdeno pri izvajanju mehanizma omejitev virov cgroup v1 v jedru Linuxa, ki je že katalogizirano pod CVE-2022-0492.

Ta ranljivost je odkrila se se lahko uporablja za izstop iz izoliranih posod in podrobno je navedeno, da je težava prisotna od jedra Linuxa 2.6.24.

V blog objavi je omenjeno ranljivost je posledica logične napake v upravljalniku datoteke release_agent, zato ustrezna preverjanja niso bila izvedena, ko je bil gonilnik zagnan s polnimi dovoljenji.

Datoteka release_agent se uporablja za definiranje programa, ki ga jedro izvaja ko se proces konča v skupini c. Ta program se izvaja kot root z vsemi "zmožnostmi" v korenskem imenskem prostoru. Dostop do konfiguracije agenta release_agent naj bi imel samo skrbnik, v resnici pa so bila preverjanja omejena na odobritev dostopa korenskemu uporabniku, kar ni preprečilo spreminjanja konfiguracije iz vsebnika ali neskrbniškega korenskega uporabnika (CAP_SYS_ADMIN ) .

Prej ta lastnost ne bi bila zaznana kot ranljivost, vendar se je situacija spremenila s pojavom imenskih prostorov z identifikatorji uporabnikov (uporabniških imenskih prostorov), ki vam omogočajo ustvarjanje ločenih korenskih uporabnikov v vsebnikih, ki se ne prekrivajo s korenskim uporabnikom glavnega okolja.

Posledično, za napad je dovolj v vsebniku, ki ima svojega root uporabnika v ločenem prostoru z ID-jem uporabnika, da priključite vaš obdelovalec release_agent, ki se bo po končanem postopku izvajal z vsemi privilegiji nadrejenega okolja.

Privzeto je cgroupfs nameščen v vsebnik, ki je samo za branje, vendar ni težav pri ponovnem namestitvi teh psevdofov v načinu pisanja s pravicami CAP_SYS_ADMIN ali z ustvarjanjem ugnezdenega vsebnika z ločenim uporabniškim imenskim prostorom s pomočjo sistemskega klica za ustavitev skupne rabe, v katerem pravice CAP_SYS_ADMIN so na voljo ustvarjenemu vsebniku.

Napad lahko naredite tako, da imate korenske pravice v izoliranem vsebniku ali z zagonom vsebnika brez zastave no_new_privs, ki prepoveduje pridobivanje dodatnih privilegijev.

Sistem mora imeti omogočeno podporo za imenske prostore uporabnik (privzeto omogočen v Ubuntu in Fedora, ni pa omogočen v Debianu in RHEL) in ima dostop do korenske cgroup v1 (na primer Docker zažene vsebnike v korenski cgroup RDMA). Napad je možen tudi s privilegiji CAP_SYS_ADMIN, v tem primeru ni potrebna podpora za uporabniške imenske prostore in dostop do korenske hierarhije cgroup v1.

Poleg preboja iz izoliranega vsebnika ranljivost omogoča tudi procese, ki jih zažene korenski uporabnik brez "zmožnosti" ali katerega koli uporabnika s pravicami CAP_DAC_OVERRIDE (napad zahteva dostop do datoteke /sys/fs/cgroup/*/release_agent v lasti root) za dostop do vseh "zmožnosti" sistema.

Poleg vsebnikov lahko ranljivost omogoči tudi korenskim gostiteljskim procesom brez zmožnosti ali nekorenskim gostiteljskim procesom z zmožnostjo CAP_DAC_OVERRIDE, da povečajo privilegije na polne zmogljivosti. To lahko napadalcem omogoči, da zaobidejo ukrep utrjevanja, ki ga uporabljajo nekatere storitve, ki odstrani zmožnosti in poskuša omejiti vpliv, če pride do kompromisa.

Enota 42 uporabnikom priporoča nadgradnjo na fiksno različico jedra. Za te vsebnike, ki se izvajajo, omogočite Seccomp in se prepričajte, da sta AppArmor ali SELinux omogočena. Uporabniki Prisma Cloud si lahko ogledajo razdelek »Zaščite v oblaku Prisma«, da si ogledajo ublažitve, ki jih ponuja Prisma Cloud.

Upoštevajte, da ranljivosti ni mogoče izkoristiti pri uporabi zaščitnih mehanizmov Seccomp, AppArmor ali SELinux za dodatno izolacijo vsebnika, saj Seccomp blokira sistemski klic unshare(), AppArmor in SELinux pa ne dovoljujeta namestitve cgroupfov v načinu pisanja.

Na koncu velja omeniti, da je bil popravljen v različicah jedra 5.16.12, 5.15.26, 5.10.97, 5.4.177, 4.19.229, 4.14.266 in 4.9.301. Objavo posodobitev paketov v distribucijah lahko spremljate na teh straneh: DebianSUSEUbuntuRHELFedoraGentooArch Linux.

Končno če vas zanima več o tem, podrobnosti lahko preverite v naslednja povezava.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.