BurpSuite插件-Reshaper:自动任务重塑工具

Reshaper简介

  • BurpSuite插件-Reshaper:自动任务重塑工具

    在本文中,我们将讨论如何使用名为Reshaper的BurpSuite插件来自动化和简化您的Web应用程序渗透测试任务。Reshaper是一个强大的工具,允许您创建和管理自定义请求,并以最小的努力识别漏洞。

    1. 安装Reshaper插件

    要开始使用Reshaper,您首先需要将其安装到您的BurpSuite实例中。以下是如何操作:

    a. 启动BurpSuite。
    b. 转到“Extender”选项卡。
    c. 单击“选项”按钮,然后选择“下载扩展程序”。
    d. 在搜索框中输入“Reshaper”,然后按Enter键。
    e. 从结果列表中选择Reshaper插件,然后单击“安装”。
    f. 确认安装后,重新启动BurpSuite。

    1. 配置Reshaper插件

    安装Reshaper后,您需要对其进行配置,以使其与您的测试环境配合使用。以下是配置过程:

    a. 转到“Extender”选项卡,然后单击“Extensions”选项卡。
    b. 找到Reshaper插件并单击它,以查看其配置选项。
    c. 配置以下选项:

    • 名称:为您的项目输入一个描述性名称。
    • 工具:选择您要在其中运行Reshaper的工具(通常为“Proxy”)。
    • 活动:选中此框以启用Reshaper。
    • 匹配器:在此部分,您可以定义用于识别应应用何种操作的请求的标准。您可以基于请求方法、URL、标头和参数来设置匹配器。
    • 操作:在此部分,您可以定义在符合匹配器条件的请求上执行的操作。您可以修改请求(例如更改参数或标头)、发送请求到其他位置或生成报告。
      d. 配置好所有设置后,单击“保存”按钮。
    1. 使用Reshaper插件

    配置完毕后,您现在可以使用Reshaper自动化您的Web应用程序渗透测试任务。以下是使用Reshaper的一些示例:

    a. 自动化请求参数扫描:您可以定义一个匹配器,以识别具有特定参数的所有请求,然后使用操作修改参数值并发送请求,以检测可能的漏洞。

    b. 转发请求到另一个位置:您可以配置Reshaper将符合特定条件的请求转发到另一个服务器或工具(例如,一个自动化漏洞扫描器)。

    c. 生成报告:您可以设置Reshaper根据特定条件生成报告,例如识别具有潜在漏洞的请求。

    1. 总结

    Reshaper是BurpSuite中一个非常有用且功能强大的插件,可自动化和简化Web应用程序渗透测试任务。通过学习如何有效地使用Reshaper,您可以提高测试工作的效率和准确性。

安装方法

BurpSuite插件-Reshaper:自动任务重塑工具-阿帕胡

配置文件截图

BurpSuite插件-Reshaper:自动任务重塑工具-阿帕胡

规则

规则允许您设置当 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

  1. 打开 IntelliJ。
  2. 使用 Java 17 从现有源创建一个新项目 (Gradle)。
  3. 创建/打开项目后,等待 IntelliJ 处理 Gradle 依赖项。
  4. jar从 Gradle 工具窗口/侧边栏运行Gradle 构建任务。 JAR 将放置在该build\libs目录中。

使用 CLI 构建 JAR

  1. 安装 Java 17。
  2. 安装 Gradle v7.4。
  3. 运行gradle --refresh-dependencies build命令。
  4. 运行gradle build jar命令。 JAR 将放置在该build\libs目录中。

调试

智能

  1. 将此git 补丁应用到项目中,以允许 Reshaper 作为 Burp Suite 中的旧扩展进行调试。
  2. 在 Reshaper 中,使用“设置”选项卡,将所有规则和全局变量导出到 JSON 文件以防止数据丢失。
  3. 在 Extender 中,如果您已从 BApp Store 或 JAR 安装了扩展,请从 Burp Suite 卸载 Reshaper 扩展。
  4. 关闭 Burp Suite。
  5. 在 IntelliJ 中打开 Reshaper 项目。
  6. 导航到java/synfron/reshaper/burp/ui/Window.java
  7. 在项目视图中右键单击该文件,然后单击Run Window.main()Run Window.main()
  8. Burp Suite 将打开,Reshaper 作为旧版扩展加载。

命令行界面

  1. 将此git 补丁应用到项目中,以允许 Reshaper 作为 Burp Suite 中的旧扩展进行调试。
  2. 在 Reshaper 中,使用“设置”选项卡,将所有规则和全局变量导出到 JSON 文件以防止数据丢失。
  3. 在 Extender 中,如果您已从 BApp Store 或 JAR 安装了扩展,请从 Burp Suite 卸载 Reshaper 扩展。
  4. 关闭 Burp Suite。
  5. 在 CLI 中,执行java -cp path/to/the/reshaper-for-burp/JAR/file.jar synfron.reshaper.burp.ui.Window.
  6. Burp Suite 将打开,Reshaper 作为旧扩展加载。

截图

BurpSuite插件-Reshaper:自动任务重塑工具-阿帕胡

项目地址

https://github.com/synfron/ReshaperForBurp

THE END