hunt-crlf-injection

Tests whether user input can alter HTTP response headers, cookies, or message boundaries.

10|3|Updated Aug 10, 2026
One-click install
npx skills add https://github.com/baiqigo/baiqi-redteam-lab --skill hunt-crlf-injection-baiqigo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: hunt-crlf-injection
Source: https://github.com/baiqigo/baiqi-redteam-lab/tree/main/.agents/skills/hunt-crlf-injection
Command: npx skills add https://github.com/baiqigo/baiqi-redteam-lab --skill hunt-crlf-injection-baiqigo

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Security testers need a disciplined, evidence-gated method to verify whether in-scope inputs can inject CRLF characters that alter HTTP response headers, cookies, Location redirects, or downstream message boundaries, without causing harm to shared caches or other users. ## Core Features & Use Cases - Trigger Signal Detection: Identifies CRLF-relevant inputs such as redirect Location parameters, download filenames, proxy rewrites, header reflection, and email header inputs. - Baseline-to-Oracle Methodology: Enforces a baseline, single-variable probe, post-baseline, oracle, and evidence workflow so findings are reproducible and false positives from WAF blocks or body reflections are excluded. - Safe Validation Boundaries: Restricts testing to harmless marker headers on owned low-traffic paths, and hands off response splitting or smuggling indicators to dedicated HTTP smuggling and cache poisoning routes. - Use Case: During an authorized web assessment, you notice a redirect parameter reflected into the Location header; use this Skill to determine whether encoded newline sequences produce a real injected header confirmed in Burp raw responses. ## Quick Start Ask the agent to run the CRLF injection route against an authorized target's redirect parameter and report whether any injected marker header appears in the raw response.

Frequently Asked Questions about hunt-crlf-injection

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I test for CRLF injection in HTTP response headers?

Capture a clean baseline response, then submit a single encoded newline variant in the target input and compare the raw response in Burp. A valid finding requires a new unintended marker header that is absent from the baseline, confirmed at the HTTP header parsing layer.

What input locations commonly lead to HTTP response splitting?

Common signals include redirect Location parameters, download filename fields, proxy rewrite rules, reflected header values, and email or log header inputs. These points often concatenate user input into response headers without proper newline sanitization.

Does a newline reflected in the page body confirm CRLF injection?

No, body reflection does not confirm CRLF injection. The newline must be parsed as part of the actual HTTP header section, verified through Burp raw responses or browser network evidence, not HTML content.

Why is my CRLF test result marked inconclusive?

WAF blocks, CAPTCHAs, timeouts, one-off proxy errors, and encoded string reflections are all treated as inconclusive. Only a reproducible, unintended marker header absent from the clean baseline counts as a valid result.

When should CRLF testing stop and escalate to other routes?

Stop immediately if the response is cacheable or public, affects other users' cookies, triggers email delivery, or shows response splitting or request smuggling signs. Those chains belong to dedicated HTTP smuggling or cache poisoning assessment routes.