blaze: Multiple HTTP/1.1 request-smuggling primitives in blaze's Java wire parser
Summary
Five independent HTTP/1.1 conformance laxities in blaze's hand-written Java parser (http/src/main/java/org/http4s/blaze/http/parser/) cause request-boundary disagreement with a stricter intermediary. All are reachable from a default BlazeServerBuilder with no non-default configuration.
Impact
Actual exploitability depends on the fronting proxy — a boundary disagreement requires a pair of parsers that disagree. Where the proxy forwards the malformed bytes and derives a different message boundary, the consequences are the standard set: front-end ACL/auth bypass, response-queue poisoning on pooled backend connections, and cache poisoning. Risk concentrates on lenient or legacy intermediaries.
Workarounds
Deploy behind an RFC-strict reverse proxy (nginx, HAProxy, Envoy, ALB) that rejects or re-serializes malformed requests at the edge; this neutralizes most of these for deployments that cannot upgrade immediately.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Java / Kotlin (Maven) | org.http4s:blaze-http_2.13 | < 0.23.18, >= 1.0.0-M1, < 1.0.0-M42 | 0.23.18, 1.0.0-M42 |
| Java / Kotlin (Maven) | org.http4s:blaze-http_3 | < 0.23.18, >= 1.0.0-M1, < 1.0.0-M42 | 0.23.18, 1.0.0-M42 |
| Java / Kotlin (Maven) | org.http4s:http4s-blaze-server_2.13 | < 0.23.18 | 0.23.18 |
References
- https://github.com/http4s/blaze/security/advisories/GHSA-mhvj-jhpq-885v
- https://github.com/http4s/blaze/commit/3f7c022e306631b006dcb43a1d7f65c0d1966f17
- https://github.com/http4s/blaze/commit/4eec2007806aa9acfefb00ebb636ddc39a147a96
- https://github.com/http4s/blaze/commit/927b67753a78c13c4445dac9307f511f5c4878c3
- https://github.com/http4s/blaze/commit/a54bc9cd31758335c7f24e29763622fd03fcf734
- https://github.com/http4s/blaze/commit/c47d9675f87603f11b32a11d503626bdf9be5c7a
- https://github.com/http4s/blaze/commit/e871ebb1d27f50c98fd56988526ce42d0fee74d6
- https://github.com/http4s/blaze
- https://github.com/http4s/blaze/releases/tag/v0.23.18
- https://github.com/http4s/blaze/releases/tag/v1.0.0-M42
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N- Weakness (CWE)
CWE-444- Platform
- Java / Kotlin (Maven)
- Package
org.http4s:blaze-http_2.13, org.http4s:blaze-http_3, org.http4s:http4s-blaze-server_2.13- Disclosed
- 24.07.2026
- Updated
- 11.10.2026 12:22
Sources and licenses
OSV / GitHub Advisory Database - GHSA-mhvj-jhpq-885v - CC BY 4.0
Vulnerability history: org.http4s:blaze-http_2.13
All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 2
- First → latest
- 07.2026 07.2026
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- High 2
Disclosures per year
- 2026: 2
-
blaze: Multiple HTTP/1.1 request-smuggling primitives in blaze's Java wire parser this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.