Skip to main content
← All vulnerabilities
CVE-2026-69204GHSA-8H4C-X2WG-6XP8

Http4s: Ember accepts Transfer-Encoding combined with Content-Length (CL.TE request smuggling)

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: no
  • Technical impact: total

Summary

Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, Ember HTTP/1.1 does not reject messages containing both Transfer-Encoding and Content-Length, so an intermediary and Ember can select different body framing rules. When ember-server is behind a keep-alive intermediary that forwards both headers and frames by Content-Length, an unauthenticated attacker can smuggle a second request, bypass intermediary access controls, poison caches, or cause a victim request to be joined to an attacker-controlled prefix. The shared response parser can also desynchronize an ember-client connection when a malicious or compromised upstream sends both headers. 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: no · Technical impact: total

  3. Record last updated

Affected versions

  • http4s http4s

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

  • org.http4s:http4s-ember-core_2.12Maven

    fixed in 0.23.35

  • org.http4s:http4s-ember-core_2.13Maven

    fixed in 0.23.35

  • org.http4s:http4s-ember-core_3Maven

    fixed in 0.23.35

  • org.http4s:http4s-ember-core_2.13Maven

    From 1.0.0-M1 · fixed in 1.0.0-M47

  • org.http4s:http4s-ember-core_3Maven

    From 1.0.0-M1 · fixed in 1.0.0-M47

References 4

GitHub · http4s/http4s