Cyber Resilience

CVE-2025-25184

Rack ≤ 2.2.11

Public PoC
Published
12 February 2025
Modified
03 November 2025
Patch / advisory
CVSS Score v4 5.7
Click a component to see what it means
Raw vectorCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.011 64th percentile
Risk Priority 36 floored blend · peak EPSS

Summary

CVE-2025-25184 is a medium-severity CRLF Injection (CWE-93) vulnerability in Rack Rack. Its CVSS base score is 5.7 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Content Injection (T1659); ranked in the top 36% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Rack provides an interface for developing web applications in Ruby. Prior to versions 2.2.11, 3.0.12, and 3.1.10, Rack::CommonLogger can be exploited by crafting input that includes newline characters to manipulate log entries. The supplied proof-of-concept demonstrates injecting malicious content into…

more

logs. When a user provides the authorization credentials via Rack::Auth::Basic, if success, the username will be put in env['REMOTE_USER'] and later be used by Rack::CommonLogger for logging purposes. The issue occurs when a server intentionally or unintentionally allows a user creation with the username contain CRLF and white space characters, or the server just want to log every login attempts. If an attacker enters a username with CRLF character, the logger will log the malicious username with CRLF characters into the logfile. Attackers can break log formats or insert fraudulent entries, potentially obscuring real activity or injecting malicious data into log files. Versions 2.2.11, 3.0.12, and 3.1.10 contain a fix.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1659 Content Injection Initial Access
Adversaries may gain access and continuously communicate with victims by injecting malicious content into systems through online network traffic.
T1070 Indicator Removal Stealth
Adversaries may selectively delete or modify artifacts generated to reduce indications of their presence and blend in with legitimate activity.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2025-27111Same product: Rack Rack
CVE-2026-26962Same product: Rack Rack
CVE-2026-25500Same product: Rack Rack
CVE-2026-34763Same product: Rack Rack
CVE-2026-34835Same product: Rack Rack
CVE-2026-34830Same product: Rack Rack
CVE-2026-32762Same product: Rack Rack
CVE-2026-34786Same product: Rack Rack
CVE-2026-26961Same product: Rack Rack
CVE-2026-22860Same product: Rack Rack

Affected Assets

rack
rack
≤ 2.2.11 · 3.0.0 — 3.0.12 · 3.1.0 — 3.1.10

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V4.2.4

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation can discover missing or incorrect output neutralization when log messages are constructed from untrusted input.

Input validation directly stops untrusted data containing CRLF sequences from reaching the component that treats CRLF as a delimiter.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly require input neutralization and validation to block CRLF injection.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect CRLF flaws but does not itself implement the neutralization.

A.8.15 Logging partial match
degrades

Logging control directly requires proper log generation and handling, which mitigates improper output neutralization.

finds

Monitoring activities rely on trustworthy logs but do not ensure log message integrity.

prevents

Secure development lifecycle mandates input validation and output encoding that directly prevents CRLF injection.

prevents

Application security requirements include rules for neutralizing special characters such as CRLF in inputs.

prevents

Secure architecture principles encourage safe handling of untrusted data but do not prescribe specific CRLF controls.

References