Rack
cpe:2.3:a:rack:rack:*:*:*:*:ruby:*:*, +3 more
- < 2.2.11
- >= 3.0, < 3.0.12
- >= 3.1, < 3.1.10
A log injection vulnerability has been identified in the Rack web application interface for Ruby, specifically within the CommonLogger component. This issue affects Rack versions prior to 2.2.11, as well as versions 3.0.0 through 3.0.12 and 3.1.0 through 3.1.10. The vulnerability arises when a server allows usernames containing newline characters and whitespace to be logged. An attacker can exploit this by injecting a username with CRLF characters, disrupting the log format or introducing false entries, which could obscure genuine activity or inject harmful data into the logs.
Exploitation of this vulnerability allows for manipulation of log entries, including the injection of fraudulent data or the disruption of log formats, which could obscure real activity or introduce malicious content into log files.
To reproduce this vulnerability, create a user account with a username that includes CRLF and whitespace characters. After logging in, the injected username will be logged by Rack::CommonLogger, including the CRLF characters. This can be verified by checking the log file, which will show the username formatted with the injected newline characters, disrupting the log entry.
Users are advised to update Rack to version 2.2.11, 3.0.12, or 3.1.10, all of which contain the necessary fix.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.