У підсистемі epoll ядра Linux виявлено вразливість CVE-2026-46242, що отримала назву Bad Epoll. Це помилка типу use-after-free, яка дає змогу локальному непривілейованому користувачу підвищити привілеї до root. Уражені ядра версії 6.4 і новіші — десктопи, сервери і, як повідомляється, Android. Доступний публічний proof-of-concept, однак ознак експлуатації в реальних атаках наразі немає. Вразливість не включена до каталогу CISA KEV. Патч уже випущено — адміністраторам слід застосувати його негайно.
Технічна суть вразливості
Epoll — стандартний механізм ядра Linux для мультиплексування вводу-виводу, який використовують вебсервери, мережеві сервіси та браузери. Вимкнути його неможливо, що унеможливлює обхідні шляхи.
За даними дослідника Jaeyoung Chung, який опублікував детальний технічний розбір, проблема полягає в тому, що два шляхи очищення в ядрі одночасно звертаються до одного й того самого внутрішнього об’єкта. Один шлях звільняє пам’ять, тоді як другий ще записує в неї дані. Це класична гонка (race condition), що призводить до пошкодження пам’яті ядра та можливості підвищення привілеїв.
Ключові технічні характеристики, описані дослідником:
- Тип вразливості: use-after-free у підсистемі epoll
- Вектор атаки: локальний, не потребує спеціальних привілеїв
- Вікно гонки: за оцінкою дослідника, близько шести машинних інструкцій
- Надійність експлойта: за даними Chung, сягає приблизно 99% на тестових системах завдяки техніці розширення вікна гонки та повторним спробам без падіння системи
- Уражені версії: ядра Linux, зібрані на базі 6.4 і новіші, без застосованого патча
- Неуражені версії: ядра на базі 6.1, оскільки вразливий код з’явився лише в 6.4
За твердженням дослідника, експлойт, ймовірно, може бути запущений із пісочниці рендерера Chrome, яка блокує більшість інших вразливостей ядра. Експлойт для Android, як повідомляється, перебуває в розробці. Обидві ці характеристики ґрунтуються на даних одного дослідника і не підтверджені незалежно.
Походження та зв’язок із дослідженнями ШІ
Обидві вразливості — CVE-2026-46242 (Bad Epoll) та пов’язана з нею CVE-2026-43074 — беруть початок з однієї зміни в коді epoll, внесеної у 2023 році. За даними Chung, першу з двох помилок (CVE-2026-43074) виявила модель Mythos від Anthropic, і виправлення для неї було випущено раніше у 2026 році. Anthropic повідомляла про виявлення вразливостей підвищення привілеїв у ядрі Linux за допомогою своїх моделей, хоча прямої публічної прив’язки до Bad Epoll компанія не робила.
Другу вразливість — власне Bad Epoll — ШІ не виявив. Chung припускає дві причини: вкрай вузьке вікно гонки, що ускладнює моделювання точної послідовності подій навіть під час аналізу коду, та відсутність явних сигналів у рантаймі — після виправлення першої помилки пошкодження пам’яті від Bad Epoll, як правило, не спрацьовує в KASAN (основному детекторі помилок ядра).
Цей випадок показовий: гонки залишаються одним із найскладніших класів помилок як для автоматизованого, так і для ручного аналізу.
Контекст: хвиля вразливостей ядра Linux у 2026 році
Bad Epoll продовжує серію вразливостей підвищення привілеїв у ядрі Linux, які використовуються для отримання root на Android: Bad Binder, Bad IO_uring, Bad Spin. Паралельно у 2026 році було розкрито інші серйозні вразливості ядра — CVE-2026-31431 (Copy Fail), а також ланцюжки Dirty Frag, Fragnesia, DirtyClone і pedit COW. Більшість із них — детерміновані помилки запису в сторінковий кеш, що не потребують виграшу гонки, що робить їх надійнішими в експлуатації.
Окремо варто згадати CVE-2026-31694 — вразливість у коді файлової системи FUSE ядра Linux, для якої також доступний публічний PoC. Локальний користувач з доступом до FUSE може підставити шкідливу файлову систему й спричинити пошкодження пам’яті. Ця вразливість становить ризик передусім для серверів і контейнерних середовищ, де доступ до FUSE через користувацькі простори імен є стандартною практикою.
Оцінка впливу
Найбільшому ризику піддаються:
- Сервери із багатокористувацьким доступом і ядрами 6.4+, де непривілейований користувач може отримати повний контроль
- Контейнерні середовища, у яких вихід із контейнера через вразливість ядра компрометує весь хост
- Android-пристрої на ядрах 6.4+ — хоча експлойт для Android ще в розробці, сам вектор атаки застосовний
- Робочі станції, де шкідливий код, запущений від імені звичайного користувача, може ескалувати привілеї
Наявність публічного PoC із заявленою високою надійністю підвищує ймовірність появи бойових експлойтів у найближчому майбутньому.
Рекомендації
- Застосувати патч. Встановіть апстрим-коміт a6dc643c6931 або дочекайтеся бекпорту від вашого дистрибутива. Це єдиний захід — обхідних шляхів немає, оскільки epoll неможливо вимкнути.
- Перевірити версію ядра. Уразливі ядра 6.4 і новіші без патча. Ядра на базі 6.1 не затронуті.
- Обмежити локальний доступ. До застосування патча мінімізуйте кількість користувачів з доступом до оболонки на критичних серверах.
- Моніторинг. Відстежуйте аномальні виклики epoll і спроби підвищення привілеїв. Враховуйте, що KASAN може не фіксувати цю помилку після патча CVE-2026-43074.
- Пріоритет: високий. Публічний PoC із високою заявленою надійністю, широка поверхня атаки, відсутність обхідних шляхів.
Вразливість Bad Epoll — це локальне підвищення привілеїв через гонку в фундаментальній підсистемі ядра, яку неможливо вимкнути. За наявності публічного PoC і заявленої надійності близько 99% єдина ефективна дія — негайне оновлення ядра до версії, що містить коміт a6dc643c6931. Організаціям, які використовують ядра 6.4+ на серверах, у контейнерах або на Android-пристроях, слід включити цей патч до найближчого циклу оновлень.