Description
Rack is a modular Ruby web server interface. From 3.0 until 3.1.23 and 3.2.8, Rack::Request#host_with_port, #base_url, and #url can return an attacker-controlled invalid authority from Host, X-Forwarded-Host, or Forwarded: host= verbatim. Applications without an independent host allowlist that use these methods for absolute URLs, redirects, or origin-dependent checks can emit attacker-chosen delimiters, enabling redirect manipulation, string-based allowlist bypass, or unescaped markup reflection. Rails overrides these methods and is not expected to be affected. This issue is fixed in versions 3.1.23 and 3.2.8.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| rack | rack | >= 3.0, < 3.1.23, >= 3.2, < 3.2.8 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | ruby-rack | 3.2.8-1 | — |
| Debian 13 | ruby-rack | No fix yet | — |
| Debian 12 | ruby-rack | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | ruby-rack | No fix yet | — |
| Ubuntu 26.04 LTS | ruby-rack | No fix yet | — |
| Ubuntu 24.04 LTS | ruby-rack | No fix yet | — |
Show 5 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 22.04 LTS | ruby-rack | No fix yet | — |
| Ubuntu Pro 20.04 LTS | ruby-rack | No fix yet | — |
| Ubuntu Pro 18.04 LTS | ruby-rack | No fix yet | — |
| Ubuntu Pro 16.04 LTS | ruby-rack | No fix yet | — |
| Ubuntu Pro 14.04 LTS | ruby-rack | No fix yet | — |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | logstash-9.3 +2 | No fix yet | — |
| Wolfi rolling | logstash-9.4 +1 | 9.4.9-r2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| RubyGems | rack | >= 3.0.0, < 3.1.23 | 3.1.23 | GHSA-2j8w-xcrc-x985 |
| RubyGems | rack | >= 3.2.0, < 3.2.8 | 3.2.8 | GHSA-2j8w-xcrc-x985 |
References
- https://github.com/rack/rack/security/advisories/GHSA-2j8w-xcrc-x985
- https://github.com/rack/rack/commit/4380381a56dc52556a436d6d794c8e18dc8b0565
- https://github.com/rack/rack/commit/49386f460286b7346c7003b69a839de782cc8a39
- https://github.com/rack/rack/releases/tag/v3.1.23
- https://github.com/rack/rack/releases/tag/v3.2.8