Vulnerability GHSA-8f3q-3jmv-7prw

High Risk
HIGH RISK
CVSS Score: 7.5
Score Range: 7.0–8.9
High severity vulnerabilities (CVSS 7.0–8.9). Serious vulnerabilities that should be prioritized soon after critical fixes.
3 hours ago
September 15, 2026 at 08:00 PM UTC
Http4s Ember HTTP/2 has an unbounded outbound frame queue
0.10.0
0.10.0

Summary

Http4s Ember HTTP/2 has an unbounded outbound frame queue

Details

Ember's HTTP/2 connection serializes all outgoing frames through a single unbounded queue drained by one writer fiber (writeLoop). When the write side stalls, any frames the connection keeps producing accumulate in that queue without limit. The peer can drive this cheaply because the connection emits a control frame in response to inbound frames it does not flow-control: one PING ACK per PING, one SETTINGS ACK per SETTINGS, and a WINDOW_UPDATE per inbound DATA. A single unauthenticated connection can therefore exhaust heap and OOM the process.

This affects an ember server (malicious client) and an ember client (malicious/compromised server that floods the client and stops reading its ACKs).

Impact

Unauthenticated remote denial of service (OOM) against any ember server built .withHttp2, from a single connection, at negligible attacker cost (tiny control frames). Also affects an ember client talking to a hostile HTTP/2 server.

Preconditions

  • Ember server or client built .withHttp2, speaking to a hostile or compromised peer.

Workarounds

  • Disable HTTP/2 (do not call .withHttp2).

Timeline

Published
3 hours ago
September 15, 2026 at 08:00 PM UTC
Fixed (0.23.35)
Unknown
Unknown
Fixed (0.23.35)
Unknown
Unknown
Fixed (1.0.0-M47)
Unknown
Unknown
Fixed (0.23.35)
Unknown
Unknown
Fixed (1.0.0-M47)
Unknown
Unknown
Last Modified
2 hours ago
September 15, 2026 at 08:15 PM UTC