Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
generator-burp-extension — 关于Burp扩展生成,你所需要的一切 | Kitploit
工具/GitHubGitHub/rsrdesarrollo/generator-burp-extension
脚本与自动化Web安全渗透测试实用工具与框架
GitHubrsrdesarrollo/generator-burp-extension

generator-burp-extension

关于Burp扩展生成,你所需要的一切

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
158273年前Kitploit 审核通过

Burp 扩展生成器 NPM version

安装

首先,使用 npm 安装 Yeoman 和 generator-burp-extension(我们假设您已经预装了 node.js)。

root@kitploit:~
npm install -g yo
npm install -g generator-burp-extension

然后生成您的新项目:

root@kitploit:~
yo burp-extension

Burp 扩展特性

当您生成插件项目时,生成器会询问您希望在插件中包含哪些特性。如果您熟悉 Burp 扩展开发,这些特性的名称已经足够描述其功能;但如果您是 Burp 扩展新手,以下是对每个特性所能实现功能的简短说明。

扩展标签页 GUI

自定义标签页,将添加到 Burp 的用户界面中。通常用于添加某些功能(例如 logger++ 扩展),或仅仅是为了让用户配置扩展。

消息编辑器标签页 GUI

自定义消息编辑器标签页,将添加到 Burp 的消息编辑器界面(Repeater、Intruder 等)。通常用于在请求/响应载荷中提供某种自定义的编辑/查看功能。一个例子是 JSON Beautifier 扩展。

上下文菜单 GUI

自定义上下文菜单,将通过右键点击添加到 Burp 界面的几乎任何位置。Burp 允许在以下任意情况下显示上下文菜单:

  • Intruder 攻击结果。
  • Intruder 载荷位置编辑器。
  • 请求编辑器。
  • 响应编辑器。
  • 不可编辑的请求查看器。
  • 不可编辑的响应查看器。
  • 代理历史记录。
  • 扫描器结果。
  • 搜索结果窗口。
  • 目标站点地图表格。
  • 目标站点地图树。

此功能的一个简单示例是 copy-as-python-requests 扩展,它允许将请求复制为 Python 代码(仅作示例)。

HTTP 监听器 / 代理监听器

监听器将收到由代理工具(代理监听器)或任何 Burp 工具(HTTP 监听器)处理的请求和响应的通知。扩展可以对这些消息执行自定义分析或修改。

换句话说,代理监听器拦截从浏览器到 Burp 的请求,以及从 Burp 到浏览器的响应。HTTP 监听器拦截从 Burp 到 Web 服务器的出站请求,以及从 Web 服务器返回的入站响应。

一个使用此扩展特性的真实示例插件是 AutoRepeater。

Intruder 载荷生成器

通过添加自定义生成器功能来扩展 Intruder 载荷。此功能的一种可能用途是生成随机有效的 IBAN 号码。一个真实示例是扩展 Intruder file payload generator(我并未使用它,仅作示例)。

Intruder 载荷处理器

通过添加自定义处理器功能来扩展 Intruder 载荷。一个可能的示例是基于静态密钥执行 AES 加密。

扫描器检查

执行扫描时,Burp 将要求该检查对基础请求执行主动或被动扫描,并报告发现的任何扫描问题。

扫描器插入点提供者

当请求被主动扫描时,扫描器将调用此提供者,提供者应提供一个自定义插入点列表,这些插入点将在扫描中使用。

会话处理操作

每个已注册的操作都会在会话处理规则界面中可供用户选择作为规则操作。用户可以选择直接调用某个操作,或者在执行宏之后调用。

扩展状态监听器

当扩展从 Burp 卸载时,监听器将收到通知。注意:任何启动后台线程或打开系统资源(如文件或数据库连接)的扩展都应注册一个监听器,并在扩展卸载时终止线程/关闭资源。

扫描器监听器

监听器将收到扫描器报告的新问题的通知。通过注册扫描器监听器,扩展可以对扫描器问题执行自定义分析或日志记录。

范围变更监听器

每当 Burp 的套件级目标范围发生变更时,监听器将收到通知。

可能用处不大,因为 Burp 不允许您访问全局范围定义。

权衡

本节解释模板开发中的一些决策。

为什么选择 Java 而非 Python/Ruby

首先,我并非 Java 粉丝。

您可能知道,BurpSuite 允许使用三种主要语言开发扩展:Java、Python 和 Ruby。实际上这并不完全正确。Burp 允许使用 Jython 和 JRuby 进行开发。真正的问题在于,当您在 Burp 扩展中使用 Jython 或 JRuby 时,您仍然需要以 Java 思维来思考(因为 Java 是 Burp 的主要语言)。因此,最终您将使用 Python 和 Java 进行开发,但在项目与带有自动补全等现代功能的真正 IDE 集成时会遇到很多问题。

另一个使用 Java 而非 Jython 的好理由是它基于 Python 2.7,而我没有使用 JRuby 是因为我不喜欢 Ruby,仅此而已。

一切都是单例(一篇引领性文章)

您可能注意到,所有 Burp 接口的实现都遵循单例模式,这主要是出于主观原因。

事实是,Burp 是一个出色的工具,但其内部机制略显晦涩,可能有些混乱。例如,Burp 允许您注册多个 IHTTPListener,但您会失去这些监听器调用顺序等重要决策。在我看来,这种情况可能会使 Burp 扩展的理解和代码维护变得困难且复杂。

您可以将每个单例类视为与 Burp 的必要连接点,这些连接点必须是唯一的。从该连接点出发,您可以控制代码,执行任何类型的面向对象设计。

许可证

MIT © Raul Sampedro

下载工具