Skip to main content
← All vulnerabilities
CVE-2026-69210

Http4s: WebSocket decoder accepts negative length, causing infinite decode loop

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.23.35, 1.0.0-M47
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • http4s http4s

    fixed in 0.23.35; From 1.0.0-M1 · fixed in 1.0.0-M47

References 4

GitHub · http4s/http4s