CVE-2026-22860
HIGH7.5EPSS 0.12%ruby-rack - security update
Published: 2/17/2026Modified: 4/28/2026
Description
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.
Affected packages (4)
- Debian/ruby-rackfrom 0, < 2.1.4-3+deb11u5
- Debian/ruby-rackfrom 0, < 2.1.4-3+deb11u5
- Debian/ruby-rackfrom 0, < 2.2.22-0+deb12u1
- RubyGems/rackfrom 0, < 2.2.22
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | HIGH7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
References (6)
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2026-22860
- ADVISORYhttps://security-tracker.debian.org/tracker/CVE-2026-22860
- PATCHhttps://github.com/rack/rack
- WEBhttps://github.com/rack/rack/commit/75c5745c286637a8f049a33790c71237762069e7
- WEBhttps://github.com/rack/rack/security/advisories/GHSA-mxw3-3hh2-x2mh
- WEBhttps://github.com/rubysec/ruby-advisory-db/blob/master/gems/rack/CVE-2026-22860.yml