CVE-2026-54556 Http4s: HTTP/2 Denial of Service with Ember Backend
An unauthenticated attacker can cause an out-of-memory denial of service in Http4s Ember backend by exploiting HPACK header expansion flaws.
- 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-54556?
CVE-2026-54556 is a high-severity denial of service vulnerability in http4s, published on 26 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, an unauthenticated HTTP/2 peer can cause an out-of-memory denial of service in the Ember backend with HTTP/2 enabled. The Hpack wrapper in ember-core/shared/src/main/scala/org/http4s/ember/core/h2/Hpack.scala concatenates HEADERS and CONTINUATION frame fragments and decodes them into a single List, but maxHeaderSize accounting does not include indexed headers or HPACK per-header overhead. A small compressed header block can therefore expand into a much larger decoded representation that remains in memory for processing. Servers exposed to untrusted HTTP/2 traffic and clients directed to an untrusted HTTP/2 server are affected, and concurrent malicious connections can exhaust the process heap. This issue is fixed in versions 0.23.35 and 1.0.0-M47.
Weakness: CWE-409
Which versions are affected by CVE-2026-54556?
10 open source packages ship an affected version, including org.http4s:http4s-ember-core_2.13, org.http4s:http4s-ember-core_2.12 and org.http4s:http4s-ember-core_3.
| Package | Affected | Fixed in |
|---|---|---|
org.http4s:http4s-ember-core_2.13 Maven | All versions | 0.23.35 |
org.http4s:http4s-ember-core_2.13 Maven | All versions | 0.23.35 |
org.http4s:http4s-ember-core_2.13 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-ember-core_2.13 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-ember-core_2.12 Maven | All versions | 0.23.35 |
org.http4s:http4s-ember-core_2.12 Maven | All versions | 0.23.35 |
4 more packages
org.http4s:http4s-ember-core_3 Maven | All versions | 0.23.35 |
org.http4s:http4s-ember-core_3 Maven | All versions | 0.23.35 |
org.http4s:http4s-ember-core_3 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-ember-core_3 Maven | From 1.0.0-M1 | 1.0.0-M47 |
How do I fix CVE-2026-54556?
Upgrade org.http4s:http4s-ember-core_2.13 to a fixed version for your release line: 0.23.35 or 1.0.0-M47.
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-54556 being exploited?
There is no known exploitation of CVE-2026-54556 in the wild and no public exploit code.
Sources
Also known as GHSA-vmm3-xgcx-67hm.