From 48e355ac546fe79ef5187b15c338b6a5b0869b24 Mon Sep 17 00:00:00 2001 From: AnonymousUser Date: Sun, 18 Dec 2022 15:09:28 +0800 Subject: [PATCH] Update --- images/databoard.png | Bin 84005 -> 55887 bytes src/main/java/burp/BurpExtender.java | 3 +- src/main/java/burp/action/ExtractContent.java | 12 +++- src/main/java/burp/ui/Databoard.java | 68 ++++++++++++++++-- src/main/java/burp/ui/MainUI.java | 41 ++++++----- 5 files changed, 94 insertions(+), 30 deletions(-) diff --git a/images/databoard.png b/images/databoard.png index 9b76c60fb9de64683707984d118e64349587a098..eaf47badf6d69bf171b9cf57c21ff4e7217ec592 100644 GIT binary patch literal 55887 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 K-hw@zzx^K^RLdd& literal 84005 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 diff --git a/src/main/java/burp/BurpExtender.java b/src/main/java/burp/BurpExtender.java index ee5b7f9..fa407e2 100644 --- a/src/main/java/burp/BurpExtender.java +++ b/src/main/java/burp/BurpExtender.java @@ -34,7 +34,7 @@ public class BurpExtender implements IBurpExtender, IHttpListener, IMessageEdito this.callbacks = callbacks; BurpExtender.helpers = callbacks.getHelpers(); - String version = "2.4.4"; + String version = "2.4.5"; callbacks.setExtensionName(String.format("HaE (%s) - Highlighter and Extractor", version)); // 定义输出 stdout = new PrintWriter(callbacks.getStdout(), true); @@ -104,7 +104,6 @@ public class BurpExtender implements IBurpExtender, IHttpListener, IMessageEdito messageInfo.setHighlight(color); String addComment = String.join(", ", result.get(1).get("comment")); - stdout.println(addComment); String resComment = !Objects.equals(originalComment, "") ? String.format("%s, %s", originalComment, addComment) : addComment; messageInfo.setComment(resComment); diff --git a/src/main/java/burp/action/ExtractContent.java b/src/main/java/burp/action/ExtractContent.java index 500674b..266f5c9 100644 --- a/src/main/java/burp/action/ExtractContent.java +++ b/src/main/java/burp/action/ExtractContent.java @@ -99,15 +99,16 @@ public class ExtractContent { map.keySet().forEach(i -> { Map tmpMap = map.get(i); List dataList = Arrays.asList(tmpMap.get("data").toString().split("\n")); + // 组合通配符Host + String anyHost = host.replace(host.split("\\.")[0], "*"); // 判断Host是否存在,如存在则进行数据更新,反之则新增数据 if (Config.globalDataMap.containsKey(host)) { Map> gRuleMap = Config.globalDataMap.get(host); // 判断匹配规则是否存在(逻辑同Host判断) if (gRuleMap.containsKey(i)) { List gDataList = gRuleMap.get(i); - List mergeDataList = new ArrayList<>(); + List mergeDataList = new ArrayList<>(gDataList); // 合并两个List - mergeDataList.addAll(gDataList); mergeDataList.addAll(dataList); // 去重操作 HashSet tmpList = new HashSet(mergeDataList); @@ -118,9 +119,14 @@ public class ExtractContent { } else { gRuleMap.put(i, dataList); } - } else { + } else if (!Config.globalDataMap.containsKey(anyHost)) { + // 添加通配符Host + Config.globalDataMap.put(anyHost, new HashMap<>()); + } + else { Map> ruleMap = new HashMap<>(); ruleMap.put(i, dataList); + // 添加单一Host Config.globalDataMap.put(host, ruleMap); } }); diff --git a/src/main/java/burp/ui/Databoard.java b/src/main/java/burp/ui/Databoard.java index 45d740d..d00dde5 100644 --- a/src/main/java/burp/ui/Databoard.java +++ b/src/main/java/burp/ui/Databoard.java @@ -1,6 +1,8 @@ package burp.ui; import burp.Config; +import java.util.HashMap; +import java.util.HashSet; import java.util.List; import javax.swing.table.DefaultTableModel; import org.jetbrains.annotations.NotNull; @@ -14,7 +16,7 @@ import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; /** - * @author LinChen + * @author LinChen && EvilChen */ public class Databoard extends JPanel { @@ -22,11 +24,33 @@ public class Databoard extends JPanel { initComponents(); } + /** + * 清空数据 + */ + private void clearActionPerformed(ActionEvent e) { + // 清空页面 + dataTabbedPane.removeAll(); + // 判断通配符Host/单一Host + String host = hostTextField.getText(); + if(host.contains("*")){ + Map>> ruleMap = Config.globalDataMap; + Map> selectHost = new HashMap<>(); + ruleMap.keySet().forEach(i -> { + if (i.contains(host.replace("*.", ""))) { + Config.globalDataMap.remove(i); + } + }); + } else { + Config.globalDataMap.remove(host); + } + } + private void initComponents() { // JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents hostLabel = new JLabel(); hostTextField = new JTextField(); dataTabbedPane = new JTabbedPane(); + clearButton = new JButton(); //======== this ======== setLayout(new GridBagLayout()); @@ -43,7 +67,11 @@ public class Databoard extends JPanel { add(hostTextField, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(8, 0, 5, 5), 0, 0)); - + clearButton.setText("Clear"); + clearButton.addActionListener(this::clearActionPerformed); + add(clearButton, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, + GridBagConstraints.CENTER, GridBagConstraints.BOTH, + new Insets(8, 0, 5, 5), 0, 0)); add(dataTabbedPane, new GridBagConstraints(1, 1, 3, 2, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(8, 0, 0, 5), 0, 0)); @@ -56,9 +84,7 @@ public class Databoard extends JPanel { */ private static List getHostByList(){ List hostList = new ArrayList<>(); - Config.globalDataMap.keySet().forEach(i -> { - hostList.add(i); - }); + hostList.addAll(Config.globalDataMap.keySet()); return hostList; } @@ -164,9 +190,36 @@ public class Databoard extends JPanel { private static void getInfoByHost(@NotNull JComboBox hostComboBox, JTabbedPane tabbedPane, JTextField textField) { if (hostComboBox.getSelectedItem() != null) { Map>> ruleMap = Config.globalDataMap; - Map> selectUrl = ruleMap.get(hostComboBox.getSelectedItem()); + Map> selectHost = new HashMap<>(); + String host = hostComboBox.getSelectedItem().toString(); + if (host.contains("*")) { + // 通配符数据 + Map> finalSelectHost = selectHost; + ruleMap.keySet().forEach(i -> { + if (i.contains(host.replace("*.", ""))) { + ruleMap.get(i).keySet().forEach(e -> { + if (finalSelectHost.containsKey(e)) { + // 合并操作 + List newList = new ArrayList<>(finalSelectHost.get(e)); + newList.addAll(ruleMap.get(i).get(e)); + // 去重操作 + HashSet tmpList = new HashSet(newList); + newList.clear(); + newList.addAll(tmpList); + // 添加操作 + finalSelectHost.put(e, newList); + } else { + finalSelectHost.put(e, ruleMap.get(i).get(e)); + } + }); + } + }); + } else { + selectHost = ruleMap.get(host); + } + tabbedPane.removeAll(); - for(Map.Entry> entry: selectUrl.entrySet()){ + for(Map.Entry> entry: selectHost.entrySet()){ tabbedPane.addTab(entry.getKey(), new JScrollPane(new HitRuleDataList(entry.getValue()))); } textField.setText(hostComboBox.getSelectedItem().toString()); @@ -177,6 +230,7 @@ public class Databoard extends JPanel { private JLabel hostLabel; private JTextField hostTextField; private JTabbedPane dataTabbedPane; + private JButton clearButton; // JFormDesigner - End of variables declaration //GEN-END:variables // 是否自动匹配Host diff --git a/src/main/java/burp/ui/MainUI.java b/src/main/java/burp/ui/MainUI.java index db28cfd..89f05e7 100644 --- a/src/main/java/burp/ui/MainUI.java +++ b/src/main/java/burp/ui/MainUI.java @@ -18,7 +18,7 @@ import java.awt.event.*; import java.util.Map; /** - * @author LinChen + * @author LinChen && EvilChen */ public class MainUI extends JPanel{ @@ -45,24 +45,29 @@ public class MainUI extends JPanel{ } private void onlineUpdateActionPerformed(ActionEvent e) { - String url = "https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml"; - OkHttpClient httpClient = new OkHttpClient(); - Request httpRequest = new Request.Builder().url(url).get().build(); - try { - Response httpResponse = httpClient.newCall(httpRequest).execute(); - // 获取官方规则文件,在线更新写入 - String configFile = configTextField.getText(); - FileOutputStream fileOutputStream = new FileOutputStream(configFile); - fileOutputStream.write(httpResponse.body().bytes()); - JOptionPane.showMessageDialog(null, "Config file updated successfully!", "Error", - JOptionPane.INFORMATION_MESSAGE); - } catch (Exception ignored) { - JOptionPane.showMessageDialog(null, "Please check your network!", "Error", - JOptionPane.ERROR_MESSAGE); - } + // 添加提示框防止用户误触导致配置更新 + int retCode = JOptionPane.showConfirmDialog(null, "Do you want to update config?", "Info", + JOptionPane.YES_NO_CANCEL_OPTION); + if (retCode == JOptionPane.YES_OPTION) { + String url = "https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml"; + OkHttpClient httpClient = new OkHttpClient(); + Request httpRequest = new Request.Builder().url(url).get().build(); + try { + Response httpResponse = httpClient.newCall(httpRequest).execute(); + // 获取官方规则文件,在线更新写入 + String configFile = configTextField.getText(); + FileOutputStream fileOutputStream = new FileOutputStream(configFile); + fileOutputStream.write(httpResponse.body().bytes()); + JOptionPane.showMessageDialog(null, "Config file updated successfully!", "Error", + JOptionPane.INFORMATION_MESSAGE); + } catch (Exception ignored) { + JOptionPane.showMessageDialog(null, "Please check your network!", "Error", + JOptionPane.ERROR_MESSAGE); + } - new LoadConfig(); - reloadRule(); + new LoadConfig(); + reloadRule(); + } } private void reloadRule(){