Unbounded body accumulation in HTTP/3 response loop in hackney
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Denial of service, Spoofing
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-400 and CWE-295.
Summary
Allocation of Resources Without Limits or Throttling vulnerability in benoitc hackney allows Flooding. hackney_h3:await_response_loop/6 accumulates the HTTP/3 response body in memory without any size cap. The after Timeout clause is a per-message inactivity timer that resets on every received chunk, housekeeping message, or settings frame — it is not a wall-clock deadline. A malicious HTTP/3 server that emits one small chunk every Timeout - 1 ms with Fin = false and never sends a final frame keeps the loop alive indefinitely while the accumulation buffer grows linearly without bound, eventually exhausting the BEAM process heap and causing an out-of-memory condition. This issue affects hackney: from 2.0.0 before 4.0.1.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| benoitc | hackney | 2.0.0 to before 4.0.1 | 4.0.1 | Patch available | CNA |
| — | hackney (Hex) | 2.0.0 to before 4.0.1 | 4.0.1 | Patch available | GHSA-jq4m-q6p2-8gwc |
- hackney Vendorbenoitc Affected 2.0.0 to before 4.0.1 Fixed in 4.0.1 Patch available CNA
- hackney (Hex) Vendor— Affected 2.0.0 to before 4.0.1 Fixed in 4.0.1 Patch available GHSA-jq4m-q6p2-8gwc
Remediation
- Fix · CNA hackney (benoitc) Fixed in 4.0.1
- Fix · GHSA-jq4m-q6p2-8gwc hackney (Hex) Fixed in 4.0.1 Advisory →
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
benoitc hackney 4.0.1
10 records Highest priority Priority HIGH 6 HIGH, 4 MEDIUM
Other records, highest priority first
- TI-2026-34675 Unbounded memory consumption in WebSocket client in hackneyPriority HIGH 77
- TI-2026-34669 Atom table exhaustion via unrecognized URL schemes in hackneyPriority HIGH 77
- TI-2026-34668 Infinite loop in Alt-Svc header parser in hackneyPriority HIGH 77
Timeline
- 2026-10-02 Threatist record created from CVE-2026-47077
- 2026-10-03 Alias added: GHSA-jq4m-q6p2-8gwc
References
Patch 3
More benoitc Hackney vulnerabilities
- TI-2026-34675 Unbounded memory consumption in WebSocket client in hackney CVSS 4.0HIGH 8.7
- TI-2026-34669 Atom table exhaustion via unrecognized URL schemes in hackney CVSS 4.0HIGH 8.7
- TI-2026-34668 Infinite loop in Alt-Svc header parser in hackney CVSS 4.0HIGH 8.7
- TI-2026-34673 SOCKS5 TLS upgrade ignores caller timeout in hackney CVSS 4.0HIGH 8.2
- TI-2026-34674 CRLF injection in WebSocket upgrade request in hackney CVSS 4.0MEDIUM 6.9
- TI-2026-34678 SSRF allowlist bypass via percent-encoded host in hackney CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-47077 · CVE Program
- CVE-2026-47077 · NVD
- FIRST EPSS
- GHSA-jq4m-q6p2-8gwc · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences