CVE Catalog

CVE-2026-25500

MediumCVSS 5.4
Published: Updated: Translated: NVD NIST

Summary

Rack, a modular Ruby web server interface, prior to versions 2.2.22, 3.1.20, and 3.2.5, generates an HTML directory index where each file entry is a clickable link. If a file exists on disk whose basename starts with the javascript: scheme (e.g., javascript:alert(1)), the generated anchor's href is exactly javascript:alert(1), allowing JavaScript execution when clicked.

Risk Assessment

An attacker could place a malicious file in a directory served by Rack::Directory and trick a user into clicking the link, leading to arbitrary JavaScript execution in the victim's browser (XSS).

Recommendation

Update Rack to version 2.2.22, 3.1.20, or 3.2.5 (or later) which contain the fix. Avoid serving directories with untrusted filenames.

Other vulnerabilities in Rack

See all
Original NVD description (English source)

Rack is a modular Ruby web server interface. Prior to versions 2.2.22, 3.1.20, and 3.2.5, `Rack::Directory` generates an HTML directory index where each file entry is rendered as a clickable link. If a file exists on disk whose basename starts with the `javascript:` scheme (e.g. `javascript:alert(1)`), the generated index contains an anchor whose `href` is exactly `javascript:alert(1)`. Clicking the entry executes JavaScript in the browser (demonstrated with `alert(1)`). Versions 2.2.22, 3.1.20, and 3.2.5 fix the issue.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS