Impact
The Erlang/OTP httpc HTTP client fails to enforce a limit on the total size of response headers received from a server. The default nolimit setting causes the header parser to accumulate all headers into memory before performing a length check, allowing an attacker to allocate unbounded memory and crash the BEAM VM or exhaust system resources. This flaw results in a denial‑of‑service condition and is classified under CWE‑770.
Affected Systems
The vulnerability affects the Erlang/OTP system, specifically the httpc HTTP client and the inets library. Affected releases include OTP 17.0 through OTP 27.3.4.17, OTP 28.0 through OTP 28.5.0.6, and OTP 29.0 through OTP 29.0.6; the corresponding inets versions are 5.10 through 9.3.2.7, 9.4 through 9.6.2.3, and 9.7 through 9.7.2. Whether OTP prior to 17.0 (inets prior to 5.10) is affected remains unknown.
Risk and Exploitability
The vulnerability carries a CVSS score of 8.2, indicating high severity. The EPSS score is not available and the issue is not listed in the CISA KEV catalog. An attacker can trigger the exhaustion by acting as an HTTP server and sending a large number of headers or very large header values; authentication is not required. Proof‑of‑concept demonstrations have shown 100,000 headers of roughly 4,000 bytes each forcing the client VM to allocate over 13 GB of memory in under 30 seconds, underscoring the practical risk of exploitation.
OpenCVE Enrichment