A AegiFlow
HIGHCVSS 7.4

GHSA-mhvj-jhpq-885v

blaze: Multiple HTTP/1.1 request-smuggling primitives in blaze's Java wire parser

Published
2026-07-24
Modified
2026-07-24
Sources
github-advisory

Summary

### 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 packages

EcosystemPackageAffected versionsFixed versions
Mavenorg.http4s:http4s-blaze-server_2.130.23.18
Mavenorg.http4s:blaze-http_2.130.23.18, 1.0.0-M42
Mavenorg.http4s:blaze-http_30.23.18, 1.0.0-M42

Remediation: Upgrade to 0.23.18 or later.

References

Includes data from the GitHub Advisory Database, licensed under CC-BY 4.0.