Glibc ld.so haavatavus, mis vĂ”imaldab sĂŒsteemis root Ă”igusi saada

Qualys on tuvastanud ohtliku haavatavuse (CVE-2023-4911) ld.so linkimisprogrammis, mis on osa Glibci (GNU libc) sĂŒsteemsete C-raamatukogude komplektist. Haavatavus vĂ”imaldab kohalikul kasutajal oma Ă”igusi sĂŒsteemis tĂ”sta, mÀÀrates spetsiaalselt vormindatud andmed keskkonnamuutujasse GLIBC_TUNABLES enne suid rooti lipuga kĂ€itatava faili kĂ€ivitamist, nĂ€iteks /usr/bin/su.

Haavatavuse edukat Ă€rakasutamist on demonstreeritud Fedora 37 ja 38, Ubuntu 22.04 ja 23.04, Debian 12 ja 13 mĂ”juga. Eeldatakse, et haavatavus ilmneb ka teistes jaotustes, mis kasutavad Glibci. Musli sĂŒsteemsete C-raamatukogude baasil pĂ”hinevad jaotused, nagu Alpine Linux, ei ole probleemi all. Haavatavus on kĂ”rvaldatud 2. oktoobril lisatud plaastris. Pakettide vĂ€rskenduste vĂ€ljalaskmist jaotustes saab jĂ€lgida Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, Gentoo, ALT Linux lehtedel.

Haavatavus on pĂ”hjustatud aprillis 2021 tehtud muudatusest, mis oli osa glibc 2.34 vĂ€ljaandest. Koodiread, mis on mÀÀratud keskkonnamuutujasse GLIBC_TUNABLES, sisaldavad viga, mille tĂ”ttu vale parameetrite kombinatsioon selles muutujas pĂ”hjustab parsiteud vÀÀrtuse kirjutamise eraldatud puutĂŒkkide piirest. Probleem ilmneb, kui tavapĂ€raste jĂ€rjestuste «name=val» asemel on parameetrid antud topeltmÀÀramise kujul «name=name=val». Sellisel juhul töödeldakse mÀÀrangut kaks korda, algselt kui «name=name=val» ja hiljem kui «name=val». Sellise topeltprotsessi tagajĂ€rjel moodustub tulemus «name=name=val:name=val», mille suurus ĂŒletab tunestr puutĂŒki suuruse.

UurimisrĂŒhmad on vĂ€lja töötanud töökindla exploiti, mis vĂ”imaldab saada root Ă”igusi praktiliselt iga programmiga, millel on suid root lipp. Erandeid moodustavad utiliit sudo (mis muudab ELF RUNPATH vÀÀrtust), utiliidid chage ja passwd Fedora's (mis on kaitstud eraldi SELinux reeglitega) ning utiliit snap-confine Ubuntu's (mis on kaitstud eraldi AppArmor reeglitega). Pakutud kasutusmeetod ei toimi samuti RHEL 8 ja RHEL 9 versioonides, kuigi need versioonid on haavatavad (rĂŒnnakuks on vajalik uue exploiti loomine). Exploiti kood avaldatakse hiljem pĂ€rast haavatavuse ulatuslikku kĂ”rvaldamist. Oma sĂŒsteemi haavatavuse kontrollimiseks vĂ”ib kasutada allpool toodud kĂ€sku, mis ebaĂ”nnestub, kui probleem on olemas: env -i "GLIBC_TUNABLES=glibc.malloc.mxfast=glibc.malloc.mxfast=A" "Z=`printf '192x' 1`" /usr/bin/su --help

Eraldi toome vÀlja Glibc kahte lisahaavatavust kÔrvaldamise.

  • CVE-2023-4806 — vabanenud mĂ€luala (use-after-free) juurdepÀÀs funktsioonis getaddrinfo(), mis ilmneb, kui NSS-plug-in rakendab ainult call-back kutseid „_gethostbyname2_r“ ja „_getcanonname_r“, kuid ei toeta kutset „_gethostbyname3_r“. Haavatavuse Ă€ra kasutamiseks peab DNS-server tagastama suure arvu IPv6 ja IPv4 aadresse, mis toob kaasa protsessi kokkuvarisemise, mis kutsus vĂ€lja funktsiooni getaddrinfo AF_INET6 aadressipere jaoks, pannud lippudele AI_CANONNAME, AI_ALL ja AI_V4MAPPED.
  • CVE-2023-5156 — mĂ€lu sisu leke vĂ”tva funktsiooni getaddrinfo, AF_INET6 aadressipere jaoks, kui lipud AI_CANONNAME, AI_ALL ja AI_V4MAPPED on seatud.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster