本博客地址: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:
如果报错,根据报错信息排查错误。
文章来源:https://www.toymoban.com/news/detail-623063.html
直到没有报错,就说明插件加载成功了。不同的插件的操作和利用方式都不同,如有的有UI界面,有的没有。具体需要因事而论,这里就不统一论调了。文章来源地址https://www.toymoban.com/news/detail-623063.html
到了这里,关于安全开发--10--Python开发Burp插件流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!