В ядре Linux обнаружена уязвимость Bad Epoll с идентификатором CVE-2026-46242. Проблема позволяет непривилегированному локальному процессу получить root-доступ и затрагивает серверы, десктопы и некоторые Android-устройства на ядрах Linux 6.4 и новее.
Что произошло
Опубликованы технические детали и рабочий PoC-эксплоит для уязвимости Bad Epoll в ядре Linux. Проблема получила идентификатор CVE-2026-46242 и оценку 7,8 балла по CVSS.
Уязвимость опасна тем, что позволяет локальному процессу без привилегий повысить права до уровня root. Это делает ее актуальной не только для серверов, но и для рабочих станций, контейнерных окружений и Android-устройств, где используется затронутый код ядра.
В чем суть проблемы
Bad Epoll связан с механизмом epoll — штатным способом Linux отслеживать готовность множества файловых дескрипторов к операциям ввода-вывода. Его используют серверные приложения, браузеры и сетевые сервисы.
По опубликованному описанию, ошибка представляет собой use-after-free в epoll. Сбой возникает из-за состояния гонки при параллельном закрытии связанных дескрипторов: один путь освобождает внутренний объект ядра, а другой продолжает обращаться к уже освобожденной памяти.
Именно этот сценарий позволяет атакующему перейти от локального доступа к выполнению кода с правами root.
Почему уязвимость считается опасной
Исследователь из Сеульского национального университета Чэ Ён Чон (Jaeyoung Chung) сообщил о проблеме через программу Google kernelCTF и подготовил рабочий эксплоит. По опубликованным сведениям, эксплоит умеет извлекать данные из памяти ядра, перехватывать поток исполнения через косвенный вызов и запускать ROP-цепочку для повышения привилегий.
Отдельно отмечается, что эксплуатация была сложной из-за очень узкого окна состояния гонки — буквально в несколько машинных инструкций. По словам исследователя, ему удалось расширить это окно, и на протестированных конфигурациях эксплоит срабатывал примерно в 99% случаев.
Что это означает для серверов и VPS
Для владельцев сайтов и администраторов VPS такая уязвимость означает, что компрометация одного локального процесса может привести к захвату всей системы. Особенно это важно для сред, где на одном хосте запускаются несколько сервисов, пользовательские контейнеры или приложения с разным уровнем доверия.
Если уязвимое ядро используется на VPS или выделенном сервере, риск повышается даже при отсутствии удаленного входа: атакующему достаточно получить локальное выполнение кода любым доступным способом, а затем использовать Bad Epoll для эскалации привилегий.
Какие версии затронуты
Сообщается, что проблема подтверждена на Pixel 10 с ядром Linux 6.6. При этом старые ядра 6.1 уязвимость не затрагивает, поскольку проблемный код появился только в Linux 6.4.
Без установки патчей уязвимыми считаются версии ядра 6.4 и новее.
Исправление и рекомендации
По данным исследователя, корректное исправление появилось не сразу: первый патч оказался неполным, а окончательная версия была подготовлена только через два месяца после обнаружения проблемы.
Обходных мер для Bad Epoll не сообщается. Администраторам рекомендуется как можно скорее:
- установить обновления своего дистрибутива с бэкпортом исправления;
- либо применить апстрим-коммит a6dc643c6931;
- проверить, не используется ли уязвимое ядро 6.4+ на серверах, VPS и Android-устройствах.
Для инфраструктур с большим числом Linux-хостов это очередной повод ускорить управление патчами: уязвимости в ядре часто дают атакующему максимальные привилегии уже после одной успешной локальной компрометации.
Контекст
Bad Epoll — не единственная проблема такого рода, которую недавно раскрывали исследователи. В Linux уже публиковались похожие уязвимости, включая Copy Fail, Dirty Frag, Fragnesia, DirtyClone и pedit COW. Однако в случае Bad Epoll речь идет именно о гонке в epoll и повышении прав до root, поэтому откладывать обновление не стоит.

