CVE-2026-94083 в Debian: DoH2 type confusion, уязвимые версии Suricata и проверка исправления

CVE: CVE-2026-94083
Продукт: Debian
Дата публикации: 20.09.2026
Критичность: CRITICAL
CVSS: 9.4 (3.1)
EPSS: 0,40%; процентиль 34,11%
CISA KEV: нет подтверждения в каталоге CISA KEV

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


В Debian CVE-2026-94083 затрагивает пакет suricata до версии 1:8.0.7-1. Ошибка возникает при обработке запросов DoH2 с переходом от HTTP/1 к HTTP/2 и приводит к некорректному освобождению памяти из-за выполнения cleanup-кода для состояния HTTP/2, когда фактическое состояние HTTP/1. В Debian Security Tracker отмечены релизы forky и sid как resolved, а trixie остаётся open с текущей версией 1:7.0.10-1+deb13u4.

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


Риск связан с некорректным освобождением памяти в Suricata при обработке определённых запросов DoH2, что может привести к нарушению целостности и доступности процесса. Ошибка относится к классу CWE-843 и имеет высокий уровень критичности по CVSS 3.1.

  • Тип ошибки: CWE-843 — некорректное освобождение памяти (invalid free)
  • CVSS-вектор: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L
  • Оценка CVSS: 9,4, CRITICAL
  • Условие активации: включённый протокол DoH2 в Suricata 8.x (по умолчанию)
  • Факт эксплуатации: не подтверждён доступными источниками
  • EPSS: 0,40% (процентиль 34,11%)

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


В Debian затронут пакет suricata.

  • forky: версия до 1:8.0.7-1 уязвима; статус resolved, исправленная версия 1:8.0.7-1
  • sid: версия до 1:8.0.7-1 уязвима; статус resolved, исправленная версия 1:8.0.7-1
  • trixie: версия 1:7.0.10-1+deb13u4; статус open, исправленная версия не указана в Debian Security Tracker

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


В Suricata до 8.0.7 при обработке запроса DoH2 с переходом от HTTP/1 к HTTP/2 выполняется cleanup-код для состояния HTTP/2, хотя фактическое состояние соединения остаётся HTTP/1.

Это приводит к некорректному освобождению памяти: код пытается освободить объект, который был выделен в контексте другого протокольного состояния. Ошибка относится к классу CWE-843 и проявляется при включённом протоколе DoH2, что является значением по умолчанию в версиях Suricata 8.x.

Нарушение касается логики управления состоянием HTTP/1 и HTTP/2 в обработке DNS-over-HTTPS запросов. Cleanup-функция вызывается независимо от фактического состояния соединения, что приводит к invalid free.

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


Атака реализуется через отправку специально сформированного DoH2 запроса с переходом от HTTP/1 к HTTP/2.

При обработке такого запроса Suricata до 8.0.7 выполняет cleanup-код для состояния HTTP/2, хотя соединение находится в состоянии HTTP/1. Это вызывает некорректное освобождение памяти и может привести к повреждению данных или падению процесса.

Для успешной атаки необходимо:

  • Suricata версии до 8.0.7 с включённым протоколом DoH2
  • Возможность отправить запрос с переходом HTTP/1 к HTTP/2 в контексте DoH2
  • Отсутствие дополнительных проверок состояния соединения перед вызовом cleanup-кода

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


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

  • Установлена уязвимая версия Suricata до 8.0.7
  • Протокол DoH2 включён в конфигурации Suricata (по умолчанию в 8.x)
  • Возможность отправить запрос с переходом HTTP/1 к HTTP/2 в контексте DoH2
  • Отсутствие внешних фильтров или WAF, блокирующих такие запросы

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


Атакующий отправляет DoH2 запрос с явным переходом от HTTP/1 к HTTP/2.

Suricata до 8.0.7 обрабатывает запрос и выполняет cleanup-код для состояния HTTP/2, хотя фактическое состояние соединения HTTP/1. Это приводит к некорректному освобождению памяти.

Повторное выполнение такой операции может привести к повреждению данных или падению процесса Suricata. Если процесс является частью критической инфраструктуры (например, DNS-фильтрации), это может повлиять на доступность сервиса.

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


Доступные источники не содержат информации о публичном эксплойте для CVE-2026-94083.

Отсутствуют:

  • Подтверждённые PoC с рабочим кодом
  • Описание технической реализации атаки
  • Факты эксплуатации в реальных атаках

Это не означает отсутствие эксплойта. Отсутствие сведений может быть связано с тем, что информация ещё не опубликована или не подтверждена официальными источниками.

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


Специфичных индикаторов компрометации для CVE-2026-94083 в доступных источниках не указано.

Неспецифичные точки контроля:

  • Внезапное падение процесса Suricata
  • Рост количества ошибок в логах Suricata при обработке DoH2 запросов
  • Аномальные паттерны в сетевом трафике с переходом HTTP/1 к HTTP/2 в контексте DNS-over-HTTPS

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


Для обнаружения атаки можно использовать:

  • Мониторинг логов Suricata на наличие ошибок при обработке DoH2 запросов
  • Анализ сетевых записей на паттерны перехода HTTP/1 к HTTP/2 в контексте DNS-over-HTTPS
  • Проверку стабильности процесса Suricata и количество restart'ов
  • Сравнение версий установленного пакета suricata с известными уязвимыми версиями

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


Проверка версии Debian:

Bash:
cat /etc/debian_version
cat /etc/os-release

Проверка версии пакета suricata:

Bash:
apt-cache policy suricata
dpkg-query -W -f='${Package} ${Version}\n' suricata

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


Для исправления CVE-2026-94083 в Debian необходимо обновить пакет suricata до версии 1:8.0.7-1.

Команды обновления:

Bash:
apt update
apt upgrade suricata

После обновления проверьте версию пакета и убедитесь, что установлен 1:8.0.7-1 или выше.

Для trixie статус open, исправленная версия не указана. Необходимо отслеживать Debian Security Tracker на наличие обновлений.

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


Временные меры до обновления:

  • Отключить протокол DoH2 в конфигурации Suricata, если это возможно без нарушения бизнес-логики
  • Ограничить доступ к порту Suricata только для доверенных источников трафика
  • Мониторинг логов Suricata на наличие аномалий при обработке DoH2 запросов
  • Проверка отсутствия уязвимых версий suricata в системе

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


После обновления необходимо:

  1. Проверить версию пакета suricata:

Bash:
dpkg-query -W -f='${Package} ${Version}\n' suricata

  • Убедиться, что установлена версия 1:8.0.7-1 или выше
  • Перезапустить сервис Suricata:

Bash:
systemctl restart suricata

  • Проверить логи на наличие ошибок после перезапуска

Вывод​


CVE-2026-94083 представляет высокий риск для систем с установленным Suricata до 8.0.7 и включённым протоколом DoH2. Ошибка приводит к некорректному освобождению памяти при обработке запросов с переходом HTTP/1 к HTTP/2.

В Debian статус resolved для forky и sid, а trixie остаётся open. Рекомендуется обновить пакет suricata до 1:8.0.7-1 или выше и проверить стабильность сервиса после обновления.

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


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

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


  • 22.09.2026 — Опубликована первая версия материала.
 
Назад
Верх Низ