Description
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.
Published: 2026-06-26
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

An Envoy instance that receives an HTTP/3 request that is fully transmitted at the transport layer but carries a nonzero Content-Length can translate it into an HTTP/1 request whose body debt remains unresolved. When the upstream HTTP/1 server replies before consuming the declared body and keeps the connection reusable, the next downstream request generated by Envoy can be interpreted as part of the previous request’s body. The remaining data is then parsed by the upstream server as a new HTTP/1 request, effectively bypassing configured routes or desynchronizing request processing. This allows an attacker to cause the backend to execute an unintended request, potentially gaining unauthorized access or influencing application behavior.

Affected Systems

The vulnerability affects all Envoyproxy Envoy releases older than 1.35.11, 1.36.7, 1.37.3, and 1.38.1. Any deployment of these versions that handles HTTP/3 traffic and forwards to an HTTP/1 upstream is potentially susceptible.

Risk and Exploitability

With a CVSS score of 7.5 the issue has a high severity rating; the EPSS score is not available, and the vulnerability is not listed in CISA KEV. The attack requires sending a specially crafted HTTP/3 request with a nonzero Content-Length header and a headers‑only close. If the upstream server replies before reading the body and reuses the connection, the condition is met. The exploit can lead to unauthorized request execution or route bypass, posing a significant risk to confidentiality, integrity, and availability if the affected services are exposed to untrusted clients.

Generated by OpenCVE AI on June 26, 2026 at 19:35 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Envoy to at least 1.35.11 (or 1.36.7, 1.37.3, or 1.38.1 depending on your current version)
  • Configure upstream servers to delay responses until the request body has been fully read and the connection is no longer reusable
  • Implement monitoring to detect anomalous request patterns and log any duplicate or confused requests to the backend

Generated by OpenCVE AI on June 26, 2026 at 19:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 26 Jun 2026 23:15:00 +0000

Type Values Removed Values Added
First Time appeared Envoyproxy
Envoyproxy envoy
Vendors & Products Envoyproxy
Envoyproxy envoy

Fri, 26 Jun 2026 18:15:00 +0000

Type Values Removed Values Added
Description 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.
Title Envoy: HTTP/3 to HTTP/1 request smuggling via headers-only request with nonzero Content-Length
Weaknesses CWE-444
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N'}


Subscriptions

Envoyproxy Envoy
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-06-26T17:34:22.470Z

Reserved: 2026-05-22T19:10:35.747Z

Link: CVE-2026-48743

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-26T23:00:08Z

Weaknesses
  • CWE-444

    Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')