Resource exhaustion in Http4s

CVE-2026-69218

Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, When Ember receives an HTTP/2 HEADERS or PUSH_PROMISE frame without END_HEADERS, H2Connection buffers the header block and subsequent CONTINUATION fragments without a size bound. A remote peer can keep an incomplete block open and exhaust heap memory before request decoding, affecting an ember-server or ember-client configured with withHttp2. The remediation tracks accumulated size against SETTINGS_MAX_HEADER_LIST_SIZE derived from EmberServerBuilder.maxHeaderSize or EmberClientBuilder.maxResponseHeaderSize, sends GOAWAY when the limit is exceeded, and applies receiveHeadersTimeout to incomplete blocks. This issue is fixed in versions 0.23.35 and 1.0.0-M47.

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H.

Affected products

  • Http4s — versions < 0.23.35, >= 1.0.0-M1, < 1.0.0-M47

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-69218?
CVE-2026-69218 is a high-severity vulnerability in Http4s, classified under Allocation of Resources Without Limits or Throttling. CVSS score: 7.5/10. Published 2026-09-15.
How severe is CVE-2026-69218?
High severity. CVSS v3 base score is 7.5 out of 10.