7.5 HIGH
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Scope (S): Unchanged (U)
- Confidentiality (C): None (N)
- Integrity (I): None (N)
- Availability (A): High (H)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): None (N)
- Modified Confidentiality (MC): None (N)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): None (N)
- Modified Availability (MA): High (H)
by @LeSuisse Activity log
- Created suggestion
-
@LeSuisse
ignored
7 packages
- opa-envoy-plugin
- python313Packages.envoy-utils
- python314Packages.envoy-utils
- python313Packages.envoy-reader
- python314Packages.envoy-reader
- python313Packages.envoy-data-plane
- python314Packages.envoy-data-plane
- @LeSuisse accepted
- @LeSuisse published on GitHub
Envoy vulnerable to HTTP/2 memory exhaustion via cookie header size bypass and HPACK amplification
Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to versions 1.35.11, 1.36.7, 1.37.3, and 1.38.1, a vulnerability in Envoy's HTTP/2 downstream request processing allows an unauthenticated remote client to trigger excessive memory consumption, potentially resulting in OOM termination of the Envoy process and denial of service. The issue arises from the combination of two behaviors. First, cookie header bytes are not fully accounted for during request header size validation in Envoy. Second, HPACK header block limits in oghttp2/quiche are enforced on encoded bytes without a corresponding limit on total decoded header size. Together, these behaviors allow a malicious client to cause large decoded header allocations while bypassing the intended request header size protections. Versions 1.35.11, 1.36.7, 1.37.3, and 1.38.1 contain a fix. No complete workaround is known short of applying a fix. Possible temporary mitigations include disabling downstream HTTP/2 where operationally feasible; enforcing stricter request header and cookie limits before traffic reaches Envoy; and monitoring Envoy memory usage for abnormal growth under HTTP/2 traffic.
References
Affected products
- ==>= 1.38.0, < 1.38.1
- ==< 1.35.11
- ==>= 1.36.0, < 1.36.7
- ==>= 1.37.0, < 1.37.3
Matching in nixpkgs
pkgs.envoy
Cloud-native edge and service proxy
Ignored packages (7)
pkgs.opa-envoy-plugin
Plugin to enforce OPA policies with Envoy
-
nixos-unstable 1.16.2-envoy
- nixpkgs-unstable 1.16.2-envoy
- nixos-unstable-small 1.16.2-envoy
-
nixos-26.05 1.16.2-envoy
- nixos-26.05-small 1.16.2-envoy
- nixpkgs-26.05-darwin 1.16.2-envoy
pkgs.python313Packages.envoy-utils
Python utilities for the Enphase Envoy
pkgs.python314Packages.envoy-utils
Python utilities for the Enphase Envoy
pkgs.python313Packages.envoy-reader
Python module to read from Enphase Envoy units
pkgs.python314Packages.envoy-reader
Python module to read from Enphase Envoy units
pkgs.python313Packages.envoy-data-plane
Python dataclasses for the Envoy Data-Plane-API
Package maintainers
-
@lukegb Luke Granger-Brown <nix@lukegb.com>