V GNU Screen bolo zistených niekoľko zraniteľností, ktoré umožňovali získanie root oprávnení.

zraniteľnosť

Pred pár dňami bolo oznámené informácie o bezpečnostnom audite ktorý odhalil päť kritických zraniteľností v populárnom terminálovom multiplexore Obrazovka GNU, používa sa na správu viacerých konzolových relácií na jednom termináli.

Jedna z nich (CVE-2025-23395, najnebezpečnejšia zraniteľnosť) umožňuje útočníkovi získať root privilégiá na postihnutých systémoch (zraniteľnosť postihuje iba verziu 5.0.0 GNU Screen), a to aj v distribúciách ako Fedora, Arch Linux, NetBSD a ďalších. Iné verzie ako Debian, Ubuntu a RHEL však stále používajú vetvu 4.x, ktorá nie je voči tejto konkrétnej chybe zraniteľná.

CVE-2025-23395: Zvýšenie kritických privilégií

Uvádza sa, že problém sa vyskytuje keď sa GNU Screen spustí s koreňovým bitom setuid (prípad Arch a NetBSD), odkedya funkcia logfile_reopen() sa vykoná pred znížením privilégií, čo umožňuje používateľovi manipulovať s registrom a zapisovať ľubovoľné súbory ako root. Na typickej farme aÚtočník vymaže pôvodný súbor protokolu a nahradí ho symbolickým odkazom. do systémového súboru. Keď súbor znova otvoríte, Screen ho zapíše s oprávneniami root, čo umožní vstup škodlivého obsahu.

Tento problém ovplyvňuje obrazovku 5.0.0 pri spustení s oprávneniami setuid-root. Funkcia logfile_reopen() neodstraňuje privilégiá pri práci s cestou zadanou používateľom. Toto umožňuje neprivilegovaným používateľom vytvárať súbory na ľubovoľných miestach s vlastníctvom root, (skutočným) vlastníctvom skupiny volajúceho používateľa a režimom súboru 0644. Všetky údaje zapísané do Screen PTY budú zaznamenané do tohto súboru. Existujúce súbory je možné použiť aj na registráciu týmto spôsobom: údaje sa pridajú k príslušnému súboru, ale režim súboru a vlastníctvo zostanú nezmenené.

Tento útok pri správnom využití môže viesť k úplnej kontrole systému, pretože vám umožňuje upravovať citlivé súbory alebo meniť spúšťacie skripty. Fedora je čiastočne chránená, pretože Screen je nainštalovaný s bitom setgid, čo obmedzuje oblasť útoku.

Ďalšie relevantné zraniteľnosti

Audit, ktorý vykonal bezpečnostný tím SUSE Linux, identifikoval aj ďalšie dôležité zlyhania:

  • CVE-2025-46802: V reláciách s viacerými používateľmi môže útočník získať globálne oprávnenia na čítanie a zápis na zariadeniach TTY, ako napríklad /dev/pts/1, čo ovplyvní vetvy 4.x aj 5.x.
  • CVE-2025-46803: Vetva 5.0 nastavuje nezabezpečené oprávnenia (0622) na zariadeniach PTY, čo umožňuje zápis ľubovoľnému používateľovi.
  • CVE-2025-46804: Únik informácií umožňuje odvodiť existenciu súborov alebo adresárov pomocou chybových hlásení pri definovaní premennej SCREENDIR.
  • CVE-2025-46805: Súbeh pri odosielaní signálov SIGCONT a SIGHUP môže viesť k odmietnutiu služby.

Zistilo sa aj zneužitie strncpy, ktoré môže spôsobiť pády pri vykonávaní príkazov so špeciálnym formátovaním, čo je problém exkluzívny pre vetvu 5.0.

Nedostatočná údržba a podpora od spoločnosti SUSE

Objav týchto zraniteľností odhalil hlbšie problémy v údržbe GNU Screen. Podľa tímu SUSE, Súčasní správcovia projektu úplne nerozumejú kódovej základni. ani bezpečnostné problémy, čo ich prinútilo samostatne vyvíjať záplaty pre niektoré z objavených nedostatkov. Správa bola vývojárom odoslaná 7. februára, ale celú sadu zraniteľností sa nepodarilo opraviť v rámci dohodnutej 90-dňovej lehoty.

Čo robiť, ak používate GNU Screen?

Používatelia systémov, ktoré zahŕňajú Screen 5.0.0 s root ID setuid by mal okamžite aktualizovať na verziu 5.0.1 alebo dočasne sa vrátiť k verzii 4.x, ak nie sú k dispozícii žiadne balíky. Ako zmierňujúce opatrenie je možné z spustiteľného súboru Screen odstrániť aj bit setuid:

sudo chmod u-s /usr/bin/screen

Avšak, Toto môže ovplyvniť funkčnosť ako napríklad zdieľanie relácií medzi používateľmi. Na záver stojí za zmienku, že nedávno vydaná verzia 5.0.1 opravuje túto a ďalšie chyby a je teraz dostupná na distribúciách ako Arch Linux a FreeBSD.

Ak ste záujem dozvedieť sa o tom viac, môžete skontrolovať podrobnosti v nasledujúci odkaz.