CRLFsuite:一款功能强大的CRLF注入扫描工具
字数 1224 2025-08-12 11:33:35
CRLFsuite工具使用指南:CRLF注入漏洞扫描
1. CRLF注入概述
CRLF(回车换行)注入攻击是一种当用户将CRLF字符(%0d%0a)插入到应用中而触发漏洞的攻击技术。这些字符在许多互联网协议中表示行的结束,包括HTML(解码后为\r\n)。
1.1 潜在风险
- HTTP请求走私(HTTP Request Smuggling)
- HTTP响应拆分(HTTP Response Splitting)
- 跨站脚本攻击(XSS)
2. CRLFsuite工具介绍
CRLFsuite是一款功能强大的CRLF注入扫描工具,基于Python 3开发,具有以下特点:
2.1 主要功能
- 扫描单个或多个URL
- Web应用防火墙检测
- 通过CRLF注入实现XSS
- 支持STDIN输入
- 支持GET和POST方法
- 高并发扫描
- 提供强大的Payload(包括WAF绕过)
- 扫描效率高,误报率低
3. 安装指南
3.1 环境要求
- Python 3环境
3.2 安装步骤
$ git clone https://github.com/Nefcore/CRLFsuite.git
$ cd CRLFsuite
$ sudo python3 setup.py install
$ crlfsuite -h # 验证安装
4. 参数详解
| 参数选项 | 描述 |
|---|---|
| -u/--url | 目标URL地址 |
| -i/--import-urls | 从文件导入目标列表 |
| -s/--stdin | 从STDIN扫描URL |
| -o/--output | 输出文件存储路径 |
| -m/--method | 请求方法(GET/POST) |
| -d/--data | POST请求数据 |
| -uA/--user-agent | 指定User-Agent |
| -To/--timeout | 连接超时 |
| -c/--cookies | 指定Cookie |
| -v/--verify | 验证SSL证书 |
| -t/--threads | 并发线程数量 |
| -sB/--skip-banner | 跳过Banner |
| -sP/--show-payloads | 显示所有可用的CRLF Payload |
5. 使用示例
5.1 扫描单个URL
$ crlfsuite -u "http://testphp.vulnweb.com"
5.2 扫描多个URL
$ crlfsuite -i targets.txt
5.3 从STDIN扫描目标
$ subfinder -d google.com -silent | httpx -silent | crlfsuite -s
5.4 指定Cookie扫描
$ crlfsuite -u "http://testphp.vulnweb.com" --cookies "key=val; newkey=newval"
5.5 使用POST方法扫描
$ crlfsuite -i targets.txt -m POST -d "key=val&newkey=newval"
6. 高级用法
6.1 显示所有可用Payload
$ crlfsuite -sP
6.2 设置并发线程
$ crlfsuite -i targets.txt -t 50 # 使用50个线程
6.3 自定义User-Agent
$ crlfsuite -u "http://example.com" -uA "Mozilla/5.0 CustomAgent"
7. 输出结果
工具会输出检测到的CRLF注入漏洞,包括:
- 漏洞URL
- 触发漏洞的Payload
- 漏洞类型(如响应拆分、XSS等)
8. 许可证
本项目遵循MIT开源许可证协议。
9. 项目地址
GitHub仓库:https://github.com/Nefcore/CRLFsuite
10. 注意事项
- 使用前请确保获得目标系统的授权
- 高并发扫描可能会对目标系统造成影响
- 建议在测试环境中先验证工具功能
- 某些WAF可能会拦截扫描请求,可使用WAF绕过Payload