BurpLoaderKeygen v1.18版本修复

BurpLoaderKeygen v1.18版本修复
BurpLoaderKeygen v1.18版本修复

新人发帖,佬友们多多包涵~

如题,一直用的BurpLoaderKeygen项目(由h3110w0r1d-y大佬开发,现在github页面已经挂了,可以去readme的Telegram频道里下载V1.18版本)。最近打开发现自动更新挂了,作为一个追求用最新版本的强迫症,且最近正在学静态分析,那还说啥了,得修啊~

Failed to check the latest version of BurpSuite

不咋会java逆向,直接拿jadx-gui打开,全局搜索Failed to check the latest version of Burpsuite,发现CheckNewVersion方法,定位跟进,发现调用GetLatestVersion()方法,继续跟进。

private static String GetLatestVersion() {
    try {
        if (VersionData == null) {
            VersionData = GetHTTPBody("https://portswigger.net/burp/releases/data?pageSize=5");
        }
        JSONObject data = JSONParse.Parse(VersionData);
        if (data == null) {
            return "";
        }
        JSONObject[] Results = data.get("ResultSet").getList("Results");
        for (JSONObject Result : Results) {
            boolean isProfessional = false;
            boolean isEarlyAdopter = false;
            for (JSONObject category : Result.getList("categories")) {
                if ("Professional".equals(category.String())) {
                    isProfessional = true;
                }
            }
            if (isProfessional) {
                if ("Early Adopter".equals(Result.getList("releaseChannels")[0].String())) {
                    isEarlyAdopter = true;
                }
                if (!isEarlyAdopter || "1".equals(readProperty("early"))) {
                    return Result.getString("version");
                }
            }
        }
        return "";
    } catch (Exception e) {
        return "";
    }
}

在GetLatestVersion()方法体里发现访问的url是https://portswigger.net/burp/releases/data?pageSize=5,修改pageSize=5pageSize=30,手工访问并结合代码确定最新版本的逻辑,成功定位问题:BurpSuite的toC产品名逻辑自2026.4.1开始发生了改变, categories字段取值由原来的"categories": ["Community", "Professional"]变为了"categories": ["Desktop"],导致原版本中isProfessional始终为假。

由此可得修改方案:

  • "Professional".equals(category.String())修改为"Desktop".equals(category.String())
  • https://portswigger.net/burp/releases/data?pageSize=5修改为https://portswigger.net/burp/releases/data?pageSize=10(5条中不包含Early Adopter通道,改为10条后可支持下载Early Adopter版本);
  • 将类常量KeygenForm.DownloadURLhttps://portswigger-cdn.net/burp/releases/download?product=pro&type=Jar&version=修改为https://portswigger-cdn.net/burp/releases/download?product=desktop&type=Jar&version=

至此,修复完成(问了AI,说jadx-ui不支持patch,建议用Recaf,操作和上述差不多,Ctrl+S就自动patch了,不多赘述了~~~)。

p.s. 读了社区准则,发现加网盘链接需要发到指定区,emmm那就暂不提供修复成品了,有需要的佬友可以按照教程自行修复~

1 个帖子 - 1 位参与者

阅读完整话题

来源: LinuxDo 最新话题查看原文