Limang mga kahinaan ang natukoy sa GNU screen console window manager (terminal multiplexer), na nagbibigay ng multi-window interface sa console. Ang pinaka-mapanganib na isyu (CVE-5-2025) ay nagbibigay-daan sa mga pribilehiyo ng ugat na makuha sa system. Ang pag-aayos ay kasama sa screen 23395 release ngayon.
Ang kahinaan ng CVE-2025-23395 ay nakakaapekto lamang sa screen 5.0.0 branch, na ipinapadala kasama ng Fedora Linux, Arch Linux, NetBSD, OpenBSD, at Alpine. Patuloy na ipinapadala ng Debian, Ubuntu, RHEL (EPEL 9), Gentoo, FreeBSD, SUSE/openSUSE at OpenWrt ang screen 4.x branch. Maaaring samantalahin ang kahinaan sa mga system na nag-i-install ng screen na executable gamit ang setuid root flag, gaya ng Arch Linux at NetBSD. Sa Fedora, ang utility ay naka-install na may setgid flag upang makakuha ng mga pahintulot ng pangkat ng screen, na nagpapahintulot sa mga socket na ilagay sa direktoryo ng /run/screen system, na naglilimita sa posibilidad ng pagtanggi sa pag-atake ng serbisyo.
Ang kahinaan ay sanhi ng katotohanan na kapag tumakbo na may mga pribilehiyo sa ugat, ang logfile_reopen() function ay isinasagawa bago ang mga pribilehiyo ay ibinagsak, ngunit pinoproseso ang data sa konteksto ng mga direktoryo ng kasalukuyang unprivileged user running screen. Kapansin-pansin na ang paunang pagbubukas ng log ay isinasagawa gamit ang tamang pag-reset ng mga pribilehiyo, ngunit kapag muling binubuksan ang file gamit ang log, ang pag-reset ng mga pribilehiyo ay hindi ginaganap.
Sa pamamagitan ng pagmamanipula sa session ng content logging mode, makakamit ng user ang pagsusulat ng data sa isang file na may root rights, habang ang file mismo ay maaaring i-save sa home directory ng user. Ang pag-atake ay binubuo ng pagtanggal ng nilikhang log file at pagpapalit nito ng simbolikong link na tumuturo sa anumang file sa system. Kung umiiral na ang file, ang data na naglalaman ng mga nilalaman ng screen sa session ng screen ay idaragdag dito nang hindi binabago ang may-ari. Kung wala ang file, gagawin ito nang may mga pahintulot na 0644, ugat ng may-ari at pangkat bilang kasalukuyang user.
Ang algorithm ng pag-atake na lumilikha ng file /etc/profile.d/exploit.sh na may command na "chown $USER /root":
- Gumawa ng screen session na may naka-enable na pag-log $ screen -Logfile $HOME/screen.log
- Pindutin ang key combination na Ctrl-aH upang paganahin ang pag-log.
- Tinatanggal ang log file at pinapalitan ito ng simbolikong link, na lilikha ng file /etc/profile.d/exploit.sh $ rm $HOME/screen.log; ln -s /etc/profile.d/exploit.sh $HOME/screen.log
- Bumalik sa screen session at mag-output ng data sa screen na isusulat sa log file. $ echo -e "\nchown $USER /root;"
- Kapag ang tunay na ugat ay kumonekta sa system, ang /etc/profile.d/exploit.sh script ay tatakbo, na magpapabago sa may-ari ng /root na direktoryo. $ ls -lhd /root drwxr-x— 5 user root 4.0K Dis 30 2020 .
- Sa pamamagitan ng pagkakatulad, maaari kang lumikha ng mga sudo configuration file o magdagdag ng mga command sa dulo ng mga script ng system.
Hindi gaanong mapanganib na mga kahinaan sa screen:
- CVE-2025-46802 - Pag-hijack ng TTY device sa mga session ng maraming user (maaaring makuha ng user ang crw-rw-rw- na mga pahintulot para sa /dev/pts/1 device). Lumilitaw ang problema sa screen na 4.x at 5.x na mga sanga.
- CVE-2025-46803 - Pagtatakda ng mga default na pahintulot sa 0622 sa isang PTY device, na nagpapahintulot sa sinumang user na magsulat. Ang problema ay lilitaw lamang sa screen 5.0 branch.
- CVE-2025-46804 - pagtagas ng impormasyon tungkol sa pagkakaroon ng mga file at direktoryo sa mga saradong direktoryo (kapag tinukoy ang isang direktoryo para sa mga socket gamit ang variable na kapaligiran ng SCREENDIR, ang utility ay gumagawa ng iba't ibang mga teksto ng error na nagpapahintulot sa isa na malaman ang tungkol sa pagkakaroon ng mga file at direktoryo na may ganitong pangalan). Lumilitaw ang problema sa screen na 4.x at 5.x na mga sanga.
- CVE-2025-46805 - Umiiral ang kondisyon ng lahi kapag nagpapadala ng mga signal ng SIGCONT at SIGHUP, na nagreresulta sa pagtanggi sa serbisyo. Lumilitaw ang problema sa screen na 4.x at 5.x na mga sanga.
- Maling paggamit ng strncpy function (pinapalitan ang strcpy ng strncpy nang hindi isinasaalang-alang ang pagkakaiba sa paghawak ng mga null na character "\0"), na humahantong sa isang pag-crash kapag nagsasagawa ng mga espesyal na naka-format na command. Ang problema ay lilitaw lamang sa screen 5.0 branch.
Ang mga kahinaan ay natuklasan sa panahon ng pag-audit ng GNU screen codebase na isinagawa ng pangkat na responsable para sa seguridad ng pamamahagi ng SUSE Linux. Naabisuhan ang mga screen developer tungkol sa kahinaan noong Pebrero 7, ngunit hindi nila nagawang maghanda ng mga pag-aayos para sa lahat ng mga kahinaan sa loob ng inilaang 90 araw, at ang mga empleyado ng SUSE ay kailangang maghanda ng ilang mga patch mismo. Ayon sa mga mananaliksik na nagsagawa ng pag-audit, ang kasalukuyang mga tagapanatili ng screen ng GNU ay walang sapat na pang-unawa sa code base ng proyekto at hindi nila lubos na nauunawaan ang mga isyu sa seguridad na natukoy.
Pinagmulan: opennet.ru
