CVE-2026-25500
February 18, 2026
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.
Affected Packages
https://github.com/rack/rack.git (GITHUB):
Affected version(s) >=v3.0.1 <v3.1.20Fix Suggestion:
Update to version v3.1.20https://github.com/rack/rack.git (GITHUB):
Affected version(s) >=v2.0.9.2 <v2.2.22Fix Suggestion:
Update to version v2.2.22https://github.com/rack/rack.git (GITHUB):
Affected version(s) >=v3.2.0 <v3.2.5Fix Suggestion:
Update to version v3.2.5rack (RUBY):
Affected version(s) >=0.1.0 <2.2.22Fix Suggestion:
Update to version 2.2.22rack (RUBY):
Affected version(s) >=3.0.0.beta1 <3.1.20Fix Suggestion:
Update to version 3.1.20rack (RUBY):
Affected version(s) >=3.2.0 <3.2.5Fix Suggestion:
Update to version 3.2.5Related Resources (5)
Do you need more information?
Contact UsCVSS v4
Base Score:
5.1
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
LOW
User Interaction
PASSIVE
Vulnerable System Confidentiality
LOW
Vulnerable System Integrity
LOW
Vulnerable System Availability
NONE
Subsequent System Confidentiality
LOW
Subsequent System Integrity
LOW
Subsequent System Availability
NONE
CVSS v3
Base Score:
5.4
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
LOW
User Interaction
REQUIRED
Scope
CHANGED
Confidentiality
LOW
Integrity
LOW
Availability
NONE
Weakness Type (CWE)
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
EPSS
Base Score:
0.02