Viga systemd-coredump, mis võimaldab määrata suid-programmide mälusisu.

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

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster