
Loading

Loading
We use strictly necessary cookies to run this site, and analytics cookies to understand how it's used. See our Privacy Policy for details.
A GitHub-reviewed security advisory, not necessarily under active exploitation the way our CISA KEV advisories are, but a real, disclosed vulnerability in an open-source dependency.
Affected packages
Vulnerable: <= 0.23.34
Patched in 0.23.35
Vulnerable: <= 0.23.34
Patched in 0.23.35
Vulnerable: <= 0.23.34
Patched in 0.23.35
Vulnerable: >= 1.0.0-M1, <= 1.0.0-M46
Patched in 1.0.0-M47
Vulnerable: >= 1.0.0-M1, <= 1.0.0-M46
Patched in 1.0.0-M47
Details
Ember's HTTP/1.1 header parser matches the Transfer-Encoding header value
with a case-sensitive substring test (hValue.contains("chunked")). RFC
9112 §7 requires transfer-coding names to be compared case-insensitively. A
request carrying Transfer-Encoding: Chunked (capital C) is therefore not
recognised as chunked, and Ember falls back to framing by Content-Length
(or zero if absent) while a compliant intermediary frames the same bytes by
chunked encoding. The two parsers then disagree on where the request body
ends, enabling HTTP request smuggling (TE.CL / TE.0).
The same line of code admits two further variants:
Transfer-Encoding: notchunked (an inverse
desync — Ember treats it as chunked while a compliant intermediary
rejects the unknown coding).E2 84 AA decode to U+212A KELVIN SIGN, which
String.equalsIgnoreCase Unicode-case-folds to k, so
Transfer-Encoding: chun<U+212A>ed matches chunked once the comparison
is made case-insensitive without also pinning the decode to ISO-8859-1.Request smuggling when ember-server is an origin behind an intermediary that
honours Transfer-Encoding case-insensitively per RFC, forwards the header
value verbatim, and reuses keep-alive connections to the backend:
Cookie,
Authorization) to the attacker.ember-client shares the same HeaderP.parse on the response path, enabling
response smuggling when http4s is used as a gateway. This is less severe: it
requires a malicious or compromised upstream rather than an anonymous remote
client.
Transfer-Encoding case-insensitively (per RFC) and
forwards the header value without lowercasing itproxy_request_buffering on)Transfer-Encoding value (lowercases the
token) before forwardingEPSS, exploit probability
Low0.48%
estimated chance of real-world exploitation in the next 30 days, higher than 41.4% of every CVE FIRST.org scores
Refreshed 10/30/2026, via FIRST.org's EPSS model, not CVSS, this measures likelihood of exploitation, not how severe it would be.
Talk to us about this
Find out whether this dependency (or others like it) is actually reachable in your codebase.
Get help patching, or building dependency-scanning into your pipeline going forward.
A secure code review or supply chain review finds this before an advisory does.