Уязвимость Dirty Frag предоставляет root-доступ на большинстве Linux-систем с 2017 года: патчей пока нет
Вопрос к системным администраторам: что может быть хуже одной уязвимости Linux, дающей мгновенный root-доступ на большинстве систем, выпущенных с 2017 года? Правильно, две такие уязвимости. Сегодняшняя плохая новость связана с уязвимостью Dirty Frag, которая использует механизм, схожий с эксплойтом Copy Fail, который сейчас активно обсуждается в мире Linux-серверов. Эта уязвимость затрагивает практически все установки Linux, начиная с 2017 года, и о ней не было предварительного предупреждения, поэтому патча пока не существует. По-видимому, это связано с нарушенным эмбарго, которое раскрыло информацию об уязвимости до того, как были подготовлены исправления.
Напомним, что любой локальный пользователь может мгновенно получить root-доступ (администратора) на уязвимой системе, просто запустив небольшую программу. Атака не зависит от конкретных системных условий или времени, так как это простая логическая ошибка. Затронуты практически все популярные дистрибутивы Linux, выпущенные с 2017 года, включая, но не ограничиваясь, текущими версиями Ubuntu (24 и 26), Arch, RHEL, OpenSUSE, CentOS Stream, Fedora и Alma. Редакция ресурса Tomshardware даже протестировала WSL2, и, конечно же, получила root-доступ.
Однако Dirty Frag превосходит своего «родственника» Copy Fail, так как на момент написания статьи для него вообще не существует патчей, что делает его чрезвычайно опасным. Даже в основной ветке ядра Linux, похоже, нет исправлений: один из коллег сообщил об успешном применении эксплойта на машине с CachyOS под управлением ядра 7.0.3-1-cachyos, а также на обновленной системе Arch. Разумеется, следует внимательно следить за обновлениями и устанавливать патчи на серверы сразу же, как только они станут доступны.
К счастью, смягчить угрозу довольно просто, и это вряд ли повлияет на работу подавляющего большинства серверов. Для этого достаточно отключить модули esp4, esp6 и rxrpc. Все они в той или иной степени связаны с сетями IPSec и вряд ли используются, если машина не является клиентом или сервером IPSec. Отключить эти модули можно с помощью команды:
sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; true"Причина, по которой Dirty Frag застала всех врасплох, заключается в том, что, хотя об уязвимости сообщили команде разработчиков ядра Linux 30 апреля, «не связанная с ними третья сторона» нарушила эмбарго на раскрытие информации. На сайте не приводится подробностей, но лучшая теория редакции заключается в том, что это означает, что эксплойт уже используется злоумышленниками, что и привело к нарушению эмбарго. Если вы хотите проверить свои системы, вы можете использовать:
git clone https://github.com/V4bel/dirtyfrag.git && cd dirtyfrag && gcc -O0 -Wall -o exp exp.c -lutil && ./expЧто касается технических деталей, то история мало чем отличается от Copy Fail и основана на эксплуатации операции с нулевым копированием путем внедрения дескриптора страничного кэша. Разница в том, что на этот раз уязвимый код находится в модулях, связанных с IPSec. Исходная уязвимость — «xfrm-ESP Page Cache Write» — была внесена в ядро коммитом cac2661c53f3 от 2017 года и присутствует в большинстве дистрибутивов. Поскольку AppArmor в системах Ubuntu закрывает эту конкретную брешь, PoC (Proof of Concept) использует цепочку из второго эксплойта — «RxRPC Page-Cache Write», добавленного в коммите 2dc334f1a63a.
Источник: Tomshardware.com







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