Vulnerability · Published Sep 15, 2026 · Assigned by GitHub_M
CVE-2026-69210Http4s: WebSocket decoder accepts negative length, causing infinite decode loop
High 7.5
In plain English
A high-severity infinite loop 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).
Official description
Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, WebSocket FrameTranscoder.bodyLength rejects extended payload lengths above Integer.MAX_VALUE but permits negative 64-bit lengths. A remote client that completes a WebSocket handshake through an Ember server can send such a frame, causing the decoder to return an empty frame without advancing its input. The decode loop then runs indefinitely, pins a worker at full CPU, and grows an ArrayBuffer without bound, resulting in denial of service. This issue is fixed in versions 0.23.35 and 1.0.0-M47.
Affected products (as reported)
Weakness: CWE-835, CWE-1284 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/http4s/http4s/security/advisories/GHSA-3j86-pj9g-jchr x_refsource_CONFIRM
- https://github.com/http4s/http4s/commit/c7d3ef90dc2ed1cd464968ab1b34f2f1762ddae2 x_refsource_MISC
- https://github.com/http4s/http4s/releases/tag/v0.23.35 x_refsource_MISC
- https://github.com/http4s/http4s/releases/tag/v1.0.0-M47 x_refsource_MISC