CVE-2026-74669 в Debian: критическая ошибка в ядре, уязвимые версии и защита

CVE: CVE-2026-74669
Продукт: Debian
Дата публикации: 22.08.2026
Критичность: CRITICAL
CVSS: 9.8 (3.1)
EPSS: 0,51%; процентиль 41,58%
CISA KEV: нет подтверждения в каталоге CISA KEV

Краткое описание​


В ядре Linux обнаружена критическая уязвимость в модуле IPVS, позволяющая нарушителю из сети вызвать выход за границы буфера в стеке. Ошибка затрагивает несколько версий Debian, включая стабильные релизы, для которых исправление ещё не выпущено. Статья описывает механику атаки, статус патчей и способы проверки систем.

Основные характеристики​


Уязвимость позволяет удалённому атакующему без прав доступа вызвать повреждение памяти в стеке ядра, что может привести к выполнению кода или отказу в обслуживании. Риск высокий, так как атака не требует взаимодействия с пользователем и может быть проведена из внешней сети.

  • Тип ошибки: Выход за границы буфера в стеке (Stack Out-of-Bounds Write) в функции __ip_options_echo().
  • CVSS 3.1: 9.8 (CRITICAL). Вектор: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
  • Условия атаки: Сетевой доступ, отсутствие необходимости в аутентификации, низкая сложность.
  • Эксплуатация: Публичные эксплойты или подтверждённые атаки в дикой природе не зафиксированы.
  • EPSS: 0,51% (процентиль 41,58%). Вероятность эксплуатации в ближайшие 30 дней оценивается как низкая.

Какие продукты и версии затронуты​


Уязвимость затрагивает пакет linux в дистрибутиве Debian. Статус исправления различается для разных релизов.

  • Debian 12 (bookworm): Статус open. Исправление отсутствует. Текущая версия в репозитории bookworm-security: 6.1.180-1.
  • Debian 11 (bullseye): Статус open. Исправление отсутствует. Текущая версия в репозитории bullseye-security: 5.10.262-1.
  • Debian 14 (forky): Статус open. Исправление отсутствует. Текущая версия: 7.1.8-2.
  • Debian 13 (trixie): Статус resolved. Исправлено в версии 6.12.105-1. Текущая версия в trixie-security: 6.12.107-1.
  • Debian Unstable (sid): Статус resolved. Исправлено в версии 7.1.9-1. Текущая версия: 7.1.12-1.

Причина уязвимости​


Причина ошибки кроется в функции ip_vs_in_icmp(), которая обрабатывает ICMP-сообщения для туннелированных пакетов. Функция перенаправляет указатель на исходный запрос, но не сбрасывает метаданные IPv4-опций, хранящиеся в IPCB(skb)->opt.

Эти метаданные по-прежнему описывают внешний IPv4-заголовок. Если в нём присутствует опция timestamp, смещение может указывать на область, которая после перенаправления попадает в транспортный заголовок. Функция __ip_options_echo() интерпретирует байт по этому устаревшему смещению как длину опции и копирует данные в фиксированное хранилище в стеке, вызывая выход за границы буфера.

Как работает атака​


Атакующий отправляет специально сформированный ICMP-пакет, который проходит через модуль IPVS. В пакете присутствует внешний IPv4-заголовок с опцией timestamp.

При обработке ip_vs_in_icmp() ядро переключает контекст на внутренний пакет, но сохраняет указатели на опции внешнего заголовка. При попытке эха опций __ip_options_echo() обращается к памяти по устаревшему смещению, которое теперь указывает на данные транспортного протокола. Это приводит к записи данных за пределы выделенного стекового буфера в функции __icmp_send().

Условия успешной эксплуатации​


Для успешной эксплуатации уязвимости атакующему необходимо:

  • Иметь сетевой доступ к узлу, где активен модуль IPVS.
  • Успешно доставить ICMP-пакет, проходящий через логику туннелирования IPVS.
  • Сформировать пакет с внешним IPv4-заголовком, содержащим опцию timestamp, которая приведёт к некорректному смещению при обработке.

Возможный сценарий атаки​


Сценарий атаки предполагает, что нарушитель из внешней сети направляет на сервер с настроенным балансировщиком нагрузки (IPVS) ICMP-сообщение. Пакет содержит внешний IPv4-заголовок с опцией timestamp.

Ядро обрабатывает ICMP-ошибку, перенаправляет указатель на внутренний пакет, но не очищает метаданные опций. При попытке отправки ответа ядро обращается к памяти по некорректному смещению, что приводит к выходу за границы стека. Это может вызвать сбой ядра (panic) или, при удачном стечении обстоятельств, выполнение произвольного кода с привилегиями ядра.

Есть ли публичный эксплойт​


На момент публикации статьи публичные эксплойты, PoC или подтверждённые случаи эксплуатации в реальных атаках не зафиксированы. Ссылки в NVD ведут на коммиты с исправлением в ядре Linux, но не содержат готовых инструментов для атаки. Отсутствие сведений об эксплуатации не гарантирует, что эксплойты не существуют, но текущая вероятность атаки оценивается как низкая.

Признаки эксплуатации​


Специфичные индикаторы компрометации (IOC) для этой уязвимости не опубликованы. Общие точки контроля, которые могут указывать на попытку атаки, включают:

  • Аномальные ICMP-пакеты с нестандартными опциями IPv4, направленные на узлы с IPVS.
  • Логи ядра с сообщениями о выходе за границы буфера (out-of-bounds) в стеке, если включён stack protector или KASAN.
  • Внезапные сбои ядра (kernel panic) или перезагрузки системы без видимых причин.

Как обнаружить атаку​


Для обнаружения попыток эксплуатации рекомендуется:

  • Мониторинг сетевого трафика на предмет ICMP-пакетов с опциями timestamp, направленных на узлы с IPVS.
  • Анализ логов ядра (dmesg, journalctl) на наличие сообщений об ошибках памяти, связанных с функциями ip_vs_in_icmp или __ip_options_echo.
  • Использование систем обнаружения вторжений (IDS/IPS) с правилами для аномального ICMP-трафика.

Как проверить свою версию​


Для проверки версии ядра и пакета linux в Debian используйте следующие команды:

Bash:
cat /etc/debian_version
cat /etc/os-release
apt-cache policy linux
dpkg-query -W -f='${Package} ${Version}\n' linux

Замените <имя-пакета> на linux в командах apt-cache и dpkg-query, если вы проверяете именно этот пакет. Сравните полученную версию с версиями, указанными в разделе «Какие продукты и версии затронуты».

Исправление​


Основной способ устранения уязвимости — обновление пакета linux до исправленной версии.

  • Debian 13 (trixie): Обновитесь до версии 6.12.105-1 или выше.
  • Debian Unstable (sid): Обновитесь до версии 7.1.9-1 или выше.
  • Debian 12 (bookworm), 11 (bullseye), 14 (forky): Исправление ещё не выпущено. Рекомендуется следить за обновлениями в Debian Security Tracker и применять патч, как только он станет доступен.

Для систем, где обновление невозможно, рассмотрите временные меры защиты, описанные ниже.

Временные меры защиты​


Пока исправление не выпущено для всех версий Debian, можно применить следующие временные меры:

  • Отключить модуль IPVS, если он не используется: modprobe -r ip_vs.
  • Ограничить доступ к узлу с IPVS на уровне файрвола, разрешая ICMP-трафик только от доверенных сетей.
  • Использовать сетевые экраны для фильтрации ICMP-пакетов с нестандартными опциями IPv4.
  • Включить KASLR и stack protector для повышения сложности эксплуатации.

Как проверить устранение уязвимости​


После обновления пакета linux проверьте, что уязвимость устранена:

  1. Убедитесь, что версия ядра соответствует исправленной: uname -r.
  2. Проверьте, что пакет linux обновлён: dpkg-query -W -f='${Package} ${Version}\n' linux.
  3. Перезагрузите систему, чтобы загрузить новое ядро, если это требуется.
  4. Проверьте логи ядра на наличие ошибок после перезагрузки: dmesg | grep -i error.

Вывод​


CVE-2026-74669 представляет собой критическую уязвимость в ядре Linux, затрагивающую модуль IPVS. Она позволяет удалённому атакующему вызвать выход за границы буфера в стеке, что может привести к выполнению кода или отказу в обслуживании.

Для версий Debian, где исправление уже выпущено (trixie, sid), необходимо срочно обновить пакет linux. Для остальных версий (bookworm, bullseye, forky) рекомендуется отключить IPVS или ограничить ICMP-трафик до выхода официального патча.

Регулярно проверяйте статус уязвимости в Debian Security Tracker.

Официальные источники​


  1. NVD — CVE-2026-74669
  2. Debian Security Tracker — CVE-2026-74669
  3. FIRST EPSS — CVE-2026-74669

История обновлений статьи​


  • 26.08.2026 — Опубликована первая версия материала.
  • 30.08.2026 — Уточнены сведения об уязвимых версиях, оценке риска или исправлении.
 
Последнее редактирование:
Назад
Верх Низ