RefluXFS: локальное повышение до root в XFS, найденное с помощью ИИ

· Безопасность
Qualys раскрыла CVE-2026-64600 — состояние гонки в подсистеме copy-on-write файловой системы XFS, позволяющее обычному пользователю получить права root. Уязвимость существует с ядра 4.11 и потенциально затрагивает более 16 миллионов систем.

cover.svg

Подразделение Qualys Threat Research Unit сообщило об уязвимости CVE-2026-64600, получившей имя RefluXFS. Это состояние гонки в пути copy-on-write (CoW) файловой системы XFS в ядре Linux. Обычный локальный пользователь без каких-либо привилегий может воспользоваться ею, чтобы перезаписать содержимое любого доступного для чтения файла на томе XFS с включённым reflink — и тем самым получить root на хосте.

Как это работает

Сбой возникает при двух одновременных записях с флагом O_DIRECT в один и тот же reflink-файл. Чтобы избежать взаимоблокировки, ядро временно снимает блокировку inode, ожидая места в журнале транзакций. В этом окне второй писатель успевает завершить собственный цикл CoW и снизить счётчик ссылок на исходный блок до единицы. Когда первый писатель возвращает блокировку, он перепроверяет счётчик по устаревшему физическому адресу блока, захваченному до её снятия. Видя единицу, он ошибочно считает блок приватным и пишет прямо в исходный файл. Поскольку O_DIRECT обходит страничный кэш и не выполняет повторную проверку, запись попадает на диск.

Результат: изменение переживает перезагрузку, не оставляет записей в журнале ядра и обходит стандартные проверки метаданных. В демонстрации на свежей установке RHEL 10.2 эксплойт за считанные секунды снимает пароль с учётной записи root.

Почему защита не спасает

Уязвимость живёт на уровне распределения блоков файловой системы — ниже большинства привычных механизмов защиты. KASLR, SMEP, SMAP нацелены на память и здесь бесполезны. Kernel lockdown не ограничивает O_DIRECT и FICLONE для обычных пользователей. SELinux в режиме Enforcing путь не блокирует, seccomp пропускает write и ioctl, а изоляция контейнеров и user namespace работают на уровнях, которых сбой попросту не касается. По словам Qualys, надёжного обходного решения нет — помогает только обновление ядра и полная перезагрузка.

Затронуты все ядра с версии 4.11 (2017) без патча, использующие XFS с reflink=1. Это конфигурация по умолчанию в RHEL, Oracle Linux, Amazon Linux, Fedora Server и производных от RHEL. Debian, Ubuntu и SUSE уязвимы, только если администратор вручную выбрал XFS. По оценке Qualys, под угрозой более 16,4 млн систем. Исправленные ядра уже выпущены и переносятся в корпоративные дистрибутивы.

Роль искусственного интеллекта

Примечательно, как уязвимость была обнаружена. Qualys встроила модель Claude Mythos Preview от Anthropic в ручной аудит, поставив ей задачу искать состояние гонки в духе Dirty COW. После нескольких итераций уточнения запросов модель нашла гонку в XFS и сгенерировала работающий PoC. Дальше исследователи сами воспроизвели эксплойт и проверили каждое утверждение. Вывод авторов сдержанный: дело не в том, что ИИ способен писать эксплойты, а в том, что в паре с экспертным суждением он помогает защитникам находить серьёзные ошибки раньше злоумышленников.


Источник: Lobsters

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.