STAR Labs превратила гонку в подсистеме traffic-control ядра Linux в root-эксплойт с помощью ИИ

· Безопасность
Исследователь Ли Цзя Цзе заявил, что искусственный интеллект помог ему найти уязвимость use-after-free (CVE-2026-53264) и ускорить разработку эксплойта, дающего локальному пользователю права root.

cover.svg

Компания STAR Labs опубликовала эксплойт для ядра Linux, который превращает обычного локального пользователя в root на сборке CentOS Stream 9. Уязвимость получила идентификатор CVE-2026-53264 (CVSS 7.8) и представляет собой состояние гонки типа use-after-free в подсистеме управления сетевым трафиком (traffic-control).

Исследователь Ли Цзя Цзе рассказал, что искусственный интеллект помог обнаружить ошибку, подготовить PoC на базе Kernel Address Sanitizer (KASAN) и оптимизировать окно гонки. При этом сам он подчёркивает, что у ИИ по-прежнему «много слепых зон и провалов в рассуждениях», а человеческое суждение оставалось необходимым на всех этапах. По его словам, из-за активного использования ИИ поиск даже новых багов ощущался как «анализ n-day».

Что именно уязвимо

Ошибка кроется в обработке жизненного цикла действий traffic-control. Параллельные операции RTM_NEWTFILTER и RTM_DELTFILTER могут привести к тому, что один поток читает объект действия уже после того, как другой поток его освободил. Официальный патч откладывает освобождение памяти до завершения работы всех читателей RCU.

Это локальное повышение привилегий, а не удалённое выполнение кода: атакующему сначала нужен доступ к машине. Демонстрационный эксплойт также требует непривилегированных user namespaces, опций ядра CONFIG_NET_ACT_GACT и CONFIG_NET_CLS_FLOWER и ROP-цепочки с жёстко зашитыми смещениями под конкретное ядро. Эксплойт создаёт собственные user- и network-namespace, получая локальный CAP_NET_ADMIN, добирается до уязвимого пути через qdisc clsact и фильтр flower, а затем перезаписывает core_pattern, чтобы запустить свою копию из memfd как обработчик core-dump с правами root.

Масштаб риска и патчи

По словам автора, эксплойт сработал во всех 10 запусках, занимая от 9 до 111 секунд на ноутбуке с CentOS Stream 9, — но эти цифры независимо не воспроизводились. Из-за фиксированных смещений код нужно пересобирать под другие сборки ядра, и на новых версиях он может не работать.

Исправление попало в upstream 1 июня 2026 года и было портировано в стабильные ветки: 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36 и 7.0.13; в mainline — в 7.1-rc7. Уязвимыми числятся версии начиная с Linux 4.14. Статус в дистрибутивах на 28 июля неоднородный: Debian уже выпустил исправленные ядра, Ubuntu всё ещё помечает ряд пакетов уязвимыми, а SUSE держит вопрос в статусе pending и оценивает риск в 5.5 балла. В каталоге CISA KEV записи о CVE нет, случаев эксплуатации в реальных атаках не зафиксировано.

Upstream-патч приписан Кайлу Ценгу (KyleBot), сообщившему о баге незадолго до соревнования TyphoonPwn 2026. Ли утверждает, что нашёл ту же ошибку независимо и позднее опубликовал технический разбор и код эксплойта. Пользователям советуют ставить исправленное ядро от своего дистрибутива, а не ориентироваться лишь на upstream-номер версии.


Источник: The Hacker News

Комментарии

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

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