Listen to this Post
How the CVE Works (Technical Details):
The HTTP Client in BlackSheep versions prior to 2.4.6 fails to validate or neutralize CRLF (Carriage Return `\r` Line Feed \n) sequences in header values. In the HTTP protocol, CRLF sequences are used to terminate a line of headers. When an application passes unsanitized user input directly into HTTP client request headers, an attacker can inject these special characters. For example, submitting input containing `\r\n` allows the attacker to insert a new, malicious header or even split the request to create a new one. This is a classic CRLF Injection (CWE-93) attack. The vulnerability is in the client component; the server part delegates response handling to an underlying ASGI server and is not affected. The attack vector is any application that incorporates user-controlled data into the method, URL, or headers of an HTTP client request.
Platform: BlackSheep
Version: <2.4.6
Vulnerability: CRLF Injection
Severity: High
date: 2026-01-15
Prediction: 2026-02-05
What Undercode Say:
curl -H "User-Input-Header: malicious\r\nInjected-Header: value" http://target
echo -e "Testing input: normal_value\r\ninjected_header"
python3 -c "print('Header: value\r\nX-Injected: bad', end='')"
How Exploit:
Attacker controls input for a header (e.g., `X-Forwarded-Host`).
Input: `example.com\r\nX-Admin: true`.
Client constructs request with two headers.
Attacker can poison logs, bypass proxies, or alter request logic.
Protection from this CVE:
Upgrade to version 2.4.6.
Validate/sanitize all user input.
Reject header values containing `\r` or `\n`.
Use allowlists for expected header patterns.
Impact:
Unauthorized HTTP request modification.
Arbitrary header injection.
Potential for request smuggling (client-side).
Security log poisoning.
🎯Let’s Practice Exploiting & Learn Patching For Free:
Sources:
Reported By: github.com
Extra Source Hub:
Undercode

