burpsuite插件编写


------------恢复内容开始------------

burpsuite插件详细详细资料

我自己一开始学的时候是先看的gitbook资料,然后看官方案例,后来结合最后那篇文章一起学习,再最后就是直接写,不懂的地方再直接看官方文档。因为不需要用到全部API,我也没有全部看完,熟悉了一点之后就直接上手写了。

部分API使用方法

  • IBurpExtenderCallbacks 可以调用很多其他的组件的方法比如

    callbacks.getHelpers()   获取IExtensionHelpers对象
    callbacks.getStdout()    获取标准输出流
    callbacks.setExtensionName()   设置插件名字
    IHttpRequestResponse makeHttpRequest(IHttpService httpService,byte[] request)
    新建一个Request请求
    

    还有很多,是各个组件的枢纽一样,具体可以看官方文档。

  • IHttpRequestResponce此接口用于检索和更新有关HTTP消息的详细信息。可以重写processHttpMessage来对各个模块的流量进行操做,监听。
    具体常用方法有:

    getRequest()    返回byte[]类型Request内容
    getResponce()    返回byte[]类型Responce内容
    getHttpService()  返回一个IHttpService
    
  • IExtensionHelpers 这个接口包含了很多实用的方法,可以用上文方法调用。具体常用方法:

    1、IRequestInfo analyzeRequest(byte[] request)
    获取到一个IRequestInfo方法
    2、IResponseInfo analyzeResponse(byte[] response)
    获取到一个IResponseInfo方法
    3、
    byte[] stringToBytes(java.lang.String data)、java.lang.String bytesToString(byte[] data)
    byte和String类型的相互转化
    4、
    IParameter buildParameter(java.lang.String name,java.lang.String value,byte type)
    新建一个IParameter
    byte[] updateParameter(byte[] request,IParameter parameter)
    在request请求里面更新请求参数,两者配合使用
    
  • IParameter 参数接口,可以包含request请求里面get,post的请求参数,值,还有cookie的参数,值。具体方法:

    1、byte getType()   可以获取一个标志信息,判断属于哪部分的参数,比如是cookie的还是get的还是post的,标志信息可以看官方文档
    2、java.lang.String getName() 获取参数名字
    3、java.lang.String getValue() 获取参数的值
    
  • IRequestInfo 这个接口可以获取到request请求里面的详细信息

    1、java.lang.String getMethod() 获取请求的方法
    2、java.net.URL getUrl()  获取url
    3、java.util.List<IParameter> getParameters() 获取所有的请求参数
    4、int getBodyOffset()   获取request里面body的移位量
    比如:(message为IHttpRequestResponce类型,BodyInt是位移量)
    helpers.bytesToString(Arrays.copyOfRange(message.getResponse(),BodyInt,message.getResponse().length))
    可以获取到String类型的body
    
  • IResponseInfo 可以获取到response请求里面的详细信息和IRequestInfo 差不多。

最后是自己练手写的插件

可以简单判断页面是否有sql注入漏洞,没有准确率,需要如果扫到还需要自己判断。

https://github.com/xiaofghd893/burpsuiteExtender


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM