HIGH 7.5

CVE-2026-48743: Envoy HTTP/3 to HTTP/1 Request Smuggling Vulnerability

Envoy, a widely-deployed proxy for cloud-native systems, contains a request smuggling vulnerability in versions before 1.35.11, 1.36.7, 1.37.3, and 1.38.1. When Envoy processes an HTTP/3 request from a client that claims to have a body (via Content-Length header) but actually doesn't, it can inadvertently mix that declaration with the start of the next upstream request. An origin server that replies before reading the body and reuses the connection will parse the beginning of Envoy's next request as part of the first request's body, then interpret the remainder as a new request. This creates a route-bypass scenario where requests denied by Envoy's policy can reach the backend, or traffic intended for one path reaches another.

Source data · NVD / CISA · public domain

CVSS
3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N
Weaknesses (CWE)
CWE-444
Affected products
1 configuration(s)
Published / Modified
2026-06-26 / 2026-06-29

NVD description (verbatim)

Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to 1.35.11, 1.36.7, 1.37.3, and 1.38.1, Envoy can translate a downstream HTTP/3 request that is complete at the transport layer (HEADERS with FIN / headers-only close) but still carries a nonzero Content-Length into a complete upstream HTTP/1 request with unresolved body debt. In an HTTP/1 upstream deployment where the origin replies before reading the declared body and keeps the connection reusable, the beginning of the next Envoy-generated upstream request can be consumed as the first request's body. The remaining bytes are then parsed by the origin as a new HTTP/1 request. This was reproduced as a route-bypass/desync: direct /pwn was denied by Envoy, but the second downstream H3 stream received the response for backend-parsed GET /pwn HTTP/1.1. This vulnerability is fixed in 1.35.11, 1.36.7, 1.37.3, and 1.38.1.

2 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

The vulnerability stems from HTTP/3 to HTTP/1 translation logic that fails to reconcile a complete HTTP/3 stream (HEADERS with FIN flag indicating end-of-stream) carrying a nonzero Content-Length with HTTP/1 semantics. When an HTTP/3 client sends a headerless-only close but declares a body size, Envoy forwards this as an HTTP/1 request with body debt to the upstream. If the origin replies without consuming the declared body and maintains connection reuse, subsequent Envoy-generated requests can be partially consumed as the prior request's body, leading to request smuggling. The attack vector involves CWE-444 (HTTP Request Smuggling), where protocol interpretation differences between Envoy and the origin server enable request confusion.

Business impact

This vulnerability enables attackers to bypass security policies enforced at the proxy layer. Requests explicitly denied by Envoy access controls can reach backend servers if those requests can be smuggled through HTTP/1 request boundaries. In multi-tenant or zero-trust deployments, this breaks isolation: an attacker could access restricted paths, trigger unintended backend operations, or poison caches if caching layers exist upstream. The route-bypass behavior demonstrated in the CVE description (accessing /pwn when direct access was denied) exemplifies how authentication and authorization controls can be circumvented. Organizations relying on Envoy as a security boundary are directly exposed.

Affected systems

All Envoy deployments prior to version 1.35.11, 1.36.7, 1.37.3, and 1.38.1 are vulnerable. Organizations must check their active Envoy version against these thresholds; users on version 1.35.10 or earlier, 1.36.6 or earlier, 1.37.2 or earlier, and 1.38.0 should prioritize patching. The vulnerability requires a specific configuration: HTTP/3 clients connecting to Envoy with HTTP/1 upstreams, and origins that reply before reading the body while reusing connections. However, these are common patterns in cloud-native architectures, making exposure wider than niche deployments.

Exploitability

The vulnerability is exploitable over the network without authentication or user interaction. The CVSS vector (AV:N/AC:H/PR:N/UI:N/S:C) reflects network accessibility but moderate complexity—the attack requires specific upstream behavior (reply-before-read with connection reuse) and correct HTTP/3 request construction. A determined attacker with access to send HTTP/3 requests to an affected Envoy instance can craft smuggling payloads, though triggering the full chain demands knowledge of the backend's behavior. This is not a one-click exploit but is well within the capability of a motivated threat actor familiar with HTTP request smuggling techniques.

Remediation

Upgrade Envoy to a patched version: 1.35.11 or later, 1.36.7 or later, 1.37.3 or later, or 1.38.1 or later. Organizations should select the upgrade path that aligns with their current version to minimize disruption. Before patching, mitigations may include restricting HTTP/3 ingress to trusted clients, disabling HTTP/3 support if not critical to operations, or reviewing upstream origin configurations to ensure they always consume declared request bodies before responding. However, these mitigations are temporary—patching is the definitive fix.

Patch guidance

Plan upgrades by version cohort: map your Envoy installations to their current minor version, then update to the next available patched release. For example, if running 1.36.4, target 1.36.7. Test in a staging environment before production rollout, particularly focusing on HTTP/3 ingress and HTTP/1 upstream interactions. Verify that the upgrade does not break TLS session resumption, connection pooling, or filter chains that depend on precise request/response matching. Rolling updates with health checks are recommended to catch any regressions early.

Detection guidance

Monitor Envoy logs for requests with conflicting Content-Length and stream-end indicators, particularly HTTP/3 streams flagged as complete but declaring body content. Upstream origin logs should be reviewed for malformed or fragmented requests that appear to originate from Envoy—look for partial request bodies followed by new request lines (e.g., GET / appearing mid-request). Network-based detection can identify HTTP/3 packets with suspicious Content-Length values on complete streams. WAF or proxy logs that show denied requests reaching the origin despite policy enforcement are a red flag for smuggling. Implement request logging at both Envoy and origin to correlate timeline anomalies.

Why prioritize this

This is a HIGH-severity vulnerability with CVSS 7.5 that directly undermines proxy-enforced security controls. The ability to bypass access policies and reach restricted paths represents a material risk to confidentiality and integrity. While not in CISA's KEV catalog, the vulnerability's attack surface (any organization using Envoy with HTTP/3 and HTTP/1 backends) and its impact on security posture warrant priority treatment. Organizations in regulated industries or with strict zero-trust architectures should treat this as critical infrastructure exposure.

Risk score, explained

The CVSS 7.5 (HIGH) score reflects network accessibility and low complexity, offset by the requirement for specific upstream conditions (AC:H). The impact is primarily integrity-focused (request smuggling/desync) with lower confidentiality exposure and no availability impact. The scope changes (S:C) because the vulnerability affects not just Envoy but the security boundary it provides to downstream applications. The moderate complexity accounts for the need to craft specific HTTP/3 requests and exploit timing-dependent upstream behavior.

Frequently asked questions

Does this affect all Envoy users, or only those with HTTP/3 clients?

Only deployments that accept HTTP/3 traffic and forward to HTTP/1 upstreams are vulnerable. If your Envoy instance does not use HTTP/3 listeners, you are not affected by this specific vulnerability. However, check your configuration to confirm.

Can I mitigate this without upgrading Envoy?

Temporary mitigations include disabling HTTP/3, restricting HTTP/3 clients to trusted sources, or configuring backends to always consume request bodies before responding. These reduce attack surface but do not eliminate the underlying flaw—patching is required for a complete fix.

Will upgrading Envoy break my existing configurations?

Patch versions (e.g., 1.36.6 to 1.36.7) are backward-compatible and do not introduce configuration changes. Test in staging first, as with any upgrade, but you should not need to modify policies or filters.

How can I tell if my origin servers are vulnerable to this attack?

Origins that reply before reading the entire declared request body and reuse connections are susceptible. Review your backend application code and HTTP server configuration (e.g., Keep-Alive settings) to understand this behavior, and test with HTTP smuggling detection tools in a controlled environment.

This analysis is current as of the CVE publication date and reflects information available from the vendor advisory. Patch availability and version numbers should be verified against the official Envoy GitHub releases and security advisories before implementation. SEC.co does not provide warranty regarding the completeness or applicability of this guidance to specific environments; organizations should conduct their own risk assessment and testing. This vulnerability is not yet listed in CISA's Known Exploited Vulnerabilities catalog, but exploitation may increase as awareness spreads. Source: NVD (public-domain), retrieved 2026-08-05. Analysis generated by SEC.co (claude-haiku-4-5).