Vulnerability · Published Sep 15, 2026 · Assigned by GitHub_M

CVE-2026-88975Http4s: Ember HTTP/2 buffers a frame's declared payload before checking SETTINGS_MAX_FRAME_SIZE

High 7.5

In plain English

A high-severity uncontrolled resource consumption in http4s from http4s. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 50% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.5High
Exploit odds (30 days)0.6%top 49.6% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

Http4s is a Scala interface for HTTP services. Prior to 0.23.37 and 1.0.0-M48, Ember’s HTTP/2 read loop parses a frame’s 24-bit declared length but waits to buffer the entire payload before comparing it with SETTINGS_MAX_FRAME_SIZE. An unauthenticated peer can declare a payload near 16 MiB on a connection where Ember advertised 16 KiB and either complete or slowly stream it, causing up to 1024-fold memory amplification per connection before processFrame can reject the frame. The shared H2Connection.readLoop affects withHttp2 servers and clients, while HTTP/2-disabled configurations are unaffected, and the patch rejects oversized frames before buffering their payloads. This issue is fixed in versions 0.23.37 and 1.0.0-M48.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Mavenorg.http4s:http4s-ember-core_2.120.23.37GHSA-gq9p-f254-h286
Mavenorg.http4s:http4s-ember-core_2.130.23.37GHSA-gq9p-f254-h286
Mavenorg.http4s:http4s-ember-core_2.131.0.0-M48GHSA-gq9p-f254-h286
Mavenorg.http4s:http4s-ember-core_30.23.37GHSA-gq9p-f254-h286
Mavenorg.http4s:http4s-ember-core_31.0.0-M48GHSA-gq9p-f254-h286

Affected products (as reported)

VendorProductVersions
http4s http4s < 0.23.37>= 1.0.0-M1, < 1.0.0-M48

Weakness: CWE-400 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

References