Баг systemd позволяет привести к сбою в работе Linux, патч уже готов

Баг systemd позволяет привести к сбою в работе Linux, патч уже готов

Баг systemd позволяет привести к сбою в работе Linux, патч уже готов

Специалисты Qualys обнаружили уязвимость systemd, подсистемы управления службами в операционной системе Linux. Если злоумышленник задействует этот баг в атаке, у него появится возможность привести к сбою в работе системы.

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

Учитывая, что systemd используется практически во всех современных дистрибутивах Linux, вырисовываются довольно приличные масштабы уязвимости. По словам экспертов, брешь впервые появилась в коде в апреле 2015 года.

Суть бага кроется в некорректном использовании функции alloca(), что в результате приводит к повреждению памяти. Именно так атакующий может вызывать DoS в systemd и всей операционной системе. Для эксплуатации локальный злоумышленник должен смонтировать файловую систему с очень длинным путём.

Такой подход приведёт к использованию слишком большого количества памяти в стеке systemd, в результате чего операционная система аварийно завершит работу.

Исследователи отметили, что с багом нельзя бороться никаким другим способом, кроме установки соответствующего патча. Поэтому пользователям затронутых дистрибутивов настоятельно рекомендуется накатить обновления.

Старая уязвимость в 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-доступ.

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