{"id":"CVE-2026-109584","published":"2026-10-26T14:16:25.000","lastModified":"2026-10-26T16:59:16.113","description":"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.","cvssScore":null,"cvssSeverity":null,"cvssVector":null,"cwes":["CWE-409"],"vendors":[],"products":[],"references":[{"url":"https://cna.erlef.org/cves/CVE-2026-109584.html","tags":[]},{"url":"https://github.com/mtrudel/bandit/commit/220b9dfd27f9a21305be2afc75cbe585ddc24e7a","tags":[]},{"url":"https://github.com/mtrudel/bandit/commit/44bf969cd59851622fb6ee4d16227fbc39a77fb4","tags":[]},{"url":"https://github.com/mtrudel/bandit/security/advisories/GHSA-7gfj-7gvq-3xqj","tags":[]},{"url":"https://osv.dev/vulnerability/EEF-CVE-2026-109584","tags":[]}],"exploitRefs":[{"url":"https://github.com/mtrudel/bandit/commit/220b9dfd27f9a21305be2afc75cbe585ddc24e7a","tags":[]},{"url":"https://github.com/mtrudel/bandit/commit/44bf969cd59851622fb6ee4d16227fbc39a77fb4","tags":[]},{"url":"https://github.com/mtrudel/bandit/security/advisories/GHSA-7gfj-7gvq-3xqj","tags":[]}],"hasPoc":true,"ai":null}