CVE-2026-97200 PUBLISHED

Unbounded response body buffering and decompression in hackney

Assigner: EEF
Reserved: 26.10.2026 Published: 26.10.2026 Updated: 26.10.2026

Allocation of Resources Without Limits or Throttling vulnerability in hackney_conn in benoitc hackney allows a malicious HTTP server to exhaust client memory via an oversized or highly compressed response body. hackney:request/5 and hackney:body/1 return the whole response body, and nothing bounds how much the connection process buffers. Any server the client requests can trigger it.

hackney_conn:read_full_body/2 and the HTTP/2 and HTTP/3 accumulators append every chunk until the body ends. With {auto_decompress, true} the buffered body is then inflated in one step with zlib:gunzip/1 or zlib:inflate/2, which return the whole output at once.

This issue affects hackney: from 2.0.0-beta.1 before 4.9.0.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS Score: 8.2

Product Status

Vendor benoitc
Product hackney
Versions Default: unaffected
  • affected from 2.0.0-beta.1 to 4.9.0 (excl.)
Vendor benoitc
Product hackney
Versions Default: unaffected
  • affected from dc41b79339ca0c41e16d3f2dd17172bc2de855d6 to 493e8bf83a391548e5101792276ab3fc428fa76c (excl.)

Workarounds

Leave auto_decompress disabled (the default). Without it hackney_conn:maybe_decompress_body/2 never inflates the body, which closes the amplification half. The uncapped raw body read has no workaround.

Credits

  • Martin Karrer finder
  • Quinn Wilton finder
  • Quinn Wilton reporter
  • Martin Karrer remediation developer
  • Benoit Chesneau remediation developer
  • Jonatan Männchen / EEF coordinator

References

Problem Types

  • CWE-409 Improper Handling of Highly Compressed Data (Data Amplification) CWE
  • CWE-770 Allocation of Resources Without Limits or Throttling CWE

Impacts

  • A server the client requests can make the client allocate memory proportional to the body it sends, or to its decompressed size, until the node runs out of memory.