MCPcopy Index your code
hub / github.com/Maskhe/FastjsonScan / BurpExtender

Class BurpExtender

FastjsonScan/src/burp/BurpExtender.java:15–319  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13
14
15public class BurpExtender extends AbstractTableModel implements IBurpExtender, IScannerCheck, ITab, IMessageEditorController, IContextMenuFactory{
16 public IBurpExtenderCallbacks callbacks;
17 public IExtensionHelpers helpers;
18 public PrintWriter stdout;
19 private JSplitPane splitPane;
20 private IMessageEditor requestViewer;
21 private IMessageEditor responseViewer;
22 private Table logTable;
23 private final List<LogEntry> log = new ArrayList<LogEntry>();
24 private IHttpRequestResponse currentlyDisplayedItem;
25 // 这个方法很重要
26 @Override
27 public void registerExtenderCallbacks(IBurpExtenderCallbacks callbacks) {
28 this.callbacks = callbacks;
29 this.stdout = new PrintWriter(callbacks.getStdout(), true);
30 this.helpers = callbacks.getHelpers();
31 this.stdout.println("[+]作 者:阿信");
32 this.stdout.println("[+]公众号:一个安全研究员");
33 this.stdout.println("[+]插件名:Fastjson Scan");
34 this.stdout.println("######################");
35 this.stdout.println("Have Fun!");
36 callbacks.setExtensionName("FastjsonScan");
37 callbacks.registerScannerCheck(this);
38 callbacks.registerContextMenuFactory(this);
39 SwingUtilities.invokeLater(new Runnable(){
40 @Override
41 public void run() {
42 splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
43 logTable = new Table(BurpExtender.this);
44 JScrollPane scrollPane = new JScrollPane(logTable);
45 splitPane.setLeftComponent(scrollPane);
46
47 JTabbedPane tabs = new JTabbedPane();
48 requestViewer = BurpExtender.this.callbacks.createMessageEditor(BurpExtender.this, false);
49 responseViewer = BurpExtender.this.callbacks.createMessageEditor(BurpExtender.this, false);
50 tabs.addTab("Request", requestViewer.getComponent());
51 tabs.addTab("Response", responseViewer.getComponent());
52 splitPane.setRightComponent(tabs);
53
54 BurpExtender.this.callbacks.customizeUiComponent(splitPane);
55 BurpExtender.this.callbacks.customizeUiComponent(logTable);
56 BurpExtender.this.callbacks.customizeUiComponent(scrollPane);
57 BurpExtender.this.callbacks.customizeUiComponent(tabs);
58
59 BurpExtender.this.callbacks.addSuiteTab(BurpExtender.this);
60 }
61 });
62 }
63
64 @Override
65 public List<IScanIssue> doPassiveScan(IHttpRequestResponse baseRequestResponse) {
66 return null;
67 }
68
69 @Override
70 public List<IScanIssue> doActiveScan(IHttpRequestResponse baseRequestResponse, IScannerInsertionPoint insertionPoint) {
71 // this.stdout.println(insertionPoint.getInsertionPointType());
72// List<String> payloads = new ArrayList<String>();

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected