Allocation of resources without limits vulnerability in elixir-mint mint allows a remote HTTP/2 server to exhaust memory on the client host and cause a denial of service.
The Mint.HTTP2.handlecontinuation/3 function in lib/mint/http2.ex accumulates the header-block fragment carried by each HTTP/2 CONTINUATION frame into a growing conn.headersbeingprocessed nesting, one level deeper per frame, and only releases it when a frame with the ENDHEADERS flag arrives. The only guard on this accumulator is Mint.HTTP2.assertheaderblockwithinmaxsize/2, which sums the byte size of the fragments received so far. Because a CONTINUATION frame is permitted by the protocol to carry a zero-length payload, an unbounded chain of zero-length CONTINUATION frames adds no bytes to the running total, never trips the size cap, and never emits ENDHEADERS, yet each frame still nests the accumulator one level deeper.
A malicious HTTP/2 server (reachable directly, via an attacker-controlled redirect, via SSRF, or via a man-in-the-middle) can open a stream by sending a HEADERS frame without END_HEADERS and then stream zero-length CONTINUATION frames indefinitely. Client memory grows one cons cell per frame received; sustained bandwidth from the peer drives the BEAM node running the Mint client to memory exhaustion and eventual out-of-memory termination.
This issue affects mint: from 0.1.0 before 1.9.2.
{
"cwe_ids": [
"CWE-770"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59246.json",
"unresolved_ranges": [
{
"extracted_events": [
{
"introduced": "596ca4304504be68939c4929e0831557097962b8"
},
{
"fixed": "5779de1666344b32aefc4354184ea07f902f73ce"
}
],
"source": "AFFECTED_FIELD"
}
],
"cna_assigner": "EEF"
}