First published: Mon Mar 10 2025(Updated: )
## Summary `Rack::Static` can serve files under the specified `root:` even if `urls:` are provided, which may expose other files under the specified `root:` unexpectedly. ## Details The vulnerability occurs because `Rack::Static` does not properly sanitize user-supplied paths before serving files. Specifically, encoded path traversal sequences are not correctly validated, allowing attackers to access files outside the designated static file directory. ## Impact By exploiting this vulnerability, an attacker can gain access to all files under the specified `root:` directory, provided they are able to determine then path of the file. ## Mitigation - Update to the latest version of Rack, or - Remove usage of `Rack::Static`, or - Ensure that `root:` points at a directory path which only contains files which should be accessed publicly. It is likely that a CDN or similar static file server would also mitigate the issue.
Credit: security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
rubygems/rack | >=3.1<3.1.12 | 3.1.12 |
rubygems/rack | >=3.0<3.0.14 | 3.0.14 |
rubygems/rack | <2.2.13 | 2.2.13 |
debian/ruby-rack | <=2.1.4-3+deb11u2<=2.2.6.4-1+deb12u1 | 2.1.4-3+deb11u3 2.2.13-1~deb12u1 3.1.12-1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2025-27610 has a severity rating that indicates it may expose unintended files, which can lead to information disclosure.
To fix CVE-2025-27610, upgrade to Rack versions 3.1.12, 3.0.14, or 2.2.13 and ensure proper path sanitization.
CVE-2025-27610 affects Rack versions prior to 3.1.12, 3.0.14, and all versions before 2.2.13.
CVE-2025-27610 is a path traversal vulnerability that arises from improper handling of file paths.
Yes, CVE-2025-27610 can lead to data leakage by exposing files in the specified root that should not be accessible.