High severity · published Aug 26, 2026
CVE-2026-54556
Http4s: HTTP/2 Denial of Service with Ember Backend
8.2
CVSS
0.5%
EPSS
No
On KEV
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.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 44% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
HT
http4s · http4s
< 0.23.35; >= 1.0.0-M1, < 1.0.0-M46 · source: vendor
HT
http4s-ember-core_2.12 · org.http4s
< 0.23.35 · source: vendor
HT
http4s-ember-core_2.13 · org.http4s
>= 1.0.0-M1, < 1.0.0-M46; < 0.23.35 · source: vendor
HT
http4s-ember-core_3 · org.http4s
>= 1.0.0-M1, < 1.0.0-M46; < 0.23.35 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-54556
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-54556
github.com
https://github.com/http4s/http4s/commit/6e8eccd64a6a74ab4811897881e95e0e1b3a818e
github.com
https://github.com/http4s/http4s/releases/tag/v0.23.35
github.com
https://github.com/http4s/http4s/releases/tag/v1.0.0-M47
github.com
https://github.com/http4s/http4s/security/advisories/GHSA-vmm3-xgcx-67hm
More from http4s
9.2
CVE-2026-69204
Http4s: Ember accepts Transfer-Encoding combined with Content-Length (CL.TE request smuggling)
8.7
CVE-2026-69217
Http4s: Ember Server accepts duplicate Content-Length headers
8.7
CVE-2026-69205
Http4s: Ember Transfer-Encoding value parsing (TE.CL / TE.0 request smuggling)
7.5
CVE-2026-88975
Http4s: Ember HTTP/2 buffers a frame's declared payload before checking SETTINGS_MAX_FRAME_SIZE
7.5
CVE-2026-69202
Http4s Ember HTTP/2: unbounded inbound body buffering
