{"id":"EEF-CVE-2026-49754","summary":"HTTP/2 CONTINUATION flood in Mint client via unbounded header-block accumulation","details":"## Summary\n\nAllocation of Resources Without Limits or Throttling vulnerability in elixir-mint Mint allows attacker-controlled HTTP/2 servers to exhaust memory in a Mint client (HTTP/2 CONTINUATION flood).\n\nWhen Mint's HTTP/2 receive path observes a HEADERS frame without the END_HEADERS flag, the unparsed header-block fragment is parked in conn.headers_being_processed, and every subsequent CONTINUATION frame on that stream is appended to the accumulator. Nothing in the receive path caps the accumulator: there is no per-stream size limit, no CONTINUATION frame-count limit, and max_header_list_size is only enforced on outgoing requests, never on inbound header blocks (its default is :infinity).\n\nA malicious or compromised HTTP/2 server can stream an endless sequence of CONTINUATION frames (each up to the peer-advertised SETTINGS_MAX_FRAME_SIZE) and drive the client's iolist to arbitrary size, causing memory exhaustion and BEAM process death. A single connection to an attacker-controlled HTTP/2 endpoint is sufficient.\n\nThis issue affects mint: from 0.1.0 before 1.9.0.\n\n## Workaround\n\nRestrict Mint to HTTP/1 on connections to untrusted servers by passing protocols: [:http1] to Mint.HTTP.connect/4. This avoids the vulnerable HTTP/2 receive path entirely, at the cost of losing HTTP/2 for those connections.","aliases":["CVE-2026-49754","GHSA-2p26-p43x-fhp8"],"modified":"2026-06-02T19:14:33.100Z","published":"2026-06-02T14:15:14.951Z","database_specific":{"cpe_ids":["cpe:2.3:a:elixir-mint:mint:*:*:*:*:*:*:*:*"],"cwe_ids":["CWE-770"],"capec_ids":["CAPEC-130"]},"references":[{"type":"ADVISORY","url":"https://github.com/elixir-mint/mint/security/advisories/GHSA-2p26-p43x-fhp8"},{"type":"WEB","url":"https://cna.erlef.org/cves/CVE-2026-49754.html"},{"type":"FIX","url":"https://github.com/elixir-mint/mint/commit/b662d127d3028b5426c88d4c9cc7fe430491a10b"},{"type":"PACKAGE","url":"https://hex.pm/packages/mint"}],"affected":[{"package":{"name":"mint","ecosystem":"Hex","purl":"pkg:hex/mint"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.1.0"},{"fixed":"1.9.0"}]}],"versions":["0.1.0","0.2.0","0.2.1","0.3.0","0.4.0","0.5.0","1.0.0","1.1.0","1.2.0","1.2.1","1.3.0","1.4.0","1.4.1","1.4.2","1.5.0","1.5.1","1.5.2","1.6.0","1.6.1","1.6.2","1.7.0","1.7.1","1.8.0"],"database_specific":{"source":"https://cna.erlef.org/osv/EEF-CVE-2026-49754.json"}},{"ranges":[{"type":"GIT","repo":"https://github.com/elixir-mint/mint.git","events":[{"introduced":"596ca4304504be68939c4929e0831557097962b8"},{"fixed":"b662d127d3028b5426c88d4c9cc7fe430491a10b"}]}],"versions":["v1.8.0","v1.7.1","v1.7.0","v1.6.2","v1.6.1","v1.6.0","v1.5.2","v1.5.1","v1.5.0","v1.4.2","v1.4.1","v1.4.0","v1.3.0","v1.2.1","v1.2.0","v1.1.0","v1.0.0","v0.5.0","v0.4.0","v0.2.1","v0.2.0","v0.1.0"],"database_specific":{"source":"https://cna.erlef.org/osv/EEF-CVE-2026-49754.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"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"}],"credits":[{"name":"Peter Ullrich","type":"FINDER"},{"name":"Eric Meadows-Jönsson","type":"REMEDIATION_DEVELOPER"},{"name":"Jonatan Männchen / EEF","type":"ANALYST"}]}