Kwesbaarheid in firejail wat worteltoegang tot die stelsel toelaat

'n Kwesbaarheid (CVE-2022-31214) is geïdentifiseer in die Firejail-toepassingsisolasiehulpmiddel wat 'n plaaslike gebruiker toelaat om wortelvoorregte op die gasheerstelsel te verkry. Daar is 'n werkende uitbuiting beskikbaar in die publieke domein, getoets in huidige vrystellings van openSUSE, Debian, Arch, Gentoo en Fedora met die firejail-nutsding geïnstalleer. Die probleem is opgelos in firejail 0.9.70-vrystelling. As 'n oplossing vir beskerming, kan u die parameters "join no" en "force-nonewprivs yes" in die instellings (/etc/firejail/firejail.config) stel.

Firejail gebruik naamruimtes, AppArmor en stelseloproepfiltrering (seccomp-bpf) in Linux vir isolasie, maar vereis verhoogde voorregte om geïsoleerde uitvoering op te stel, wat dit verkry deur te bind aan die nutsvlag suid root of met sudo te hardloop. Die kwesbaarheid word veroorsaak deur 'n fout in die logika van die “--join=” opsie. ", bedoel om te koppel aan 'n reeds lopende geïsoleerde omgewing (analoog aan die aanmeldopdrag vir 'n sandbox-omgewing) met die definisie van die omgewing deur die proses-identifiseerder wat daarin loop. Tydens die voorafbevoorregte-terugstellingfase bepaal firejail die voorregte van die gespesifiseerde proses en pas dit toe op die nuwe proses wat aan die omgewing gekoppel is deur die "-join"-opsie te gebruik.

Voordat dit verbind word, kyk dit of die gespesifiseerde proses in die firejail-omgewing loop. Hierdie kontrole evalueer die teenwoordigheid van die lêer /run/firejail/mnt/join. Om die kwesbaarheid uit te buit, kan 'n aanvaller 'n fiktiewe, nie-geïsoleerde vuurgevangenis-omgewing simuleer deur die bergnaamruimte te gebruik, en dan daarmee koppel deur die "--join"-opsie te gebruik. As die instellings nie die modus aktiveer om die verkryging van bykomende voorregte in nuwe prosesse te verbied nie (prctl NO_NEW_PRIVS), sal firejail die gebruiker aan 'n dummy-omgewing koppel en probeer om die gebruikernaamruimte-instellings van die initproses (PID 1) toe te pas.

As gevolg hiervan, sal die proses wat via "firejail -join" gekoppel is, in die gebruiker se oorspronklike gebruiker-ID-naamruimte beland met onveranderde voorregte, maar in 'n ander bergpuntspasie, heeltemal beheer deur die aanvaller. 'n Aanvaller kan ook setuid-root-programme uitvoer in die bergpuntspasie wat hy geskep het, wat dit moontlik maak om byvoorbeeld die /etc/sudoers-instellings of PAM-parameters in sy lêerhiërargie te verander en om opdragte met wortelregte uit te voer deur die sudo of su nutsdienste.

Bron: opennet.ru

Voeg 'n opmerking