Burp Suite 依赖 Jython 来支持 Python,需要下载 Jython 并配置 Burp Suite 位置。
在 Burp Suite 页面加载 Python 插件需要选择扩展类型为 Python 并指定 Python 插件文件。
API
Extender API:
Burp Suite 的 Extender API 是一套用于创建 Burp Suite 扩展的 Java 接口,它可以让攻击者使用自己或第三方的代码来扩展 Burp Suite 的功能,例如修改 HTTP 请求和响应、发送额外的 HTTP 请求、自定义Burp Suite 的界面和功能、添加额外的扫描检查,访问 Burp Suite 的信息等。
然后我们需要创建一个 Kotlin 的 Class 类,右键”Burp”并点击”New”按钮即可创建:
在该文件中编写一个简单的 Hellow World:
package Burp
import burp.IBurpExtender
import burp.IBurpExtenderCallbacks
import java.io.PrintWriter
@Suppress("unused") // Remove warning, the class will be used by burp
class BurpExtender : IBurpExtender {
override fun registerExtenderCallbacks(callbacks: IBurpExtenderCallbacks) {
// Let's wrap stdout and stderr in PrintWriter with auto flush
val stdout = PrintWriter(callbacks.stdout, true)
val stderr = PrintWriter(callbacks.stderr, true)
// Set our extension name, this will be display in burp extensions tab
callbacks.setExtensionName("Wu Hu")
stdout.println("Hello world!")
stderr.println("OMG! Error!!")
}
}
接下来我们需要构建 Jar 文件,按住 CTRL+ALT+SHIFT+S 打开”项目结构”菜单,选择”Artifacts”并点击”+”号以新建 Jar 文件:
然后选择目录为插件项目名称:
然后可以勾选”Include in project build”,来为每个生成自动创建 Jar 文件: