Maraming mga kahinaan ang nakita sa GNU Screen na nagpapahintulot na makuha ang mga pribilehiyo sa ugat.

kahinaan

Ilang araw na ang nakalipas, inanunsyo ito impormasyon tungkol sa isang security audit na nagpahayag ng limang kritikal na kahinaan sa sikat na terminal multiplexer GNU Screen, ginagamit upang pamahalaan ang maramihang mga session ng console sa isang terminal.

Isa sa mga ito (CVE-2025-23395, ang pinaka-mapanganib na kahinaan) nagbibigay-daan sa isang umaatake na makakuha ng mga pribilehiyo sa ugat sa mga apektadong system (naaapektuhan lang ng kahinaan ang bersyon 5.0.0 ng GNU Screen), kasama ang mga pamamahagi gaya ng Fedora, Arch Linux, NetBSD, at iba pa. Ang ibang mga bersyon gaya ng Debian, Ubuntu at RHEL, gayunpaman, ay gumagamit pa rin ng 4.x branch, na hindi masusugatan sa partikular na kapintasan na ito.

CVE-2025-23395: Pagtaas ng Kritikal na Pribilehiyo

Nabanggit na ang problema ay nangyayari kapag ang GNU Screen ay pinapatakbo gamit ang setuid root bit (kaso ng Arch at NetBSD), mula noonat ang logfile_reopen() function ay isinasagawa bago ibaba ang mga pribilehiyo, na nagpapahintulot sa gumagamit na manipulahin ang registry upang magsulat ng mga arbitrary na file bilang ugat. Sa isang tipikal na sakahan, atTinatanggal ng umaatake ang orihinal na log file at pinapalitan ito ng simbolikong link. sa isang file ng system. Kapag binuksan mo muli ang file, isinusulat ito ng Screen na may mga pahintulot sa ugat, na nagbibigay-daan sa malisyosong content na makapasok.

Nakakaapekto ang isyung ito sa Screen 5.0.0 kapag tumatakbo nang may mga pribilehiyong setuid-root. Ang logfile_reopen() function ay hindi nag-aalis ng mga pribilehiyo kapag nagpapatakbo sa isang path na ibinigay ng user. Nagbibigay-daan ito sa mga walang pribilehiyong user na lumikha ng mga file sa mga arbitrary na lokasyon na may pagmamay-ari ng ugat, ang (tunay) na pagmamay-ari ng grupo ng gumagamit na gumagamit, at file mode 0644. Ang lahat ng data na nakasulat sa Screen PTY ay ila-log sa file na ito. Ang mga kasalukuyang file ay maaari ding gamitin para sa pagpaparehistro sa ganitong paraan: ang data ay idaragdag sa file na pinag-uusapan, ngunit ang file mode at pagmamay-ari ay mananatiling hindi magbabago.

Ang atake na ito ay maaaring humantong sa kabuuang kontrol ng system kung pinagsamantalahan nang maayos, dahil pinapayagan ka nitong baguhin ang mga sensitibong file o baguhin ang mga script ng startup. Bahagyang protektado ang Fedora dahil naka-install ang Screen gamit ang setgid bit, na nililimitahan ang surface ng pag-atake.

Iba pang mga kaugnay na kahinaan

Ang pag-audit, na isinagawa ng pangkat ng seguridad ng SUSE Linux, natukoy din ang iba pang malalaking depekto:

  • CVE-2025-46802: Sa mga session ng maraming user, maaaring makakuha ang isang attacker ng pandaigdigang pahintulot sa pagbasa at pagsulat sa mga TTY device gaya ng /dev/pts/1, na nakakaapekto sa parehong 4.x at 5.x na sangay.
  • CVE-2025-46803: Ang 5.0 branch ay nagtatakda ng mga hindi secure na pahintulot (0622) sa mga PTY device, na nagpapahintulot sa pagsulat ng sinumang user.
  • CVE-2025-46804: Ang pagtagas ng impormasyon ay nagbibigay-daan sa pagkakaroon ng mga file o direktoryo na mahihinuha gamit ang mga mensahe ng error kapag tinutukoy ang variable ng SCREENDIR.
  • CVE-2025-46805: Ang kondisyon ng karera kapag nagpapadala ng mga signal ng SIGCONT at SIGHUP ay maaaring magresulta sa pagtanggi ng serbisyo.

May nakita ring maling paggamit ng strncpy, na maaaring magdulot ng mga pag-crash kapag nagpapatupad ng mga command na may espesyal na pag-format, isang isyu na eksklusibo sa 5.0 na sangay.

Kakulangan ng pagpapanatili at suporta mula sa SUSE

Ang pagtuklas ng mga kahinaang ito ay naglantad ng mas malalalim na problema sa pagpapanatili ng GNU Screen. Ayon sa pangkat ng SUSE, Ang kasalukuyang mga tagapangasiwa ng proyekto ay hindi lubos na nauunawaan ang base ng code o mga problema sa seguridad, na nagpilit sa kanila na bumuo ng mga patch para sa ilan sa mga natuklasang mga kapintasan sa kanilang sarili. Ipinadala ang ulat sa mga developer noong Pebrero 7, ngunit ang buong hanay ng mga kahinaan ay hindi maaayos sa loob ng napagkasunduang 90-araw na palugit.

Ano ang gagawin kung gumagamit ka ng GNU Screen?

Mga user ng mga system na may kasamang Screen 5.0.0 na may setuid root dapat agad na mag-update sa bersyon 5.0.1 o pansamantalang bumalik sa 4.x na bersyon kung walang available na mga package. Bilang mitigation measure, ang setuid bit ay maaari ding alisin sa Screen executable:

sudo chmod u-s /usr/bin/screen

Gayunpaman, Maaaring makaapekto ito sa functionality gaya ng pagbabahagi ng session sa pagitan ng mga user. Sa wakas, ito ay nagkakahalaga ng pagbanggit na ang kamakailang inilabas na bersyon 5.0.1 ay nag-aayos nito at sa iba pang mga bug at magagamit na ngayon sa mga distribusyon tulad ng Arch Linux at FreeBSD.

Kung ikaw interesadong malaman ang higit pa tungkol dito, maaari mong suriin ang mga detalye sa sumusunod na link.