Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-69210— Http4s: WebSocket decoder accepts negative length, causing infinite decode loop

Quick assessment

Affected
http4s http4s
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Http4s 是用于 HTTP 服务的 Scala 接口。在 0.23.35 和 1.0.0-M47 版本之前,WebSocket 的 方法会拒绝超过 的扩展载荷长度,但允许负的 64 位长度值。一个远程客户端若通过 Ember 服务器完成 WebSocket 握手,即可发送此类帧,导致解码器在不推进输入数据的情况下返回一个空帧。随后的解码循环将无限运行,使一个工作线程(worker)持续占用 100% CPU,同时 无限制地增长,最终造成拒绝服务(DoS)攻击。该问题已在 0.23.35 和 1.0.0-M47

CVSS 7.5 · High

Affected Version Matrix 2

VendorProduct Version RangeStatus
http4s http4s < 0.23.35 affected
>= 1.0.0-M1, < 1.0.0-M47 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-69210

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Http4s: WebSocket decoder accepts negative length, causing infinite decode loop
Source: CVE Program / CVE List V5
Vulnerability 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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
不可达退出条件的循环(无限循环)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
http4s http4s < 0.23.35 -

II. Public POCs for CVE-2026-69210

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-69210

登录查看更多情报信息。

Patches & Fixes for CVE-2026-69210 (1)

Vendor Advisories for CVE-2026-69210 (1)

Vendor Pages for CVE-2026-69210 (2)

Same Patch Batch · http4s · 2026-09-15 · 18 CVEs total

CVE-2026-69204 9.2 CRITICAL Http4s: Ember accepts Transfer-Encoding combined with Content-Length (CL.TE request smuggl
CVE-2026-69217 8.7 HIGH Http4s: Ember Server accepts duplicate Content-Length headers
CVE-2026-69205 8.7 HIGH Http4s: Ember Transfer-Encoding value parsing (TE.CL / TE.0 request smuggling)
CVE-2026-69208 7.5 HIGH Http4s: DigestAuth nonce map grows unbounded
CVE-2026-88975 7.5 HIGH Http4s: Ember HTTP/2 buffers a frame's declared payload before checking SETTINGS_MAX_FRAME
CVE-2026-69202 7.5 HIGH Http4s Ember HTTP/2: unbounded inbound body buffering
CVE-2026-69218 7.5 HIGH Http4s Ember HTTP/2: unbounded continuation frame accumulation
CVE-2026-69213 7.5 HIGH Http4s Ember HTTP/2: unbounded outbound frame queue
CVE-2026-69203 7.5 HIGH Http4s Ember HTTP/2: does not enforce SETTINGS_MAX_CONCURRENT_STREAMS
CVE-2026-69209 7.5 HIGH Http4s: WebSocket decoder accepts unbounded message sizes
CVE-2026-69214 6.8 MEDIUM Http4s: CookieJar middleware accepts arbitrary Set-Cookie domain
CVE-2026-69215 6.8 MEDIUM Http4s: CookieJar middleware matches by substring, leaking cookies cross-origin
CVE-2026-69201 5.9 MEDIUM Http4s: ResourceService and Webjar Service path escape via percent-encoded separators
CVE-2026-69212 5.9 MEDIUM Http4s: FollowRedirect middleware leaks credentials over https->http same-authority redire
CVE-2026-69206 5.9 MEDIUM Http4s: DigestAuth allows replay of captured requests
CVE-2026-69216 5.4 MEDIUM Http4s: Ember chunk parser lenience (TE.TE request smuggling)
CVE-2026-69211 4.8 MEDIUM Http4s: Set-Cookie rendering does not escape attribute delimiters

IV. Related Vulnerabilities

V. Comments for CVE-2026-69210

No comments yet


Leave a comment