Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend routine traffic to auto_config+HTTP/3 Envoy
-
ExploitRequest routed via options-less LB context (mirror/health-check/async)
-
ExecutionallocateConnPool dereferences null transport_socket_options
-
ImpactEnvoy worker process crashes (DoS)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an Envoy upstream cluster configured with auto_config protocol selection and HTTP/3 enabled (ALPN-based automatic protocol negotiation), so that HTTP/3 is in the protocol set when a connection pool is allocated. The crash only occurs on code paths where the LoadBalancerContext returns no transport-socket options - specifically synthetic, mirror, health-check, and async-client (internal) requests. Deployments not using auto_config with an HTTP/3 upstream, or that never route through these options-less contexts, are not exposed. No authentication, user interaction, or non-standard client behavior is needed once the affected configuration is present; impact is limited to worker-process availability (crash), with no confidentiality or integrity effect. |
| Impact | This is a moderate-severity availability-only issue (CVSS 5.9, A:H, C:N/I:N) whose real-world priority is tempered by two independent gating factors reflected in the AC:H metric. The CVSS vector correctly captures the profile: AV:N (traffic-triggered), PR:N/UI:N (no auth or interaction needed once conditions are met), but AC:H because the vulnerable branch in ProdClusterManagerFactory::allocateConnPool requires HTTP/3 in the upstream protocol set AND a LoadBalancerContext that supplies no transport-socket options (synthetic, mirror, health-check, or async-client calls). No EPSS score, no CISA KEV listing, and no public exploit are present in the provided data - consistent with a recently disclosed, patch-alongside-advisory OSS fix. The impact is a single Envoy worker crash (process termination / DoS), not code execution or data exposure. Signals are aligned rather than conflicting: high-severity CVSS is offset by the non-default configuration requirement (auto_config + HTTP/3 upstream) and DoS-only impact, so this is a real-but-conditional availability risk, not a drop-everything issue. There is no signal contradiction to flag; the vector and description agree that it is network-triggerable but configuration-gated. |
| Exploit ScenarioDerived | An Envoy deployment configured with auto_config protocol selection and an HTTP/3-capable upstream receives routine traffic that is routed through a synthetic, mirror, health-check, or async-client path - none of which supply transport-socket options. When Envoy allocates the HTTP/3 connection pool it dereferences the null transport_socket_options pointer, crashing the worker and interrupting proxied traffic. No public exploit code was identified at time of analysis, and no authentication or user interaction is required once the affected configuration and code path are in play. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 21, 2026
Envoy Proxy worker processes can be crashed remotely by routine traffic when an upstream cluster is configured with ALPN-based auto protocol selection and HTTP/3 enabled, because ProdClusterManagerFactory::allocateConnPool dereferences transport-socket options without a null check when selecting an HTTP/3 connection pool. The affected code paths are those where the LoadBalancerContext supplies no transport-socket options - synthetic, mirror, health-check and async-client (internal) requests - so any HTTP/3-enabled auto_config deployment that routes through one of these contexts is exposed to a repeatable availability loss; no authentication, user interaction, or unusual client behavior is required (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H, 5.9, CWE-476). The issue is not reported as actively exploited and no public exploit code has been identified at time of analysis, and the practical impact is gated by the requirement for the specific auto_config-plus-HTTP/3 upstream configuration. Vendor fixes ship in Envoy 1.36.10, 1.37.6, 1.38.4 and 1.39.1.
RemediationAI
Vendor-released patch: upgrade to Envoy 1.36.10, 1.37.6, 1.38.4 or 1.39.1 (matching your release branch), per the advisory at https://github.com/envoyproxy/envoy/security/advisories/GHSA-5vff-j9p4-38j3 and the release pages https://github.com/envoyproxy/envoy/releases/tag/v1.36.10, v1.37.6, v1.38.4 and v1.39.1; the underlying fix is visible in commits 8ef2da8527fcd17388b046c1add4fb47fb5d0868 and cec4899acf03cf551f28611a5f32385648d95f96, which add the missing null check on transport_socket_options in ProdClusterManagerFactory::allocateConnPool. If immediate upgrade is not possible, the effective compensating control is to remove the vulnerable branch from reach: replace upstream auto_config protocol options that include http3_protocol_options with explicit HTTP/1.1 or HTTP/2 protocol options (or disable the upstream.use_http3 runtime flag / HTTP/3 upstream transport), at the cost of losing ALPN-based automatic protocol negotiation and HTTP/3 upstream benefits; note this is a configuration change to every affected upstream cluster and must be applied consistently or the crash remains reachable on the untouched clusters. Because the trigger is a worker-process crash that can be re-triggered by similar traffic rather than a one-off, run Envoy under process supervision with worker restart and alert on abnormal termination as a containment measure, accepting that repeated crashes still degrade availability until the patch is applied.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is a null pointer dereference (CWE-476) in Envoy's cluster manager. In ProdClusterManagerFactory::allocateConnPool (source/common/upstream/cluster_manager_impl.cc), the code that decides whether the new connection pool must handle HTTP/1.1 proxy information read !transport_socket_options->http11ProxyInfo() without first verifying that transport_socket_options was non-null. Certain LoadBalancerContext implementations - the synthetic, mirror, health-check and async-client call sites - legitimately return no transport-socket options, so when the cluster is set up with upstream protocol auto_config (ALPN-based negotiation) and HTTP/3 is part of the negotiated protocol set (QUIC upstream transport, runtime flag upstream.use_http3), the HTTP/3 branch is taken with a null pointer and dereferences it, aborting the worker. The upstream fix narrows the condition to (!transport_socket_options || !transport_socket_options->http11ProxyInfo()), and the accompanying integration test (test/integration/allocate_conn_pool_integration_test.cc) reproduces the crash by driving an async client against an HTTP/3 upstream configured through auto_config with QUIC transport sockets. The CPE entry cpe:2.3:a:envoyproxy:envoy:*:*:*:*:*:*:*:* indicates that all Envoy releases before the fixed versions are in scope, and HTTP/3 support must be compiled in and enabled for the vulnerable branch to be reachable.
Know when Envoy gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Network-triggerable with no auth (AV:N/PR:N/UI:N) but AC:H due to required non-default auto_config+HTTP/3 config and an options-less LB context; DoS-only so C:N/I:N/A:H.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to 1.36.10, 1.37.6, 1.38.4, and 1.39.1, Envoy's ProdClusterManagerFactory::allocateConnPool dereferences transport_socket_options while selecting an HTTP/3 connection pool without first checking whether the pointer is null. LoadBalancerContext implementations used by synthetic, mirror, health-check, and async-client calls can return no transport-socket options. With auto_config and HTTP/3 enabled, routine traffic reaching one of those contexts can crash an Envoy worker. The relevant scope boundary is that the affected branch requires HTTP/3 in the protocol set and a context that supplies no transport-socket options. This issue is fixed in versions 1.36.10, 1.37.6, 1.38.4, and 1.39.1.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.8
An issue was discovered in Envoy 1.12.0. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,
An issue was discovered in Envoy 1.12.0. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,
Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1
Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1
Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1
Envoy through 1.15.0 only considers the first value when multiple header values are present for some HTTP headers. Rated
When parsing HTTP/1.x header values, Envoy 1.9.0 and before does not reject embedded zero characters (NUL, ASCII 0x0). R
Envoy's RBAC filter improperly concatenates duplicate HTTP headers into comma-separated strings instead of validating ea
Envoy is a cloud-native high-performance edge/middle/service proxy. Rated high severity (CVSS 7.5), this vulnerability i
Envoy is a cloud-native high-performance edge/middle/service proxy. Rated high severity (CVSS 7.5), this vulnerability i
Same weakness CWE-476 – NULL Pointer Dereference
View allSame technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| openSUSE Tumbleweed | Fixed |
EUVD-2026-84109
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB