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 是非常方便的。