Uus haavatavuste seeria telnetd-s, mis vĂ”imaldab sĂŒsteemis saada root Ă”igusi.

PÀrast jaanuari lÔpus avastatud haavatavust, mis lubas siseneda root kasutajana ilma parooli kontrollimiseta, on GNU InetUtils'i telnetd serveris avastatud mitu viisi Ôiguste tÔstmiseks, mis on osa 1999. aastal esinenud haavatavuse mitte tÀielikust kÔrvaldamisest (CVE-1999-0073).

Haavatavused tulenevad telnetd-s kliendi poolt serverisse keskkonnamuutujate edastamise vĂ”imalusest ENVIRON valiku kaudu. Sellised keskkonnamuutujad seadistatakse ja neid kĂ€sitletakse telnetd protsessi kontekstis ning edastatakse tema loodud alamprotsessidele, sealhulgas root Ă”igustega kĂ€ivitatavale protsessile /bin/login. Haavatavus CVE-1999-0073 vĂ”imaldas telnet kliendil edastada keskkonnamuutujat LD_LIBRARY_PATH, mille seadistamine viis kasutaja mÀÀratud jagatud teegi laadimisele login protsessi kĂ€ivitamisel. Kui failide laadimine sĂŒsteemi, mis toetab telnet-protokolli, on lubatud, vĂ”ib rĂŒndaja laadida spetsiaalselt loodud teegi ja korraldada selle laadimise root Ă”igustega.

GNU InetUtils telnetd-s on leiti turvaauend, mis takistas ohtlike keskkonnamuutujate filtreerimist maskide „LD_“, „LIBPATH“, „ENV“, „IFS“ ja „_RLD_“ kaudu. Siiski jĂ€i blokeerimata keskkonnamuutuja „CREDENTIALS_DIRECTORY“, mis töödeldi kĂ€ivitamisel /usr/bin/login. Selle keskkonnamuutuja abil sai kasutaja muuta autentimise seadete katalooge ja seal uues kataloogis luua faili login.noauth vÀÀrtusega „yes“, mis aktiveerib sisselogimise ilma paroolita (sarnane protsessile login edastatud lipuga „-f“). Seade kehtib kĂ”igi kasutajate, sealhulgas rooti jaoks.

RĂŒnnak seisneb mitteprivilliigitud kasutaja loodud alamkatalooge tema kodukataloogis, faili login.noauth sinna laadimises ning sisselogimise katses, seadistades keskkonnamuutuj „CREDENTIALS_DIRECTORY=loodud kataloog“ ja andes keskkonnamuutuja „USER=root“ (telnetil on automaatse ĂŒhenduse reĆŸiim, kus kasutajanimi ei pĂ€rine kĂ€surealt, vaid edastatakse lĂ€bi keskkonnamuutuj USER). NĂ€ide eksploitimisest.

Leiti vĂ€lja veel ĂŒks vĂ”imalus root-juurdepÀÀsu saamiseks telnetd kaudu, mis on seotud keskkonnamuutujate OUTPUT_CHARSET ja LANGUAGE manipuleerimisega, mida töötleb GNU gettext raamatukogu, ning keskkonnamuutujaga GCONV_PATH, mida kasutatakse glibc-s. Seades keskkonnamuutujad OUTPUT_CHARSET ja LANGUAGE, saab rĂŒndaja aktiveerida gettext funktsionaalsuse sĂŒmbolite kodeeringu konverteerimiseks, kutsudes esile funktsiooni iconv_open(). Omakorda arvutatakse funktsiooni iconv_open() tĂ€itmisel gconv-modules konfiguratsioonifaili laadimisel tee GCONV_PATH keskkonnamuutujat arvestades. Faili gconv-modules asendamise kaudu on vĂ”imalik korraldada enda jagatud raamatukogu laadimist lokaliseeritud stringi vĂ€ljastamise ajal login protsessi kaudu.

CVE-ids mÀÀratud haavatavustele pole veel mÀÀratud. Kaitsemeetodina kaalutakse lubatud vÀÀrtuste valge nimekirja kasutuselevĂ”ttu („TERM“, „DISPLAY“, „USER“, „LOGNAME“ ja „POSIXLY_CORRECT“) koos teiste keskkonnamuutujate blokeerimisega, sarnaselt sellele, kuidas keskkonnamuutujate töö toimub OpenSSH-s. Haavatavused on kinnitatud GNU InetUtils paketis, rakendamine serverid telnetd, mis tarnib Debianis, Ubuntu ja tuletatud distributsioonides. GNU InetUtilsi jaoks pole parandusi veel saadaval. Rocky Linux 9 toob kaasa muudetud telnetd, mis ei ole haavatav, kus ohtlike keskkonnamuutujate filtreerimise asemel on kasutusele vĂ”etud valge nimekiri. Valge nimekirja filtreerimine on samuti rakendatud FreeBSD telnetd-s. OpenBSD telnetd eemaldati sĂŒsteemist 2005. aastal.

Allikas: opennet.ru

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