Rack::Directory Path Escape Prior to 2.2.22/3.1.20/3.2.5
CVE-2026-22860 Published on February 18, 2026
Rack has a Directory Traversal via Rack:Directory
Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, `Rack::Directory`s path check used a string prefix match on the expanded path. A request like `/../root_example/` can escape the configured root if the target path starts with the root string, allowing directory listing outside the intended root. Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.
Vulnerability Analysis
CVE-2026-22860 is exploitable with network access, and does not require authorization privileges or user interaction. This vulnerability is considered to have a low attack complexity. The potential impact of an exploit of this vulnerability is considered to have a high impact on confidentiality, with no impact on integrity and availability.
Weakness Types
What is a Directory traversal Vulnerability?
The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
CVE-2026-22860 has been classified to as a Directory traversal vulnerability or weakness.
Exposure of Information Through Directory Listing
A directory listing is inappropriately exposed, yielding potentially sensitive information to attackers. A directory listing provides an attacker with the complete index of all the resources located inside of the directory. The specific risks and consequences vary depending on which files are listed and accessible.
Products Associated with CVE-2026-22860
You can be notified by email with stack.watch whenever vulnerabilities like CVE-2026-22860 are published in Rack:
Affected Versions
rack:- Version < 2.2.22 is affected.
- Version >= 3.0.0.beta1, < 3.1.20 is affected.
- Version >= 3.2.0, < 3.2.5 is affected.
Vulnerable Packages
The following package name and versions may be associated with CVE-2026-22860
| Package Manager | Vulnerable Package | Versions | Fixed In |
|---|---|---|---|
| rubygems | rack | < 2.2.22 | 2.2.22 |
| rubygems | rack | >= 3.0.0.beta1, < 3.1.20 | 3.1.20 |
| rubygems | rack | >= 3.2.0, < 3.2.5 | 3.2.5 |
Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.