Enhanced Repeater Manager 是一个为 Burp Suite 设计的高级请求重放管理插件,它提供了比原生 Repeater 更强大的功能,包括请求的分类管理、历史记录跟踪和数据持久化等。这个插件特别适合安全测试人员和渗透测试专家使用,可以有效提高 HTTP/HTTPS 请求测试的效率和组织性。
- 请求管理:组织和分类 HTTP 请求,支持颜色标记和备注功能
- 历史记录:自动记录请求的响应历史,方便比对不同时间的测试结果
- 数据持久化:所有请求和历史记录保存到 SQLite 数据库,重启 Burp Suite 后不会丢失
- 高级搜索:支持多条件复合筛选,快速定位特定请求或响应
- 列显示控制:自定义表格中显示的列,提高信息密度和可读性
- 数据导出导入:支持 SQLite 和 JSON 格式的数据备份和恢复
- 自动保存:定时将内存中的数据同步到磁盘,防止数据丢失
- 下载最新的
enhanced-repeater-1.0-SNAPSHOT.jar
文件 - 打开 Burp Suite Professional
- 转到
Extender
->Extensions
选项卡 - 点击
Add
按钮 - 在
Extension file
中选择下载的 jar 文件 - 点击
Next
完成安装
插件界面主要包含两个选项卡:
-
请求管理:主界面,包含左侧请求列表和右侧详情区域
- 左侧:HTTP请求列表,支持搜索、过滤和管理
- 右上:选中请求的详情和编辑区域
- 右下:请求响应和历史记录
-
配置:设置数据库存储路径、自动保存参数和导入导出功能
- 将 Burp 代理截获的请求发送到 Enhanced Repeater
- 在左侧列表中管理和组织请求
- 选择请求进行编辑和重放
- 查看右下方的历史记录区域,对比不同时间的响应结果
- 使用右键菜单对请求和响应进行更多操作
- 前端:Java Swing 构建用户界面
- 数据存储:SQLite 提供本地持久化支持
- 连接池:HikariCP 高性能数据库连接池
- 数据序列化:Gson 用于 JSON 格式数据处理
- 核心设计模式:MVC 架构,单例模式,观察者模式
src/main/java/burp/
├── BurpExtender.java # Burp扩展入口点
├── config/ # 配置管理
│ └── DatabaseConfig.java # 数据库配置类
├── db/ # 数据库访问层
│ ├── DatabaseManager.java # 数据库连接管理
│ ├── HistoryDAO.java # 历史记录数据访问对象
│ └── RequestDAO.java # 请求数据访问对象
├── http/ # HTTP 处理
│ └── RequestResponseRecord.java # 请求响应记录实体类
├── io/ # 数据导入导出
│ ├── DataExporter.java # 数据导出功能
│ └── DataImporter.java # 数据导入功能
├── service/ # 业务逻辑服务
│ └── AutoSaveService.java # 自动保存服务
└── ui/ # 用户界面
├── ConfigPanel.java # 配置面板
├── HistoryPanel.java # 历史记录面板
├── MainUI.java # 主界面
├── RequestListPanel.java # 请求列表面板
├── RequestPanel.java # 请求详情面板
└── ResponsePanel.java # 响应面板
<dependencies>
<!-- Burp扩展API -->
<dependency>
<groupId>net.portswigger.burp.extender</groupId>
<artifactId>burp-extender-api</artifactId>
<version>2.1</version>
</dependency>
<!-- 语法高亮组件 -->
<dependency>
<groupId>com.fifesoft</groupId>
<artifactId>rsyntaxtextarea</artifactId>
<version>3.3.3</version>
</dependency>
<!-- SQLite驱动 -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.40.1.0</version>
</dependency>
<!-- 高性能连接池 -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>4.0.3</version>
</dependency>
<!-- JSON处理库 -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
</dependencies>
- API安全测试:持续测试同一API的不同参数组合,并保存所有测试结果
- 漏洞复现:记录漏洞利用过程中的所有请求和响应,便于后期复现
- 安全评估:整理大型应用的API集合,系统化进行安全测试
- 团队协作:导出测试好的请求集合,分享给团队其他成员继续测试
- 渗透测试记录:记录渗透测试过程中的关键请求,便于编写报告
数据默认保存在用户主目录的 .burp
文件夹下:
- 配置文件:
~/.burp/repeater_manager_config.properties
- 数据库文件:
~/.burp/repeater_manager.db
可以通过配置面板修改数据库的存储位置和自动保存参数。
详细使用说明和代码结构分析请参考:
项目使用Maven进行构建,执行以下命令可以生成插件JAR文件:
mvn clean package
生成的JAR文件将位于 target/releases/
目录下,文件名包含版本号和时间戳。
- 添加团队共享功能,支持多人协作
- 集成自动化测试脚本支持
- 提供请求模板功能,快速创建类似请求
- 支持更多数据格式的导入导出
- 添加请求序列功能,支持多步骤请求流程
本项目使用 MIT 许可证