Skip to content
OpenAdvisories

Description

Rack is a modular Ruby web server interface. Prior to 2.2.25, 3.1.23, and 3.2.8, Rack::Static serves a path after Utils.clean_path_info normalization but evaluates header_rules against a path that is only URL-decoded. An unauthenticated attacker can request a known file through raw or percent-encoded dot segments and receive it without path-specific security headers such as Content-Disposition or Content-Security-Policy. Applications that do not use path-specific header_rules are not affected. This issue is fixed in versions 2.2.25, 3.1.23, and 3.2.8.

Affected products

VendorProductAffectedFixed
rack rack < 2.2.25, >= 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.

ReleasePackageFixed inAdvisory
Debian 14 ruby-rack 3.2.8-1 —
Debian 13 ruby-rack No fix yet —
Debian 12 ruby-rack No fix yet —
ReleasePackageFixed inAdvisory
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)
ReleasePackageFixed inAdvisory
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

ReleasePackageFixed inAdvisory
Wolfi rolling logstash-9.3 +2 No fix yet —
Wolfi rolling logstash-9.4 +1 9.4.9-r2 —
Wolfi rolling ruby3.3-rack-2.2 +2 2.2.25-r0 —

Affected packages

EcosystemPackageAffectedFixedRecord
RubyGems rack < 2.2.25 2.2.25 GHSA-wvg4-6p58-3gh3
RubyGems rack >= 3.0.0, < 3.1.23 3.1.23 GHSA-wvg4-6p58-3gh3
RubyGems rack >= 3.2.0, < 3.2.8 3.2.8 GHSA-wvg4-6p58-3gh3

References