CVE-2026-34835

NameCVE-2026-34835
DescriptionRack is a modular Ruby web server interface. From versions 3.0.0.beta1 to before 3.1.21, and 3.2.0 to before 3.2.6, Rack::Request parses the Host header using an AUTHORITY regular expression that accepts characters not permitted in RFC-compliant hostnames, including /, ?, #, and @. Because req.host returns the full parsed value, applications that validate hosts using naive prefix or suffix checks can be bypassed. This can lead to host header poisoning in applications that use req.host, req.url, or req.base_url for link generation, redirects, or origin validation. This issue has been patched in versions 3.1.21 and 3.2.6.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
ruby-rack (PTS)bullseye2.1.4-3+deb11u2fixed
bullseye (security)2.1.4-3+deb11u6fixed
bookworm2.2.22-0+deb12u1fixed
bookworm (security)2.2.22-0+deb12u2fixed
trixie (security), trixie3.1.20-0+deb13u1vulnerable
forky3.2.6-2fixed
sid3.2.6-3fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
ruby-racksourceexperimental3.2.6-1
ruby-racksourcebullseye(not affected)
ruby-racksourcebookworm(not affected)
ruby-racksource(unstable)3.2.6-2

Notes

[bookworm] - ruby-rack <not-affected> (Vulnerable code introduced later)
[bullseye] - ruby-rack <not-affected> (Vulnerable code introduced later)
https://github.com/rack/rack/security/advisories/GHSA-g2pf-xv49-m2h5
Fixed by: https://github.com/rack/rack/commit/224662608dad63b31ba138d7e76e4ca8e42e9fc6 (v3.2.6)
Fixed by: https://github.com/rack/rack/commit/c49558af795b4c1978d16db071c8344db05a2b0d (v3.1.21)

Search for package or bug name: Reporting problems