CVE-2026-26311

MEDIUM CVSS 3.1: 5,9 EPSS 0.08%
Обновлено 10 марта 2026
Envoy
Параметр Значение
CVSS 5,9 (MEDIUM)
Устранено в версии 1.37.1
Тип уязвимости CWE-416 (Использование памяти после освобождения)
Поставщик Envoy
Публичный эксплойт Нет

Envoy — это высокопроизводительный периферийный/средний/сервисный прокси. До версий 1.37.1, 1.36.5, 1.35.8 и 1.34.13 — логическая уязвимость в диспетчере HTTP-соединений Envoy (FilterManager), которая позволяет выполнять фильтр Zombie Stream Filter. Эта проблема создает окно «Использовать после освобождения» (UAF) или окно повреждения состояния, в котором обратные вызовы фильтра вызываются в потоке HTTP, который уже был логически сброшен и очищен.

Уязвимость находится в source/common/http/filter_manager.cc внутри метода FilterManager::decodeData. Объект ActiveStream остается действительным в памяти в течение окна отложенного удаления. Если кадр DATA поступает в этот поток сразу после сброса (например, в том же цикле обработки пакета), кодек HTTP/2 вызывает ActiveStream::decodeData, который каскадно передается в FilterManager::decodeData. FilterManager::decodeData не может проверить флаг Saw_downstream_reset_.

Он перебирает список decoder_filters_ и вызывает decodeData() для фильтров, которые уже получили onDestroy(). Эта уязвимость исправлена ​​в версиях 1.37.1, 1.36.5, 1.35.8 и 1.34.13.

Показать оригинальное описание (EN)

Envoy is a high-performance edge/middle/service proxy. Prior to 1.37.1, 1.36.5, 1.35.8, and 1.34.13, a logic vulnerability in Envoy's HTTP connection manager (FilterManager) that allows for Zombie Stream Filter Execution. This issue creates a "Use-After-Free" (UAF) or state-corruption window where filter callbacks are invoked on an HTTP stream that has already been logically reset and cleaned up. The vulnerability resides in source/common/http/filter_manager.cc within the FilterManager::decodeData method. The ActiveStream object remains valid in memory during the deferred deletion window. If a DATA frame arrives on this stream immediately after the reset (e.g., in the same packet processing cycle), the HTTP/2 codec invokes ActiveStream::decodeData, which cascades to FilterManager::decodeData. FilterManager::decodeData fails to check the saw_downstream_reset_ flag. It iterates over the decoder_filters_ list and invokes decodeData() on filters that have already received onDestroy(). This vulnerability is fixed in 1.37.1, 1.36.5, 1.35.8, and 1.34.13.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Высокая
Сложно эксплуатировать
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Нет
Нет утечки данных
Целостность
Нет
Нет модификации данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1