crlf-injection
CRLF injection playbook. Use when user input reaches HTTP response headers, Location redirects, Set-Cookie values, or log files where carriage-return/line-feed characters can split or inject content.
By yaklang · 2,997 installs
npx skills add yaklang/hack-skills --skill crlf-injection
Source repository · Upstream listing
SKILL: CRLF Injection — Expert Attack Playbook
AI LOAD INSTRUCTION : CRLF injection (HTTP response splitting) techniques. Covers header injection, response body injection via double CRLF, XSS escalation, cache poisoning, and encoding bypass. Often overlooked by scanners but chains into XSS, session fixation, and cache attacks.
0. RELATED ROUTING
[ghost bits cast attack](../ghost bits cast attack/SKILL.md) when the target is a Java service and %0D%0A / \r\n encodings are WAF blocked — substituting 瘍 (U+760D, low byte \r ) and 瘊 (U+760A, low byte \n ) injects a real CRLF through Angus Mail / Jakarta Mail SMTP, Apache HttpClient headers, JDK HttpServer responses, and ActiveJ HTTP (re enables Jira CVE 2025 57733 and JDK CVE 2026 21933 classes)
1. CORE CONCEPT
CRLF = \r\n (Carriage Return + Line Feed, %0D%0A ). HTTP headers are separated by CRLF. If user input is reflected in a response header without sanitization, injecting CRLF characters creates new headers or even a response body.
2. DETECTION
Basic Probe
Double CRLF — Body Injection
Two consecutive CRLF sequences end headers and start body:
3. EXPLOITATION SCENARIOS
Session Fixation via Set Cookie
XSS via Response Body
Cache Poisoning
If the response is cached by a CDN or proxy, injected headers/body are served to all users:
Log Injection
CRLF in log visible fields (User Agent, Referer) can forge log entries:
4. FILTER BYPASS
Filter Bypass
Blocks %0D%0A Try %0D alone, %0A alone, or %E5%98%8A%E5%98%8D (Unicode)
URL decodes once Double encode: %250D%250A
Strips \r\n literally Use URL encoded form
Blocks in value only Inject in parameter name
5. REAL WORLD EXPLOITATION CHAINS
CRLF + Session Fixation
CRLF → XSS via Double CRLF Body Injection
CRLF in 302 Location → Redirect Hijack
6. COMMON VULNERABLE PATTERNS
7. TESTING CHECKLIST