CVE-2026-26311 json
Envoy HTTP: filter chain execution on reset streams causing UAF crash
published 2026-03-10 8 mo ago modified 2026-09-08 2 mo ago also BIT-envoy-2026-26311 , EUVD-2026-10804 , GHSA-84xm-r438-86px
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 33%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- bitnami envoy 1.34.13, 1.35.9, 1.36.5, 1.37.1
- envoyproxy envoy 1.34.13, 1.35.9, 1.36.5, 1.37.1
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 8 mo ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 33% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/envoyproxy/envoy/security/advisories/GHSA-84xm-r438-86px referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| OSV | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/envoyproxy/envoy | 1 listed version >=1.36.0, <=1.36.4 >=1.35.0, <=1.35.8 <=1.34.12 |
no fix listed |
| bitnami | envoy | <1.34.13 >=1.35.0, <1.35.9 >=1.36.0, <1.36.5 >=1.37.0, <1.37.1 |
1.34.13 1.35.9 1.36.5 1.37.1 |
Affected products
- envoyproxy envoy
Classification
- Weakness
-
- CWE-416 Use After Free
References
-
github.com
/envoyproxy/envoy/security/advisories/GHSA-84xm-r438-86px
web, exploit, mitigation, vendor-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-26311
advisory, web
-
github.com
/envoyproxy/envoy
package
Sources
- CVE List CVE-2026-26311
- GitHub Advisory GHSA-84xm-r438-86px
- NVD CVE-2026-26311
- OSV BIT-envoy-2026-26311
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.