CVE-2026-48862 Unbounded conn.streams growth in Mint HTTP/2 client via unenforced PUSH_PROMISE concurrency
A malicious HTTP/2 server can exhaust client memory by flooding PUSH_PROMISE frames, causing denial of service in the Mint library.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-48862?
CVE-2026-48862 is a high-severity denial of service vulnerability in elixir-mint mint, published on 2 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Allocation of Resources Without Limits or Throttling vulnerability in elixir-mint Mint allows attacker-controlled HTTP/2 servers to exhaust memory in a Mint client via PUSH_PROMISE flooding.
In lib/mint/http2.ex, Mint.HTTP2.decode_push_promise_headers_and_add_response/5 inserts a :reserved_remote entry into conn.streams for every promised stream ID. The neighbouring Mint.HTTP2.assert_valid_promised_stream_id/2 only verifies that the promised ID is even and not already present; client_settings.max_concurrent_streams is not consulted at promise time. The concurrency cap is only checked when the response HEADERS for the promised stream arrive, so a server that emits PUSH_PROMISE frames and withholds the matching HEADERS never trips that check.
HTTP/2 server push is accepted by default (client_settings.enable_push defaults to true). A single long-lived HTTP/2 connection to a hostile server lets that server pin one conn.streams entry per PUSH_PROMISE frame it sends, with no upper bound, until the client process runs out of memory.
This issue affects mint: from 0.2.0 before 1.9.0.
Weakness: CWE-770
Which versions are affected by CVE-2026-48862?
3 open source packages ship an affected version, including mint.
| Package | Affected | Fixed in |
|---|---|---|
mint Hex | From 0.2.0 | 1.9.0 |
mint Hex | From 0.2.0 | 1.9.0 |
mint Hex | From 0.2.0 | 1.9.0 |
How do I fix CVE-2026-48862?
Upgrade mint to 1.9.0 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-48862 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-48862 exists.
Sources
Also known as EEF-CVE-2026-48862, GHSA-g586-ccqf-7x4r.