REcollapse:一款功能强大的黑盒正则式模糊化辅助工具
字数 1012 2025-08-10 21:10:14
REcollapse 正则式模糊化辅助工具使用指南
工具概述
REcollapse 是一款功能强大的黑盒正则式模糊化辅助工具,主要用于:
- 绕过验证机制
- 发现Web应用程序中的常规安全问题
- 绕过Web应用防火墙(WAF)
- 绕过弱漏洞缓解方案
该工具的主要目标是生成用于渗透测试的Payload,实际的渗透测试任务应结合Burp Suite和ffuf等工具使用。
安装方法
前置要求
- Python 3环境
标准安装
-
克隆项目仓库:
git clone https://github.com/0xacb/recollapse.git -
安装依赖:
pip3 install --user --upgrade -r requirements.txt -
执行安装脚本:
./install.sh
Docker安装
-
拉取镜像:
docker pull 0xacb/recollapse -
构建镜像:
docker build -t recollapse .
使用说明
基本命令
recollapse -h
参数详解
| 参数 | 缩写 | 描述 | 默认值 |
|---|---|---|---|
--help |
-h |
显示帮助信息 | - |
--positions |
-p |
重要位置模式(如1,2,3,4) | 1 |
--encoding |
-e |
编码格式: 1(URL编码), 2(Unicode), 3(原始格式) | 1 |
--range |
-r |
模糊处理的字节范围(如0, 0xff) | 0-0xff |
--size |
-s |
模糊处理的字节数量 | 1 |
--file |
-f |
从文件读取输入 | - |
--alphanum |
-an |
在模糊范围中包含字母数字字节 | - |
--maxnorm |
-mn |
合规化最大数量 | 3 |
--normtable |
-nt |
打印规范化表 | - |
使用示例
-
基本使用:
recollapse -e 1 -p 1,2,4 -r 10-11 https://legit.example.com -
输出示例:
https://legit.example.com%0a https://legit.example.com%0b https://legit.example.comhttps%0a://legit.example.com https://legit.example.comhttps%0b://legit.example.com https://legit.example.comhttps:%0a//legit.example.com https://legit.example.comhttps:%0b//legit.example.com https://legit.example.comhttps:/%0a/legit.example.com https://legit.example.comhttps:/%0b/legit.example.com https://legit.example.comhttps://%0alegit.example.com https://legit.example.comhttps://%0blegit.example.com https://legit.example.comhttps://legit%0a.example.com https://legit.example.comhttps://legit%0b.example.com https://legit.example.comhttps://legit.%0aexample.com https://legit.example.comhttps://legit.%0bexample.com https://legit.example.comhttps://legit.example%0a.com https://legit.example.comhttps://legit.example%0b.com https://legit.example.comhttps://legit.example.%0acom https://legit.example.comhttps://legit.example.%0bcom https://legit.example.comhttps://legit.example.com%0a https://legit.example.comhttps://legit.example.com%0b
技术原理
REcollapse通过以下方式工作:
- 在输入字符串的指定位置插入模糊字节
- 根据选择的编码格式对输出进行处理
- 生成可用于测试正则表达式边界的变体
应用场景
- WAF绕过:生成非常规输入以绕过基于正则表达式的防护规则
- 输入验证测试:测试应用程序对不同编码格式输入的处理方式
- 正则表达式缺陷发现:发现正则表达式实现中的逻辑缺陷
许可证
本项目采用MIT开源许可证协议。
资源链接
- GitHub仓库: https://github.com/0xacb/recollapse
- 演讲资料: