目录导航
Reshaper简介
Burp Suite 的插件,可使用可配置规则触发操作并重塑 HTTP 请求/响应和 WebSocket 流量。
安装方法

配置文件截图

规则
规则允许您设置当 Burp Suite 收到的消息/连接(事件)满足特定条件(称为“何时”)时要执行的操作(称为“则”)。规则按顺序处理。
什么时候
内容类型 – 如果报告 HTTP 请求正文与指定的内容类型匹配
事件方向 – 如果 HTTP 消息是请求或响应,或者 WebSocket 消息定向到客户端或服务器
来自工具 – 如果 HTTP/WebSocket 消息来自特定的 Burp 工具
有实体 – 如果 HTTP/WebSocket 事件包含某个消息值实体
在范围内 – 如果 URL 在套件范围内
匹配文本 – 如果值(文本、变量或 HTTP/WebSocket 消息值实体)与值匹配
消息类型 - 如果 WebSocket 消息是文本或二进制
MIME 类型 – 如果报告 HTTP 响应正文与指定的 MIME 类型匹配
代理名称 – 如果由某个 Burp 代理侦听器接收到
重复 – 对列表中的每个项目重复一组 When 约束
然后
中断 – 停止规则或然后进行动作处理
构建 HTTP 消息 – 构建 HTTP 请求或响应消息并将全文存储在变量中
注释 – 向 HTTP/WebSocket 历史记录中的行项目添加注释
延迟 – 延迟进一步处理/发送 HTTP/WebSocket 事件
删除值 – 删除 HTTP 消息实体
删除变量 – 删除变量
Drop – 让 Burp 断开连接
评估 – 对值执行操作
突出显示 – 突出显示 HTTP/WebSocket 历史记录中的行项目
Intercept——在Proxy拦截器中拦截消息
日志 – 将消息记录到 Burp 扩展控制台
解析 HTTP 消息 – 从 HTTP 请求或响应消息中提取值并将值存储在变量中
提示 – 通过提示对话框获取文本
读取文件 – 读取文件
重复 – 按计数、布尔值或列表中的每个项目重复一组“Then”操作
运行进程 – 在单独的进程中执行命令
运行规则 – 运行特定规则或所有自动运行规则
运行脚本 – 执行 JavaScript 脚本
保存文件 – 将文本保存到文件
设置编码 – 设置用于读写 HTTP 请求或响应正文或 WebSocket 消息的字节的编码
设置事件方向 – 更改在处理结束时是发送请求还是发送响应
设置值 – 使用另一个值(文本、变量或 HTTP/WebSocket 事件实体)设置 HTTP/WebSocket 事件的值
设置变量 – 使用另一个值(文本、变量或 HTTP/WebSocket 事件实体)设置变量
发送消息 – 发送单独的 WebSocket 消息
发送请求 – 发送单独的 HTTP 请求
Send To – 将数据发送到其他Burp工具或系统的默认浏览器
变量
在处理同一事件或所有事件时,跨不同规则共享值。
开发
使用 IntelliJ 构建 JAR
- 打开 IntelliJ。
- 使用 Java 17 从现有源创建一个新项目 (Gradle)。
- 创建/打开项目后,等待 IntelliJ 处理 Gradle 依赖项。
jar
从 Gradle 工具窗口/侧边栏运行Gradle 构建任务。 JAR 将放置在该build\libs
目录中。
使用 CLI 构建 JAR
- 安装 Java 17。
- 安装 Gradle v7.4。
- 运行
gradle --refresh-dependencies build
命令。 - 运行
gradle build jar
命令。 JAR 将放置在该build\libs
目录中。
调试
智能
- 将此git 补丁应用到项目中,以允许 Reshaper 作为 Burp Suite 中的旧扩展进行调试。
- 在 Reshaper 中,使用“设置”选项卡,将所有规则和全局变量导出到 JSON 文件以防止数据丢失。
- 在 Extender 中,如果您已从 BApp Store 或 JAR 安装了扩展,请从 Burp Suite 卸载 Reshaper 扩展。
- 关闭 Burp Suite。
- 在 IntelliJ 中打开 Reshaper 项目。
- 导航到
java/synfron/reshaper/burp/ui/Window.java
。 - 在项目视图中右键单击该文件,然后单击
Run Window.main()
或Run Window.main()
。 - Burp Suite 将打开,Reshaper 作为旧版扩展加载。
命令行界面
- 将此git 补丁应用到项目中,以允许 Reshaper 作为 Burp Suite 中的旧扩展进行调试。
- 在 Reshaper 中,使用“设置”选项卡,将所有规则和全局变量导出到 JSON 文件以防止数据丢失。
- 在 Extender 中,如果您已从 BApp Store 或 JAR 安装了扩展,请从 Burp Suite 卸载 Reshaper 扩展。
- 关闭 Burp Suite。
- 在 CLI 中,执行
java -cp path/to/the/reshaper-for-burp/JAR/file.jar synfron.reshaper.burp.ui.Window
. - Burp Suite 将打开,Reshaper 作为旧扩展加载。
截图

项目地址
https://github.com/synfron/ReshaperForBurp
转载请注明出处及链接