Skip to main content

Envoy Proxy CVE-2026-48521

| EUVDEUVD-2026-84109 MEDIUM
NULL Pointer Dereference (CWE-476)
2026-09-21 GitHub_M
5.9
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send routine traffic to auto_config+HTTP/3 Envoy
  2. Exploit
    Request routed via options-less LB context (mirror/health-check/async)
  3. Execution
    allocateConnPool dereferences null transport_socket_options
  4. Impact
    Envoy 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.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.7% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

envoy < 1.36.10
envoy 1.37.0, < 1.37.6
envoy 1.38.0, < 1.38.4
envoy 1.39.0, < 1.39.1

Affected Packages

euvd envoy fix: 1.36.10, 1.37.6, 1.38.4, 1.39.1

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

Vendor (GitHub_M) PRIMARY 5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 5.9 MEDIUM

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.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE MEDIUM
Red Hat 5.9 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Sep 21, 2026 - 21:17 EUVD
CVE Published
Sep 21, 2026 - 19:44 cve.org
MEDIUM 5.9

DescriptionCVE.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

EPSS Score
0.7%
Top 48% exploitable
Prevalence
High
Envoy is a ubiquitous CNCF service/edge proxy underpinning Istio and cloud-native meshes
Data Quality
7 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.7%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

31
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +30
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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.

More in Envoy

View all
CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2023-27488 CRITICAL POC
9.8 Apr 04

Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.8

CVE-2019-18802 CRITICAL POC
9.8 Dec 13

An issue was discovered in Envoy 1.12.0. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,

CVE-2019-18801 CRITICAL POC
9.8 Dec 13

An issue was discovered in Envoy 1.12.0. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,

CVE-2023-27493 CRITICAL POC
9.1 Apr 04

Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1

CVE-2023-27491 CRITICAL POC
9.1 Apr 04

Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1

CVE-2023-27487 CRITICAL POC
9.1 Apr 04

Envoy is an open source edge and service proxy designed for cloud-native applications. Rated critical severity (CVSS 9.1

CVE-2020-25017 HIGH POC
8.3 Oct 01

Envoy through 1.15.0 only considers the first value when multiple header values are present for some HTTP headers. Rated

CVE-2019-9900 HIGH POC
8.3 Apr 25

When parsing HTTP/1.x header values, Envoy 1.9.0 and before does not reject embedded zero characters (NUL, ASCII 0x0). R

CVE-2026-26308 HIGH POC
7.5 Mar 10

Envoy's RBAC filter improperly concatenates duplicate HTTP headers into comma-separated strings instead of validating ea

CVE-2024-53270 HIGH POC
7.5 Dec 18

Envoy is a cloud-native high-performance edge/middle/service proxy. Rated high severity (CVSS 7.5), this vulnerability i

CVE-2024-53269 HIGH POC
7.5 Dec 18

Envoy is a cloud-native high-performance edge/middle/service proxy. Rated high severity (CVSS 7.5), this vulnerability i

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
openSUSE Tumbleweed Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy