记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

BurpSuite插件编写教程(第一篇)

2014-11-03 13:15
        现在BurpSuite的插件貌似很火,很多国外的Burp爱好者都开始编写了自己的渗透测试插件,偶然也想做个插件来写写,于是百度了下,在国内还没找到有BurpSuite插件的编写方式,于是乎,去官网看了看,接下来科普写BurpSuite插件编写的HelloWorld,Java版本。

       在写
BurpSuite插件Assassin V1.0之前写的。

1、下载BurpSuite API

         想要编写Burp的插件,必须使用BurpSuite所提供的API接口,否则你是无法编程的,无论你使用的何种语言,Java and python。
 
         Burp API 下载地址:BurpSuite插件API  下载
         BurpSuite API 在线文档: http://portswigger.net/burp/extender/api/index.html
 

2、使用BurpSuite插件

         想要编写插件,你得学会怎么使用插件吧?BurpSite在高版本中可以直接在界面中导出插件,貌似是的。
 
         选择“Extender→ADD”,在弹出的新界面Loid  Burp  Extension 中选 择“Select” ,如下图所示:
 
         \

         Standard Output 与 Standard Error 区域默认就OK了,  然后选择Next,如果下面的界面中没有出现错误的话,你的插件就安装成功了,如下图所示。

        \

          有的插件会有提示信息,有的则没有,比如我写的这个插件,则带有这个“Successful”的成功提示消息,如果在Errors没有出现信息,就代表成功了插件注册成功了。
 
 

3、开始写BurpSuite插件

         在加载插件的时候,Burp首先将会去寻找Jar里面的/burp/BurpExtender.class 这个类,如果找不到这个类,则会报错,BurpExtender类是插件编写的起点。
 
         将Burp所提供的API导入的IDE,我这用的是Eclipse,结构如下图所示:


\

那么大家可以看得到Burp所提供的API接口已经躺在Burp包里面了,而且BurpExtender类我也已建立了。
 
         OK,那么下面就正式的开始编写BurpSuite插件的起点类,BurpExtender.java。众猿皆知程序编程是从HellWorld开始的,那么这次也不例外,Still the HelloWorld。
 
         BurpAPI中提供了IBurpExtender接口,这个接口只有一个方法,registerExtenderCallbacks(),也就是插件注册回调方法,说白了,就相当于Main方法。
        
         BurpSuite找到BurpExtender类后,将会执行registerExtenderCallbacks()方法,那么应当的,BurpExtender类要implements  IBurpExtender才可以正常运行,那么现在的类源码如下:


package burp;

public class BurpExtender implements IBurpExtender {
private PrintWriter outc = null;

@Override
public void registerExtenderCallbacks(IBurpExtenderCallbacks callbacks) {


}
}



      实现了接口,那么怎么开始输出HellWorld呢?这也不是控制台,总不能实用System.out.println("HelloWorld...");吧
 
         Burp已经提供好了输出流,在IBurpExtenderCallbacks这个类里面,不过大家可以看得到,这个接口正好给我们准备好了IBurpExtenderCallbacks类的实例化对象callbacks,那么就直接开始吧。


package burp;

public class BurpExtender implements IBurpExtender {
private PrintWriter outc = null;

@Override
public void registerExtenderCallbacks(IBurpExtenderCallbacks callbacks) {
PrintWriter out = new PrintWriter(callbacks.getStdout(),true);
out.println("registerExtenderCallbacks successful !!!");
out.println("http://www.moonsos.com welcome to 大米安 !!!");
out.close();
}
}



          代码写好后,直接导出JAR的包,在项目上点击右键→Export→Java→JAR File,我感觉这么写,自己都很二,这么简单为毛我还要写出来,这个强迫症啥时候能好?
        
         导出JAR后,进行使用插件,看到以下图片上的信息,证明你的HelloWrold插件是没有问题的。

\

\

 

3、Send to Assassin(菜单上下文注册)

 
         在BurpSuite中点击右键经常可见,Send to Spider,Send to Repeater,Send to Decoder等等等,那么这一节就来看看如何注册上下文菜单,如下图所示:


\

好吧,今天就到这里吧,下班时间到了,过几天继续......

 


知识来源: www.moonsos.com/Article/penetration/107.html

阅读:309873 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“BurpSuite插件编写教程(第一篇)”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

ADS

标签云