23.10.2026 — CVE-2026-99999 PwnEscape — выход из гостевой ВМ в ядро хоста Linux через подсистему контрольных сумм IPv4 {#CVE-2026-99999}

Идентификатор CVE (CVE ID): CVE-2026-99999.

Ссылка на CVE: <https://nvd.nist.gov/vuln/detail/CVE-2026-99999>.

Исходный отчет {#original-report-CVE-2026-99999}

Отчет PWN.AI о PwnEscape.

Краткое описание {#brief-description-CVE-2026-99999}

PwnEscape (CVE-2026-99999) — уязвимость в сетевой подсистеме IPv4 ядра Linux, позволяющая недоверенному отправителю пакета с метаданными отложенной контрольной суммы (csumstart, csumoffset) изменить уже разобранный IPv4-заголовок в памяти ядра. Основной сценарий — гостевая виртуальная машина, передающая пакеты хосту KVM через virtio-net. В этом случае уязвимость позволяет раскрыть память ядра хоста и, при развитии атаки, записать данные в память хоста и выполнить код с правами хоста.

Механика уязвимости:

  • Ядро разбирает IPv4-заголовок и принимает решения по пакету до проверки метаданных контрольной суммы.
  • Отложенное вычисление контрольной суммы в skbchecksumhelp() выполняется позже и записывает результат по смещению csum_start, заданному отправителем, — в том числе внутрь уже разобранного IPv4-заголовка.
  • Так отправитель меняет поле IHL заголовка, из-за чего фрагментация (ipdofragment()) интерпретирует память ядра за заголовком как IPv4-опции и копирует ее в исходящий пакет.

Уязвимость находится в сетевом стеке ядра, а не в коде KVM, и не зависит от аппаратной платформы.

Затронутые технологии {#technologies-affected-CVE-2026-99999}

Уязвимость затрагивает следующие технологии:

Ядро Linux, сетевой стек IPv4: skbchecksumhelp() и пути завершения контрольной суммы (ipoutput, xfrm, nfnetlinkqueue, xtCHECKSUM, nfconntrack_bridge). Пути ввода пакетов с метаданными контрольной суммы от недоверенного отправителя: tun/tap с заголовком virtionethdr (гостевые ВМ на KVM/QEMU, vhost-net) и сокеты AFPACKET с включенным PACKETVNET_HDR.

Уязвимые продукты и версии {#vulnerable-products-and-versions-CVE-2026-99999}

Уязвимый код присутствует в ядре Linux начиная с версии 2.6.27 (2008 год, появление поддержки virtionethdr в драйвере tun) во всех ветках до версий с исправлением. Они приведены в разделе Безопасная версия уязвимого продукта или патч.

Исправления для дистрибутивов на момент публикации:

  • Debian bookworm (linux) — 6.1.190-1 (DLA-4841-1); bookworm (linux-6.12) — 6.12.113-1~deb12u1 (DLA-4850-1); trixie (linux) — 6.12.113-1 (DSA-6568-1).
  • Red Hat Enterprise Linux 9 — kernel-5.14.0-687.59.1.el98 (RHSA-2026:86033); Red Hat Enterprise Linux 10 — kernel-6.12.0-211.67.1.el102 (RHSA-2026:85321). Для Red Hat Enterprise Linux 8 (kernel, kernel-rt) и kernel-rt в Red Hat Enterprise Linux 9 исправление на момент публикации не выпущено. AlmaLinux 9 — kernel-5.14.0-687.59.1.el98 (ALSA-2026:86033); AlmaLinux 10 — kernel-6.12.0-211.67.1.el102 (ALSA-2026:85321). Для AlmaLinux 8 исправление на момент публикации не выпущено.

    Разработчик {#vendor-CVE-2026-99999}

    Сообщество разработчиков ядра Linux (mainline). Исправляющий коммит подготовлен Michael S. Tsirkin (Red Hat).

    Вектор атаки и уровень опасности согласно CVSS v.3.1 {#attack-vector-and-severity-level-CVE-2026-99999}

    Базовая оценка: 9,3 CRITICAL.

    Вектор атаки:

    <code>CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H</code>

    Рекомендации по обнаружению уязвимости и дополнительные материалы {#recommendations-for-vulnerability-detection-CVE-2026-99999}

    Рекомендации актуальны для пользователей, которые самостоятельно администрируют хосты Linux с недоверенными нагрузками: KVM-гипервизоры на выделенных хостах BareMetal или во вложенной виртуализации, собственные CI/sandbox-платформы, узлы с контейнерами, имеющими CAP\NET\RAW.

    Проверьте версию ядра на таких хостах:

    <code>$ uname -r</code>

    Сравните с безопасными версиями стабильных веток ядра или с версией пакета вашего дистрибутива из раздела «Безопасная версия уязвимого продукта или патч». Ядро младше указанных версий уязвимо.

    Единственная подтвержденная мера — обновление ядра. Конфигурационных митигаций, закрывающих уязвимость, не опубликовано: отключение checksum offload на стороне хоста не помогает, поскольку драйвер tun принимает метаданные контрольной суммы от гостя независимо от согласованных возможностей virtio-net. До обновления ядра не размещайте недоверенные гостевые ВМ и недоверенные контейнеры с CAP\NET\RAW на непропатченных хостах.

    Дополнительные материалы:

    • технический разбор механики эксплуатации: <https://pwn.ai/blog/pwnescape>;
    • исправляющий коммит в дереве ядра: <https://git.kernel.org/stable/c/6785011f8b16>;
    • объявление CVE в рассылке oss-security: <https://www.openwall.com/lists/oss-security/2026/10/15/5>.

    Безопасная версия уязвимого продукта или патч {#safe-version-CVE-2026-99999}

    Уязвимость устранена апстрим-коммитом 6785011f8b16 («ipv4: validate checksum_start before completing checksum»), влитым в mainline 14.10.2026, и в стабильных версиях ядра Linux 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.57 и 7.2.11.

    Версии пакетов дистрибутивов — в разделе «Уязвимые продукты и версии» и в advisory соответствующего дистрибутива.

    Хронология раскрытия {#disclosure-timeline-CVE-2026-99999}

    Хронология раскрытия уязвимости:

    • 20.08.2026 — первичный отчет направлен в рамках программы Vercel Sandbox Challenge.
    • 04.09.2026 — отчет с кандидатами на патч направлен контактным лицам команды безопасности ядра Linux.
    • 19–22.09.2026 — публичное обсуждение патчей в рассылке netdev.
    • 08.10.2026 — исправление принято в дерево net.git.
    • 14.10.2026 — исправление включено в mainline.
    • 15.10.2026 — опубликован идентификатор CVE-2026-99999 и запись в NVD.

    Влияние на сервисы Yandex Cloud {#impact-on-yandex-cloud-services-CVE-2026-99999}

    Сервисы Yandex Cloud обновляются для предотвращения возможности эксплуатации уязвимости. Сервисы Yandex Compute Cloud и Yandex Virtual Private Cloud не подвержены уязвимости.

    Уязвимость не затрагивает конфиденциальность или целостность пользовательских данных.

    Пользовательские сервисы, самостоятельно развернутые на выделенных хостах BareMetal, требуют проверки со стороны владельцев этих сервисов.