Read the docs
TI-2026-60307 Aliases CVE-2026-88975GHSA-gq9p-f254-h286

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

Priority MEDIUM 40CWE-400Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-400.

Summary

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.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.0063 50th percentileScored 2026-11-07
Fix Fixed http4s (http4s): 0.23.37, 1.0.0-M48org.http4s:http4s-ember-core_2.13 (Maven): 0.23.37, 1.0.0-M48+2 more products

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
http4shttp4sbefore 0.23.37; 1.0.0-M1 to before 1.0.0-M480.23.37, 1.0.0-M48Patch availableCNA
—org.http4s:http4s-ember-core_2.13 (Maven)before 0.23.370.23.37Patch availableGHSA-gq9p-f254-h286
—org.http4s:http4s-ember-core_2.12 (Maven)before 0.23.370.23.37Patch availableGHSA-gq9p-f254-h286
—org.http4s:http4s-ember-core_3 (Maven)before 0.23.370.23.37Patch availableGHSA-gq9p-f254-h286
—org.http4s:http4s-ember-core_2.13 (Maven)1.0.0-M1 to before 1.0.0-M481.0.0-M48Patch availableGHSA-gq9p-f254-h286
—org.http4s:http4s-ember-core_3 (Maven)1.0.0-M1 to before 1.0.0-M481.0.0-M48Patch availableGHSA-gq9p-f254-h286
  • http4s Vendorhttp4s Affected before 0.23.37; 1.0.0-M1 to before 1.0.0-M48 Fixed in 0.23.37, 1.0.0-M48 Patch available CNA
  • org.http4s:http4s-ember-core_2.13 (Maven) Vendor— Affected before 0.23.37 Fixed in 0.23.37 Patch available GHSA-gq9p-f254-h286
  • org.http4s:http4s-ember-core_2.12 (Maven) Vendor— Affected before 0.23.37 Fixed in 0.23.37 Patch available GHSA-gq9p-f254-h286
  • org.http4s:http4s-ember-core_3 (Maven) Vendor— Affected before 0.23.37 Fixed in 0.23.37 Patch available GHSA-gq9p-f254-h286
  • org.http4s:http4s-ember-core_2.13 (Maven) Vendor— Affected 1.0.0-M1 to before 1.0.0-M48 Fixed in 1.0.0-M48 Patch available GHSA-gq9p-f254-h286
  • org.http4s:http4s-ember-core_3 (Maven) Vendor— Affected 1.0.0-M1 to before 1.0.0-M48 Fixed in 1.0.0-M48 Patch available GHSA-gq9p-f254-h286

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:typelevel:http4s:*:*:*:*:*:*:*:*——http4s
  • cpe:2.3:a:typelevel:http4s:*:*:*:*:*:*:*:* Versions — — ·http4s

Remediation

  • Fix · CNA http4s (http4s) Fixed in 0.23.37, 1.0.0-M48
  • Fix · GHSA-gq9p-f254-h286 org.http4s:http4s-ember-core_2.13 (Maven) Fixed in 0.23.37 Advisory →
  • Fix · GHSA-gq9p-f254-h286 org.http4s:http4s-ember-core_2.12 (Maven) Fixed in 0.23.37 Advisory →
  • Fix · GHSA-gq9p-f254-h286 org.http4s:http4s-ember-core_3 (Maven) Fixed in 0.23.37 Advisory →
  • Fix · GHSA-gq9p-f254-h286 org.http4s:http4s-ember-core_2.13 (Maven) Fixed in 1.0.0-M48 Advisory →
  • Fix · GHSA-gq9p-f254-h286 org.http4s:http4s-ember-core_3 (Maven) Fixed in 1.0.0-M48 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-88975
  2. 2026-10-03 Alias added: GHSA-gq9p-f254-h286
  3. 2026-10-28 EPSS moved to the 50th–90th percentile

References

  • TI-2022-13223 mTLS client verification is skipped in fs2 on Node.js CVSS 3.1CRITICAL 9.8
  • TI-2023-08714 Http4s has fatal error parsing User-Agent and Server headers CVSS 3.1HIGH 7.5
  • TI-2022-06031 Hash collision in typelevel jawn CVSS 3.1HIGH 7.5
  • TI-2025-37261 Http4s vulnerable to HTTP Request Smuggling due to improper handling of HTTP trailer section CVSS 4.0MEDIUM 6.3
  • TI-2026-44185 http4s-scala-xml has an XML External Entity (XXE) processing issue CVSS 3.1CRITICAL 9.3
  • TI-2020-04336 Local file inclusion vulnerability in http4s CVSS 3.1HIGH 7.6
See all 36 →

Sources