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.

Project Subscriptions

No data.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-h2jq-g4cq-5ppq Rack::Static prefix matching can expose unintended files under the static root
Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

Thu, 02 Apr 2026 20:30:00 +0000

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'}


Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-04-02T18:59:08.828Z

Reserved: 2026-03-30T19:54:55.556Z

Link: CVE-2026-34785

cve-icon Vulnrichment

Updated: 2026-04-02T18:59:03.674Z

cve-icon NVD

Status : Received

Published: 2026-04-02T17:16:24.873

Modified: 2026-04-02T17:16:24.873

Link: CVE-2026-34785

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.

Weaknesses