Path Traversal in Rack

CVE-2026-22860

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 class: Path Traversal (Directory Traversal)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N.

EPSS exploit prediction

EPSS: 0.008 (54.6th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 55th percentile — 54.6% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-22860: held from 0.007 to 0.008.

EPSS over last 30 days · oldest: 0.007 · newest: 0.008 · change: +0.001

Affected products

  • Rack — versions < 2.2.22, >= 3.0.0.beta1, < 3.1.20, >= 3.2.0, < 3.2.5

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-22860?
CVE-2026-22860 is a high-severity vulnerability in Rack, classified under Path Traversal. CVSS score: 7.5/10. Published 2026-02-18.
How severe is CVE-2026-22860?
High severity. CVSS v3 base score is 7.5 out of 10.