Уязвимость ядра Linux открывает возможность для обширных кибератак

Уязвимость ядра Linux открывает возможность для обширных кибератак

Уязвимость ядра Linux открывает возможность для обширных кибератак

В ядре Linux выявили очередную уязвимость, приводящую к раскрытию информации в памяти стека. По словам специалистов Cisco Talos, брешь присутствует в /proc/pid/syscall и затрагивает 32-битные ARM-устройства. Причина бага кроется в некорректном преобразовании числовых значений при прочтении файла.

В результате потенциальный злоумышленник может использовать уязвимость, получившую идентификатор CVE-2020-28588, при помощи нескольких команд. Следствием успешной эксплуатации также является обход технологии ASLR.

Напомним, что KASLR предназначена для борьбы с эксплойтами — функция случайным образом изменяет расположение важных структур данных в адресном пространстве процесса.

«Такую кибератаку [с использованием CVE-2020-28588 — прим. AM] невозможно детектировать в сети удалённо. Если преступник успешно задействует брешь, ему удастся не только слить информацию, но и проэксплуатировать дополнительные непропатченные дыры», — пишет Cisco Talos.

«Атакующему достаточно прочитать /proc/<pid>/syscall. В настоящий момент мы наблюдаем эту проблему на любой Linux-системе, сконфигурированной с CONFIG_HAVE_ARCH_TRACEHOOK. Этот файл раскрывает число системных вызовов».

Как отметили эксперты, следующие три шелл-команды способны задействовать обнаруженную уязвимость:

  • # echo 0 > /proc/sys/kernel/randomize_va_space (# only needed for a cleaner output)
  • $ while true; do cat /proc/self/syscall; done | uniq (# waits for changes)
  • $ while true; do free &>/dev/null; done (# triggers changes)

На сегодняшний день разработчики уже выпустили патчи с ядром Linux версий 5.10-rc4, 5.4.66 и 5.9.8. Специалисты рекомендуют всем установить обновления как можно скорее.

Критическая уязвимость в TLP позволяет обойти защиту Linux

В популярной утилите TLP, которую многие владельцы ноутбуков на Linux используют для управления энергопотреблением, обнаружили критическую уязвимость. Причём проблема нашлась во время обычной проверки пакета командой SUSE Security Team и располагается во вполне штатном коде.

Брешь получила идентификатор CVE-2025-67859 и затрагивает версию TLP 1.9.0, где появился новый profiles daemon.

Этот демон работает с root-правами и управляет профилями питания через D-Bus. Задумка хорошая, но реализация подвела: в механизме аутентификации Polkit нашлась логическая ошибка, которая фактически позволяет обойти проверку прав.

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

На этом сюрпризы не закончились. В ходе анализа специалисты SUSE нашли ещё несколько проблем, уже связанных с исчерпанием ресурсов. В частности, механизм profile hold, который позволяет временно «зафиксировать» профиль питания, оказался совершенно без валидации. Локальный пользователь мог создавать неограниченное количество таких блокировок, причём без прав администратора.

В итоге это открывает прямую дорогу к DoS-атаке: демон начинает захлёбываться от бесконечных записей в структуре данных, куда попадают числа, строки с причиной и идентификаторы приложений — всё это полностью контролируется клиентом.

Любопытно, что SUSE вспомнила похожую историю с демоном управления питанием в GNOME: аналогичную проблему находили ещё несколько лет назад. Отдельно исследователи отметили вопросы к механизму «куки», которыми отслеживаются profile hold. Формально речь шла о предсказуемости значений, но в сочетании с отсутствием лимитов это лишь расширяло поверхность атаки.

К счастью, реакция была быстрой. SUSE сообщила об уязвимостях разработчикам ещё в декабре, и в версии TLP 1.9.1 проблема уже закрыта. В частности, число одновременных profile hold теперь жёстко ограничено числом 16, что убирает риск истощения ресурсов.

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