Vulnerabiliteti në GNU screen, që lejon ekzekutimin e kodit me të drejta root

Në menaxherin e dritares konsolë (multiplexer të terminaleve) GNU screen, i cili ofron një ndërfaqe shumë-feneshe në konsolë, janë zbuluar 5 vulnerabilitete. Problemi më i rrezikshëm (CVE-2025-23395) lejon marrjen e të drejtave root në sistem. Rregullimi është përfshirë në versionin e sotëm të screen 5.0.1.

Vulnerabiliteti CVE-2025-23395 manifestohet vetëm në degën screen 5.0.0, e cila ofrohet në Fedora Linux, Arch Linux, NetBSD, OpenBSD dhe Alpine. Në Debian, Ubuntu, RHEL (EPEL 9), Gentoo, FreeBSD, SUSE/openSUSE dhe OpenWrt, vijon të ofrohet dega screen 4.x. Shfrytëzimi i vulnerabilitetit është i mundur në sistemet që instalojnë skedarin ekzekutiv screen me flamurin setuid root, si në Arch Linux dhe NetBSD. Në Fedora, utilita instalohet me flamurin setgid për të marrë të drejtat e grupit screen, e cila lejon vendosjen e soketëve në katalogun sistematik /run/screen, gjë që kufizon mundësitë e sulmeve të refuzimit të shërbimit.

Vulnerabiliteti shkaktohet nga fakti se, kur startohet me të drejtat root, funksioni logfile_reopen() ekzekutohet para se të bien të drejtat, por përpunon të dhënat në kontekstin e katalogëve të përdoruesit pa privilegje që ka nisur screen. E veçantë është se hapja fillestare e logut bëhet me rregullimin e saktë të privilegjeve, por kur hapet përsëri skedari i logut, rregullimi i privilegjeve nuk bëhet.

Përmes manipulimeve me aktivizimin e modit të regjistrimit të përmbajtjes së sesionit, përdoruesi mund të arrijë të regjistrojë të dhëna në një skedar me të drejta root, ndonëse vetë skedari mund të ruhet në katalogun e shtëpisë së përdoruesit. Sulmi përqendrohet në fshirjen e skedarit të krijuar me log dhe zëvendësimin e tij me një lidhje simbolike që tregon në çdo skedar në sistem. Nëse skedari tashmë ekziston, të dhëna me përmbajtjen e ekranit në sesionin screen do të shtohen në të pa ndryshuar pronarin. Nëse skedari nuk ekziston, ai do të krijohet me të drejta 0644, pronar root dhe grup si të përdoruesit aktual.

Algoritmi i sulmit, i cili krijon skedarin /etc/profile.d/exploit.sh me komandën "chown $USER /root":

  • Krijimi i njĂ« sesioni screen me aktivizimin e regjistrimit $ screen -Logfile $HOME/screen.log
  • Shtypja e kombinimit tĂ« çelĂ«save Ctrl-a-H pĂ«r tĂ« aktivizuar logun.
  • Fshirja e skedarit tĂ« logut dhe zĂ«vendĂ«simi i tij me njĂ« lidhje simbolike, e cila do tĂ« çojĂ« nĂ« krijimin e skedarit /etc/profile.d/exploit.sh $ rm $HOME/screen.log; ln -s /etc/profile.d/exploit.sh $HOME/screen.log
  • Kthimi nĂ« sesionin screen dhe shfaqja nĂ« ekran e tĂ« dhĂ«nave qĂ« do tĂ« regjistrohen nĂ« skedarin e logut. $ echo -e "\nchown $USER /root;"
  • Pasi qĂ« sistemi tĂ« lidhet me realin root, do tĂ« nisĂ« skenari /etc/profile.d/exploit.sh, i cili do tĂ« ndryshojĂ« pronarin pĂ«r katalogun /root. $ ls -lhd /root drwxr-x— 5 user root 4.0K Dec 30 2020 .
  • NĂ« mĂ«nyrĂ« tĂ« ngjashme, mund tĂ« krijoni skedarĂ« konfigurimi sudo ose tĂ« shtoni komanda nĂ« fund tĂ« skenareve sistemike.

Vulnerabilitete më pak të rrezikshme në screen:

  • CVE-2025-46802 — kapja e pajisjeve TTY nĂ« seancat multi-pĂ«rdorues (pĂ«rdoruesi mund tĂ« arrijĂ« tĂ« vendosĂ« tĂ« drejtat pĂ«r pajisjen /dev/pts/1 si crw-rw-rw-). Problemi manifeston nĂ« degĂ«t screen 4.x dhe 5.x.
  • CVE-2025-46803 — vendosja e tĂ« drejtave 0622 si tĂ« dhĂ«na pĂ«r pajisjen PTY, duke lejuar shkruarjen nga çdo pĂ«rdorues. Problemi manifeston vetĂ«m nĂ« degĂ«n screen 5.0.
  • CVE-2025-46804 — rrjedhja e informacionit mbi ekzistencĂ«n e skedarĂ«ve dhe katalogĂ«ve nĂ« katalogĂ«t e mbyllur (kur spesifikohet katalogu pĂ«r socket, duke pĂ«rdorur variablin SCREENDIR, utilita jep çdoherĂ« mesazhe gabimi tĂ« ndryshme, duke lejuar tĂ« kuptohet praninĂ« e skedarĂ«ve dhe katalogĂ«ve me kĂ«tĂ« emĂ«r). Problemi manifeston nĂ« degĂ«t screen 4.x dhe 5.x.
  • CVE-2025-46805 — gjendja e garĂ«s gjatĂ« dĂ«rgimit tĂ« sinjaleve SIGCONT dhe SIGHUP, duke shkaktuar refuzim tĂ« shĂ«rbimit. Problemi manifeston nĂ« degĂ«t screen 4.x dhe 5.x.
  • PĂ«rdorimi i paqartĂ« i funksionit strncpy (zĂ«vendĂ«simi i strcpy me strncpy pa marrĂ« parasysh ndryshimin nĂ« pĂ«rpunimin e simboleve tĂ« zeros «\0»), duke çuar nĂ« pĂ«rfundim tĂ« papritur gjatĂ« ekzekutimit tĂ« komandave tĂ« formuara posaçërisht. Problemi manifeston vetĂ«m nĂ« degĂ«n screen 5.0.

Vulnerabilitetet janë zbuluar gjatë auditi të kodit burimor të GNU screen, i kryer nga ekipi përgjegjës për sigurinë e shpërndarjes SUSE Linux. Informacionin mbi vulnerabilitetin iu dërgua zhvilluesve të screen më 7 shkurt, por gjatë 90 ditëve të dhëna ata nuk arritën të përgatitin rregullime për të gjitha vulnerabilitetet dhe punonjësit e SUSE duhej të përgatitnin disa patches vetë. Sipas mendimit të hulumtuesve që kryen auditin, zhvilluesit aktualë të GNU screen nuk janë mjaft të njohur me kodin e projektit dhe nuk janë në gjendje të zgjidhin plotësisht problemet e identifikuara të sigurisë.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster