Description
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.
Problem types
CWE-400 Uncontrolled Resource Consumption
Product status
2.0.0 (semver) before 4.0.1
0334af206d5099fdf510ed9eda18e34396f065ad (git) before 3d25f9fea26c90609de9d64366fedfe5065413bc
Credits
Peter Ullrich
Benoit Chesneau
Jonatan Männchen / EEF
References
github.com/...ackney/security/advisories/GHSA-jq4m-q6p2-8gwc
github.com/...ackney/security/advisories/GHSA-jq4m-q6p2-8gwc
cna.erlef.org/cves/CVE-2026-47077.html
osv.dev/vulnerability/EEF-CVE-2026-47077
github.com/...ommit/3d25f9fea26c90609de9d64366fedfe5065413bc