Component systemd-coredump, mis haldab protsesside kokkuvarisemise jÀrgselt genereeritud core-faile, sisaldab haavatavust (CVE-2022-4415), mis vÔimaldab mitteprivileegitud kohalikul kasutajal selgitada vÀlja privileegidega protsesside mÀlusisud, mis on kÀivitatud suid root lipuga. Probleemi olemasolu vaikekonfiguratsioonis on kinnitatud distributsioonides openSUSE, Arch, Debian, Fedora ja SLES.
Haavatavus tuleneb sysctl parameetri fs.suid_dumpable vale kÀsitlemise puudumisest systemd-coredump'is, mis vaikimisi seadistuses 2 lubab core-koopiate genereerimise suid-lipuga protsesside jaoks. Eeldatakse, et kerneliga genereeritud suid-protsesside core-failide Ôigused seadistatakse niimoodi, et need lubavad lugemist ainult root-kasutajale. Systemd-coredump utiliit, mida kernel kutsub core-failide salvestamiseks, salvestab core-faili root-i all, kuid lisaks annab juurdepÀÀsu core-failidele ACL-i alusel, mis lubab lugemist omaniku identifikaatori alusel, kes algselt protsessi kÀivitas.
Antud funktsioon vĂ”imaldab laadida core-faile ilma, et programm saaks kasutaja ID-d muuta ja töötada tĂ”stetud Ă”igustega. RĂŒnnak seisneb selles, et kasutaja saab kĂ€ivitada suid-rakenduse ja saata sellele SIGSEGV signaali, seejĂ€rel laadida core-faili sisu, mis sisaldab protsessi mĂ€lukihistust avariilise lĂ”petamise hetkel.
NĂ€iteks vĂ”ib kasutaja kĂ€ivitada â/usr/bin/suâ ja teises terminalis lĂ”petada selle kĂ€ivitamise kĂ€suga âkill -s SIGSEGV `pidof su`â, mille jĂ€rel systemd-coredump salvestab core-faili katalooge /var/lib/systemd/coredump, seadistades selle jaoks ACL-i, mis lubab lugemist praegusele kasutajale. Kuna suid-tööriist âsuâ loeb mĂ€lu sisu /etc/shadow, vĂ”ib rĂŒndaja pÀÀseda ligi kĂ”igi sĂŒsteemi kasutajate paroolide rĂ€si teabele. Tööriist sudo ei ole rĂŒnnaku suhtes haavatav, kuna keelab core-failide genereerimise ulimit'i kaudu.
Arendajate sĂ”nul ilmneb systemd haavatavus alates sĂŒsteemi versioonist 247 (november 2020), kuid probleemide avastaja sĂ”nul on haavatav ka versioon 246. Haavatavus ilmneb, kui systemd on ehitatud koos libacl teegiga (mis on vaikimisi kĂ”igis populaarsetes distributsioonides). Parandus on praegu saadaval koodi patchina. Paranduste jĂ€lgimist distributsioonides saab teha jĂ€rgmiste lehekĂŒlgede kaudu: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Gentoo, Arch. Kaitseks saab sysctl fs.suid_dumpable vÀÀrtuse seada nulli, et keelata systemd-coredump'i töötlejale korvdumpide saatmine.
Allikas: opennet.ru
