REcollapse:一款功能强大的黑盒正则式模糊化辅助工具
字数 1012 2025-08-10 21:10:14

REcollapse 正则式模糊化辅助工具使用指南

工具概述

REcollapse 是一款功能强大的黑盒正则式模糊化辅助工具,主要用于:

  • 绕过验证机制
  • 发现Web应用程序中的常规安全问题
  • 绕过Web应用防火墙(WAF)
  • 绕过弱漏洞缓解方案

该工具的主要目标是生成用于渗透测试的Payload,实际的渗透测试任务应结合Burp Suite和ffuf等工具使用。

安装方法

前置要求

  • Python 3环境

标准安装

  1. 克隆项目仓库:

    git clone https://github.com/0xacb/recollapse.git
    
  2. 安装依赖:

    pip3 install --user --upgrade -r requirements.txt
    
  3. 执行安装脚本:

    ./install.sh
    

Docker安装

  1. 拉取镜像:

    docker pull 0xacb/recollapse
    
  2. 构建镜像:

    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 打印规范化表 -

使用示例

  1. 基本使用:

    recollapse -e 1 -p 1,2,4 -r 10-11 https://legit.example.com
    
  2. 输出示例:

    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通过以下方式工作:

  1. 在输入字符串的指定位置插入模糊字节
  2. 根据选择的编码格式对输出进行处理
  3. 生成可用于测试正则表达式边界的变体

应用场景

  1. WAF绕过:生成非常规输入以绕过基于正则表达式的防护规则
  2. 输入验证测试:测试应用程序对不同编码格式输入的处理方式
  3. 正则表达式缺陷发现:发现正则表达式实现中的逻辑缺陷

许可证

本项目采用MIT开源许可证协议。

资源链接

REcollapse 正则式模糊化辅助工具使用指南 工具概述 REcollapse 是一款功能强大的黑盒正则式模糊化辅助工具,主要用于: 绕过验证机制 发现Web应用程序中的常规安全问题 绕过Web应用防火墙(WAF) 绕过弱漏洞缓解方案 该工具的主要目标是生成用于渗透测试的Payload,实际的渗透测试任务应结合Burp Suite和ffuf等工具使用。 安装方法 前置要求 Python 3环境 标准安装 克隆项目仓库: 安装依赖: 执行安装脚本: Docker安装 拉取镜像: 构建镜像: 使用说明 基本命令 参数详解 | 参数 | 缩写 | 描述 | 默认值 | |------|------|------|--------| | --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通过以下方式工作: 在输入字符串的指定位置插入模糊字节 根据选择的编码格式对输出进行处理 生成可用于测试正则表达式边界的变体 应用场景 WAF绕过 :生成非常规输入以绕过基于正则表达式的防护规则 输入验证测试 :测试应用程序对不同编码格式输入的处理方式 正则表达式缺陷发现 :发现正则表达式实现中的逻辑缺陷 许可证 本项目采用MIT开源许可证协议。 资源链接 GitHub仓库: https://github.com/0xacb/recollapse 演讲资料: NAHAMCON 2022 EU BSides Lisbon 2022