0


安全开发--10--Python开发Burp插件流程

本博客地址:https://security.blog.csdn.net/article/details/127351889

一、Burp插件的开发语言

Burp支持Java、Python、Ruby编写插件,其中使用Python编写的话分很多种,常见的比如Jython、Cython等等。Jython为我们提供了Python的库,同时也提供了所有java的类。Cython则是提供了Python的库,也提供了C语言的一些特性。

其中Jython截止到本文编写时间(2022年底),仍仅支持Python2,不支持Python3,所以在使用它时将使用Python2的语法。

二、配置Jython环境

1、首先需要下载Jython的

.jar

包,并保存到本地,下载位置:https://www.jython.org/download,可去页面下载最新版。
本文编写时的最新版是2.7.3,下载地址:https://repo1.maven.org/maven2/org/python/jython-standalone/2.7.3/jython-standalone-2.7.3.jar

2、将下载的Jython包导入Burp,即给Burp添加Jython解释器。如图所示:

在这里插入图片描述

三、Burp的API介绍

Burp的API官方文档地址:https://portswigger.net/burp/extender/api/index.html

在这里插入图片描述

这里的不同接口是干不同事的,大致可以分为以下几类:

1、工具组件接口:

IInterceptedProxyMessage
IIntruderAttack
IIntruderPayloadGenerator
IIntruderPayloadGeneratorFactory
IIntruderPayloadProcessor
IProxyListener
IScanIssue
IScanQueueItem
IScannerCheck
IScannerInsertionPoint
IScannerInsertionPointProvider
IScannerListener
IScopeChangeListener
ISessionHandlingAction

2、插件入口和帮助接口:

IBurpExtender
IBurpExtenderCallbacks
IExtensionHelpers
IExtensionStateListener

3、UI接口:

IContextMenuFactory
IContextMenuInvocation
IMenuItemHandler
IMessageEditor
IMessageEditorController
IMessageEditorTab
IMessageEditorTabFactory
ITab
ITextEditor

4、HTTP消息处理接口:

ICookie
IHttpListener
IHttpRequestResponse
IHttpRequestResponsePersisted
IHttpRequestResponseWithMarkers
IHttpService
IParameter
IRequestInfo
IResponseInfo

四、编码开发

编码开发是Burp插件开发的核心步骤,之后会用更多的篇幅来介绍,本文的目的是介绍Burp插件开发的流程,因此忽略编码细节。

五、加载插件

如图所示,直接添加编写好的Python文件即可,之后点击next:

在这里插入图片描述

如果报错,根据报错信息排查错误。

在这里插入图片描述

直到没有报错,就说明插件加载成功了。不同的插件的操作和利用方式都不同,如有的有UI界面,有的没有。具体需要因事而论,这里就不统一论调了。

标签: 安全

本文转载自: https://blog.csdn.net/wutianxu123/article/details/127351889
版权归原作者 武天旭 所有, 如有侵权,请联系我们删除。

“安全开发--10--Python开发Burp插件流程”的评论:

还没有评论