{"id":"CVE-2026-97200","aliases":[],"title":"Unbounded response body buffering and decompression in hackney","titleSource":"EEF","descriptionSource":"EEF","products":[{"vendor":"benoitc","name":"hackney","platforms":[],"versions":[{"version":"2.0.0-beta.1","status":"affected","lessThan":"4.9.0","versionType":"semver"}],"defaultStatus":"unaffected","source":"EEF","url":"https://www.cve.org/CVERecord?id=CVE-2026-97200"},{"vendor":"benoitc","name":"hackney","platforms":[],"versions":[{"version":"dc41b79339ca0c41e16d3f2dd17172bc2de855d6","status":"affected","lessThan":"493e8bf83a391548e5101792276ab3fc428fa76c","versionType":"git"}],"defaultStatus":"unaffected","source":"EEF","url":"https://www.cve.org/CVERecord?id=CVE-2026-97200"}],"remediation":[{"text":"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.","source":"EEF","url":"https://www.cve.org/CVERecord?id=CVE-2026-97200"}],"description":"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.\n\nhackney_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.\n\nThis issue affects hackney: from 2.0.0-beta.1 before 4.9.0.","severity":"high","score":8.2,"published":"2026-10-26T13:49:40.392Z","modified":"2026-10-26T15:35:50.487Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://github.com/benoitc/hackney/releases/tag/4.9.0","https://cna.erlef.org/cves/CVE-2026-97200.html","https://osv.dev/vulnerability/EEF-CVE-2026-97200","https://github.com/benoitc/hackney/pull/980","https://github.com/benoitc/hackney/commit/dc41b79339ca0c41e16d3f2dd17172bc2de855d6","https://github.com/benoitc/hackney/commit/493e8bf83a391548e5101792276ab3fc428fa76c"],"sources":[{"name":"CVE","id":"CVE-2026-97200","modified":"2026-10-26T15:35:50.487Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-97200"}],"assessments":[{"source":"EEF","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","score":8.2}],"sourceAffected":[],"kev":{"status":"not-listed","checkedAt":"2026-10-29T09:10:31.970Z"},"coverage":[{"source":"NVD","status":"not-checked"},{"source":"GHSA","status":"not-checked"},{"source":"EUVD","status":"not-checked"},{"source":"EPSS","status":"not-checked"}],"evidence":[]}