CVE-2026-34785

Rack: Local file inclusion in `Rack::Static` via URL Prefix Matching

Published Apr 2, 2026 CVSS 3.1 · 7.5 High EPSS < 1% KEV · Not listed
Description
Rack is a modular Ruby web server interface. Prior to versions 2.2.23, 3.1.21, and 3.2.6, Rack::Static determines whether a request should be served as a static file using a simple string prefix check. When configured with URL prefixes such as "/css", it matches any request path that begins with that string, including unrelated paths such as "/css-config.env" or "/css-backup.sql". As a result, files under the static root whose names merely share the configured prefix may be served unintentionally, leading to information disclosure. This issue has been patched in versions 2.2.23, 3.1.21, and 3.2.6.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4706-1 ruby-rack security update
Debian DSA Debian DSA DSA-6492-1 ruby-rack security update
Github GHSA Github GHSA GHSA-h2jq-g4cq-5ppq Rack::Static prefix matching can expose unintended files under the static root
Ubuntu USN Ubuntu USN USN-8182-1 Rack vulnerabilities
Ubuntu USN Ubuntu USN USN-8989-1 Rack vulnerabilities
History
Type Values Removed Values Added
CPEs cpe:2.3:a:rack:rack:*:*:*:*:*:ruby:*:*
Type Values Removed Values Added
First Time appeared Rack
Rack rack
Vendors & Products Rack
Rack rack
Type Values Removed Values Added
Description Rack is a modular Ruby web server interface. Prior to versions 2.2.23, 3.1.21, and 3.2.6, Rack::Static determines whether a request should be served as a static file using a simple string prefix check. When configured with URL prefixes such as "/css", it matches any request path that begins with that string, including unrelated paths such as "/css-config.env" or "/css-backup.sql". As a result, files under the static root whose names merely share the configured prefix may be served unintentionally, leading to information disclosure. This issue has been patched in versions 2.2.23, 3.1.21, and 3.2.6.
Title Rack: Local file inclusion in `Rack::Static` via URL Prefix Matching
Weaknesses CWE-187
CWE-200
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jul 15, 2026, 1:03 AM
Reserved
Mar 30, 2026, 7:54 PM
Status
Modified
Published
Apr 2, 2026, 5:16 PM
Modified
Jul 24, 2026, 9:10 PM
Severity
Important
Public date
Apr 2, 2026, 4:44 PM