CVE-2026-73550: Envoy: HTTP/2 Discarded Host Header 200 GB Header-Copy OOM in Envoy
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 copies every decoded HTTP/2 Host header value before discarding it when :authority is already present. The discarded value bypasses saveHeader, so its bytes and count are not charged against request header limits. An unauthenticated client can use HPACK indexing to submit many references to a large Host value across a bounded number of streams, forcing extreme header-copy allocation and causing the proxy to be out-of-memory killed. The relevant scope boundary is that the demonstrated amplification uses HTTP/2 HPACK and the duplicate Host discard behavior. This issue is fixed in versions 1.36.10, 1.37.6, 1.38.4, and 1.39.1.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Envoyto a version that resolves this vulnerability.Fixed in 1.36.10 - Upgrade
Upgrade
Envoyto a version that resolves this vulnerability.Fixed in 1.37.6 - Upgrade
Upgrade
Envoyto a version that resolves this vulnerability.Fixed in 1.38.4 - Upgrade
Upgrade
Envoyto a version that resolves this vulnerability.Fixed in 1.39.1
Event History
Frequently Asked Questions
Which deployments are exposed to this denial-of-service condition?
Envoy deployments that accept HTTP/2 traffic are exposed if they run a version earlier than 1.36.10, 1.37.6, 1.38.4, or 1.39.1. The demonstrated amplification specifically depends on HTTP/2 HPACK processing and duplicate Host header discard behavior.
Does an attacker need authentication or interaction from an application user?
No. An unauthenticated client can trigger the issue remotely by sending HTTP/2 requests that use HPACK indexing to repeatedly reference a large Host header value while :authority is present.
Why do normal request header limits not prevent the attack?
The duplicate Host value is copied before it is discarded, but this discarded value bypasses saveHeader. Its bytes and header count therefore are not charged against request header limits, allowing extreme allocation despite those limits.
What is the operational impact of successful exploitation?
The attack can force extreme header-copy allocation and cause the Envoy proxy process to be killed by an out-of-memory condition. The stated impact is availability loss; no confidentiality or integrity impact is identified.
What versions contain the fix?
Upgrade to Envoy 1.36.10, 1.37.6, 1.38.4, or 1.39.1, as applicable to the release branch in use.