Burp Suite 插件 UI 快速设计#
前言#
网上对于怎么快速设计一个 Burp Suite UI 界面并没有详细的文章介绍,比较多的是套用其他作者的插件 UI 作为模板或者使用 IDEA 内置的 GUI 工具,而 IDEA 的 GUI 工具又极其难用。导致不会 swing 又想开发插件的人望而却步。现在我结合我自己插件开发的经历,介绍如何使用 NetBeans IDE 工具快速的设计出自己想要的 UI 界面。
用到工具#
- IntelliJ IDEA
 - NetBeans IDE
 
NetBeans IDE 用法#
安装就不介绍了,官网直接下载安装就行(安装即用,不用注册)。
基本使用#
1、先新建一个项目,我这里新建一个 maven 项目(用什么项目不影响),直接 next 完成就可以了。

得到这样的一个项目,默认创建了一个Hello World。

2、在项目这里 new 一个 JPanel Form 窗口,Burp Suite UI 是基于 JPanel 设计的。

改个你想要的名字

得到这样的界面,接下来就非常方便了

3、把右边的控件拖到面板中,设计出自己喜欢的界面,点击上面这里可以时时预览。

需要注意的几个点#
学过 swing 的应该非常熟悉这个界面,这里对应每个控件的属性。

1、需要注意修改控件这几个属性(名称、修饰符),把名称修改为比较好记的名字,根据自己的需求把控件设置为public ,方便后面写代码中对控件的访问。

2、提前自动生成好监听方法,如果需要点击控件实现某些功能。在 NetBeans IDE 中只要双击对应的控件就可以自动创建好监听方法,省下了自己敲代码。

导出 UI 代码#
NetBeans IDE 用不习惯(看不懂英文),还是回到 IDEA 中写我们的代码。这里就要把 UI 的代码导出来放到我们的 IDEA 中,实际是非常简单,只需要把代码拷贝出来就行。
点开Source这个选项就能看到我们 UI 的源码了,全部复制放 IDEA


IEDA 中测试编写 UI 代码#
因为之前设计的 UI 是一个 JPanel ,所以需要用一个 JFrame 包裹起来。
package UI;
import javax.swing.*;
public class MainClass {
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            JFrame frame = new JFrame("Test Application");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            burpTestUI panel = new burpTestUI();
            frame.add(panel);
            frame.pack();
            frame.setVisible(true);
        });
    }
}
这样就可以在 IDEA 中测试 UI 代码了。

Burp Suite 实现 ITab 接口#
实现 ITab 接口,并在getUiComponent()方法中返回 UI 类的实例,然后注册SuiteTab 。

打包
如何打包就不介绍了,网上很多文章

总结#
总的来说使用 NetBeans IDE 来设计 Burp Suite UI 是非常方便的。