У GNU Screen було виявлено кілька вразливостей, які дозволяли отримати root-права.

уразливість

Кілька днів тому було оголошено інформація про аудит безпеки який виявив п'ять критичних вразливостей у популярному мультиплексорі терміналів Екран GNU, що використовується для керування кількома консольними сеансами на одному терміналі.

Одна з яких (CVE-2025-23395, найнебезпечніша вразливість) дозволяє зловмиснику отримати root-права на уражених системах (вразливість стосується лише версії 5.0.0 GNU Screen), зокрема у таких дистрибутивах, як Fedora, Arch Linux, NetBSD та інших. Однак інші версії, такі як Debian, Ubuntu та RHEL, все ще використовують гілку 4.x, яка не вразлива до цієї конкретної вади.

CVE-2025-23395: Підвищення критичних привілеїв

Зазначається, що проблема виникає коли GNU Screen запускається з кореневим бітом setuid (у випадку Arch та NetBSD), оскількиа функція logfile_reopen() виконується перед зниженням привілеїв, що дозволяє користувачеві маніпулювати реєстром для запису довільних файлів від імені root. На типовій фермі, іЗловмисник видаляє оригінальний файл журналу та замінює його символічним посиланням. до системного файлу. Коли ви знову відкриваєте файл, Screen записує його з правами root, що дозволяє проникнути шкідливому вмісту.

Ця проблема впливає на екран 5.0.0 під час роботи з правами setuid-root. Функція logfile_reopen() не видаляє привілеї під час роботи зі шляхом, вказаним користувачем. Це дозволяє непривілейованим користувачам створювати файли в довільних місцях з правами root, (реальним) груповим правом власності користувача, що викликає, та режимом файлу 0644. Усі дані, записані в Screen PTY, будуть записані в цей файл. Існуючі файли також можна використовувати для реєстрації таким чином: дані будуть додані до відповідного файлу, але режим файлу та власник залишаться незмінними.

Цей напад може призвести до повного контролю над системою, якщо використовувати її правильно, оскільки це дозволяє змінювати конфіденційні файли або сценарії запуску. Fedora частково захищена, оскільки Screen встановлюється з бітом setgid, що обмежує поверхню атаки.

Інші відповідні вразливості

Аудит, проведений командою безпеки SUSE Linux, також виявили інші важливі недоліки:

  • CVE-2025-46802: У багатокористувацьких сеансах зловмисник може отримати глобальні дозволи на читання та запис на пристроях TTY, таких як /dev/pts/1, що впливає на гілки 4.x та 5.x.
  • CVE-2025-46803: Гілка 5.0 встановлює незахищені дозволи (0622) на пристроях PTY, дозволяючи запис будь-якому користувачеві.
  • CVE-2025-46804: Витік інформації дозволяє визначити існування файлів або каталогів за допомогою повідомлень про помилки під час визначення змінної SCREENDIR.
  • CVE-2025-46805: Умова змагання під час надсилання сигналів SIGCONT та SIGHUP може призвести до відмови в обслуговуванні.

Також було виявлено неправильне використання strncpy, яке може спричиняти збої під час виконання команд зі спеціальним форматуванням, проблема, характерна виключно для гілки 5.0.

Відсутність технічного обслуговування та підтримки з боку SUSE

Виявлення цих вразливостей виявило глибші проблеми в обслуговуванні GNU Screen. За словами команди SUSE, Поточні розробники проєкту не до кінця розуміють кодову базу ані проблеми безпеки, що змусило їх самостійно розробляти виправлення для деяких виявлених недоліків. Звіт було надіслано розробникам 7 лютого, але весь набір вразливостей не вдалося виправити протягом узгодженого 90-денного пільгового періоду.

Що робити, якщо ви використовуєте GNU Screen?

Користувачі систем, що включають Screen 5.0.0 з root-ідентифікатором setuid слід негайно оновити до версії 5.0.1 або тимчасово повернутися до версії 4.x, якщо пакети недоступні. Як запобіжний захід, біт setuid також можна видалити з виконуваного файлу Screen:

sudo chmod u-s /usr/bin/screen

Проте, Це може вплинути на функціональність наприклад, спільний доступ до сеансів між користувачами. Нарешті, варто зазначити, що нещодавно випущена версія 5.0.1 виправляє цю та інші помилки і тепер доступна на таких дистрибутивах, як Arch Linux та FreeBSD.

Якщо ви є цікаво дізнатися про це більше, ви можете перевірити деталі в наступне посилання.


Додати як пріоритетне джерело