Старая уязвимость в telnetd вернулась спустя 27 лет

Старая уязвимость в telnetd вернулась спустя 27 лет

Старая уязвимость в telnetd вернулась спустя 27 лет

Уязвимость из конца 90-х неожиданно вернулась и снова позволяет получить полный root-доступ к серверу без аутентификации. Об этом рассказал исследователь в области кибербезопасности Джастин Шварц, проанализировавший проблему в telnetd — демоне устаревшего, но всё ещё используемого протокола Telnet.

По словам Шварца, речь идёт о фактическом «возрождении» CVE-1999-0073 — известной уязвимости, которую многие давно считали закрытой страницей в истории.

Однако в современных реализациях обнаружился схожий механизм, позволяющий обойти проверку подлинности и повысить права. Проблема кроется в том, как telnetd запускает процесс /bin/login в контексте root-to-root.

В таком режиме ядро выставляет флаг AT_SECURE в ноль. А это значит, что динамический линкер не переходит в защищённый режим исполнения. В результате ответственность за очистку переменных окружения ложится на сам telnetd. Именно в этот момент, по словам исследователя, всё идёт не так.

Если демон не фильтрует переменные окружения должным образом, атакующий может подменить их и заставить систему загрузить вредоносную библиотеку (shared object). Шварц продемонстрировал технику повышения привилегий, при которой создаётся копия /bin/sh с SUID/SGID-правами. Фактически это даёт полный контроль над системой.

Ключевой момент: для эксплуатации не требуется никакой аутентификации через telnet. Повышение привилегий происходит без входа в систему.

Шварц считает, что проблема связана с давним подходом к фильтрации и использованием «чёрных списков» переменных. Такой метод, по его мнению, оказался ненадёжным и оставлял лазейки почти 27 лет. В качестве решения он предлагает перейти к модели «белого списка», как это реализовано в OpenSSH, где разрешён строго ограниченный набор безопасных переменных.

Шварц также предлагает объединить проблему в единый CVE с формулировкой «Некорректная очистка среды окружения в telnetd», чтобы закрыть как старые векторы, так и новый сценарий с динамическим линкером.

При этом рабочий код эксплойта исследователь публиковать не стал, чтобы не спровоцировать волну кибератак.

Напомним, в пролом месяце мы писали про ещё критическую уязвимость в telnetd, которая жила почти 10 лет и давала root-доступ.

Copy Fail в Linux: локальная уязвимость позволяла получить root-доступ

Разработчики популярных Linux-дистрибутивов начали выпускать патчи, закрывающие уязвимость Copy Fail. Брешь получила идентификатор CVE-2026-31431 и позволяет локальному пользователю повысить права до root. Проблеме присвоили высокий уровень опасности — 7,8 балла по CVSS.

Уязвимость связана с логической ошибкой в криптографическом компоненте ядра Linux — authencesn / algif_aead.

По данным исследователей Theori, обычный пользователь без повышенных прав может записать четыре контролируемых байта в кеш страницы любого читаемого файла, а затем использовать это для получения root-доступа.

Опасность в том, что ядро использует кеш страницы при запуске бинарных файлов. Если изменить кешированную копию, можно вмешаться в процесс выполнения программы, при этом обычные механизмы контроля файловых событий вроде inotify такую активность не заметят.

Исследователи подготовили proof-of-concept: эксплойт помещается в Python-скрипт на 10 строк и может модифицировать setuid-бинарник, чтобы получить root на большинстве Linux-дистрибутивов, выпущенных с 2017 года. По словам Theori, Copy Fail напоминает Dirty Cow и Dirty Pipe, но не требует гонку состояний (race condition).

Удалённо сама по себе уязвимость не эксплуатируется, атакующему нужен локальный доступ к системе. Но её можно использовать в цепочке атак, например после компрометации через web-RCE, SSH-доступ или вредоносный CI-runner. Особенно внимательно к патчам стоит отнестись тем, кто использует многопользовательские Linux-системы, контейнеры с общим ядром и CI-среды, где запускается недоверенный код.

Theori также считает, что Copy Fail можно использовать для побега из контейнера, поскольку кеш общий для хоста. Патчи уже выпустили разработчики Debian, Ubuntu, SUSE и Red Hat.

RSS: Новости на портале Anti-Malware.ru