{"schema":"threatline.record/2","record":{"id":"CVE-2026-109584","aliases":["GHSA-7gfj-7gvq-3xqj"],"summary":"HTTP/2 cookie crumb join expands a small HPACK header block into an unbounded allocation in Bandit","details":"Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in the HTTP/2 implementation of mtrudel bandit allows an unauthenticated remote attacker to exhaust server memory via a small HPACK-compressed HEADERS block. The block stores one large cookie value in the HPACK dynamic table and then references it tens of thousands of times with 1-byte indexed fields. In the reporter's run, a 49 KB block made a server with default settings allocate a 183 MB cookie binary before any application code ran, and every concurrent stream can repeat the cost.\n\nBandit.HTTP2.Connection caps only the compressed block (max_header_block_size), and its check of the decoded list against max_header_list_size never fires because that setting defaults to :infinity. combine_cookie_crumbs/1 in lib/bandit/http2/stream.ex then joins every crumb into one binary.\n\nThis issue affects bandit: from 0.3.3 before 1.14.0.","categories":["Unclassified"],"product":"bandit","vendor":"mtrudel","ecosystem":null,"affected_ranges":[{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-109584","source_modified_at":"2026-10-26T15:35:51.081Z","fetched_at":"2026-10-26T19:10:57.178988Z","product":"bandit","vendor":"mtrudel","versions":[{"lessThan":"1.14.0","status":"affected","version":"0.3.3","versionType":"semver"}],"defaultStatus":"unaffected"},{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-109584","source_modified_at":"2026-10-26T15:35:51.081Z","fetched_at":"2026-10-26T19:10:57.178988Z","product":"bandit","vendor":"mtrudel","versions":[{"lessThan":"220b9dfd27f9a21305be2afc75cbe585ddc24e7a","status":"affected","version":"44bf969cd59851622fb6ee4d16227fbc39a77fb4","versionType":"git"}],"defaultStatus":"unaffected"}],"fixed_versions":[{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-109584","source_modified_at":"2026-10-26T15:35:51.081Z","fetched_at":"2026-10-26T19:10:57.178988Z","package":{"name":"bandit","ecosystem":null},"version":"1.14.0","basis":"first unaffected version stated in the CVE record"},{"source":"CVE List","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-109584","source_modified_at":"2026-10-26T15:35:51.081Z","fetched_at":"2026-10-26T19:10:57.178988Z","package":{"name":"bandit","ecosystem":null},"version":"220b9dfd27f9a21305be2afc75cbe585ddc24e7a","basis":"first unaffected version stated in the CVE record"}],"cvss":8.7,"severity":"High","kev":{"listed":false},"epss":{"probability":null,"percentile":null,"score_date":null},"published_at":"2026-10-26T13:32:22.359Z","modified_at":"2026-10-26T15:35:51.081Z","provenance":[{"source":"CVE List","url":"https://www.cve.org/CVERecord?id=CVE-2026-109584","fetched_at":"2026-10-26T19:10:57.178988Z","source_modified_at":"2026-10-26T15:35:51.081Z"}],"sources":["CVE List"],"references":[{"source":"CVE List","url":"https://github.com/mtrudel/bandit/security/advisories/GHSA-7gfj-7gvq-3xqj","tags":["vendor-advisory","related"]},{"source":"CVE List","url":"https://cna.erlef.org/cves/CVE-2026-109584.html","tags":["related"]},{"source":"CVE List","url":"https://osv.dev/vulnerability/EEF-CVE-2026-109584","tags":["related"]},{"source":"CVE List","url":"https://github.com/mtrudel/bandit/commit/44bf969cd59851622fb6ee4d16227fbc39a77fb4","tags":["related"]},{"source":"CVE List","url":"https://github.com/mtrudel/bandit/commit/220b9dfd27f9a21305be2afc75cbe585ddc24e7a","tags":["patch"]}],"locations":[],"motoko_assessment":{"status":"requires_architecture_review","automatic_remediation":false},"cve_state":"PUBLISHED","cvss_source":"CVE List","ssvc":{"exploitation":"none","automatable":"yes","technical_impact":"partial","assessed_at":"2026-10-26T15:11:12.403348Z"},"classification":{"method":"product-first software-layer rules","rules_version":"2.1","matched_on":null,"confidence":"unknown","reviewed":false},"change_timestamp":"2026-10-26T15:35:51.081Z","content_hash":"f1ad2328758360fbadb26988e53c1916a8ca66957392b620ec5f2bf25989fe96"}}
