Новая Linux-уязвимость Bad Epoll позволяет получить root-права и затрагивает Android - «Новости»
- 14:30, 08-июл-2026
- Новости / Изображения / Заработок / Добавления стилей / Преимущества стилей / Отступы и поля / Вёрстка / Текст
- Parson
- 0
Опубликованы технические детали и PoC-эксплоит для уязвимости Bad Epoll, обнаруженной в ядре Linux. Проблема затрагивает десктопы, серверы и Android-устройства, позволяя непривилегированному локальному процессу повысить права до уровня root.
Уязвимость получила идентификатор CVE-2026-46242 (7,8 балла по шкале CVSS). Проблему нашел исследователь из Сеульского национального университета Чэ Ён Чон(Jaeyoung Chung), который сообщил о ней разработчикам через программу bug bounty Google kernelCTF. Также специалист подготовил рабочий эксплоит, который извлекает данные из памяти ядра, перехватывает поток исполнения через косвенный вызов и запускает ROP-цепочку, которая повышает привилегии до уровня root.
Чон объясняет, что баг представляет собой use-after-free в epoll, возникающий из-за состояния гонки при параллельном закрытии связанных дескрипторов. Epoll — штатный механизм Linux, который позволяет приложениям отслеживать готовность множества файловых дескрипторов к операциям ввода-вывода. Его активно используют серверные приложения, браузеры и сетевые сервисы.
Уязвимость возникает, когда один epoll-дескриптор следит за другим и оба закрываются параллельно. Один путь освобождает внутренний объект ядра, пока другой продолжает обращаться к нему, что приводит к use-after-free и записи в уже освобожденную память.
Отмечается, что эксплуатацию проблемы усложняло крайне узкое «окно» для состояния гонки, которое занимало лишь несколько машинных инструкций. Случайно попасть в него было практически невозможно, однако Чон сумел его расширить. В итоге на протестированных конфигурациях эксплоит срабатывал примерно в 99% случаев.
По словам исследователя, эксплуатировать Bad Epoll можно даже из песочницы рендерера Chrome, которая блокирует эксплуатацию большинства других проблем ядра.
Более того, уязвимость подтверждена в Pixel 10 с ядром Linux 6.6, хотя полноценный Android-эксплоит пока находится в разработке. При этом проблема не затрагивает устройства на старых ядрах 6.1, включая некоторые Pixel 8, так как проблемный код появился только в Linux 6.4.
Исходно баг Bad Epoll появился в ядре в 2023 году и был добавлен с тем же коммитом, который породил другую уязвимость, связанную с состоянием гонки, — CVE-2026-43074. Этот баг ранее обнаружила модель Anthropic Mythos. Предполагается, что ИИ пропустил «соседнюю» уязвимость из-за узкого «окна», пригодного для создания состояния гонки, и отсутствия явных сигналов во время выполнения: после выхода исправления CVE-2026-43074 новая проблема, как правило, не вызывает срабатывания KASAN.
Как отмечает Чон, исправить Bad Epoll удалось не сразу. Первый патч оказался неполным, а корректное исправление появилось только через два месяца после обнаружения проблемы. Подчеркивается, что обходных мер не существует: администраторам следует как можно скорее установить обновление для своего дистрибутива с бэкпортом патча или применить апстрим-коммит a6dc643c6931. Без установки патчей уязвимыми считаются версии ядра 6.4 и новее.
Отметим, что за последние месяцы исследователи раскрыли сразу несколько похожих проблем в Linux, включая Copy Fail, Dirty Frag, Fragnesia, DirtyClone и pedit COW. Однако, в отличие от детерминированных атак на страничный кеш, Bad Epoll требует выиграть в сложном состоянии гонки, и подобный класс проблем ранее эксплуатировался в нашумевшей уязвимости Dirty COW.














Комментарии (0)