Burp Suite 中文汉化完整指南:从启动命令到翻译定制的实操笔记
【免费下载链接】BurpSuiteCN-ReleaseBurpSuite汉化发布项目地址: https://gitcode.com/gh_mirrors/bu/BurpSuiteCN-Release
Burp Suite 中文汉化要解决的,是安全测试人员面对全英文界面时不断"猜词"的麻烦。BurpSuiteCN-Release 项目把这件事做成了一个可直接下载的发布版:借助 Java Agent(一种能在 JVM 启动时挂到程序上的外挂组件)在运行时把菜单、按钮和提示文字替换成中文,Burp Suite 本体的文件保持原样,随时可以换回英文环境。
🧩 汉化机制:为什么不用改 Burp 的源码
这套翻译层的做法是"挂钩"而不是"替换"。程序在设置窗口标题、按钮文字、标签、提示气泡等位置都会调用 Java 标准图形库的固定方法,汉化组件就拦在这些调用点上,把传入的英文字符串查一遍翻译表再交出去。README 中列出的主要挂钩点包括java/awt/Frame#setTitle、javax/swing/JLabel#setText、javax/swing/AbstractButton#setText、javax/swing/text/JTextComponent#setText等,覆盖了标题栏、标签、按钮和文本框这几类最常见的界面元素。
翻译匹配本身支持正则,所以一条规则可以覆盖一族文案,比如插件翻译文件里就有(?i)Tags? 标签这种写法((?i)表示忽略大小写,\t分隔符右边是译文),也有带分组回填的(?i)About(\W+)README 关于$1阅读,$1会把原文中捕获的部分原样带进译文。理解这一点后,后面自定义翻译就不会觉得神秘。
📥 安装与启动:三种命令对应三种用法
先把仓库克隆到本地:
git clone https://gitcode.com/gh_mirrors/bu/BurpSuiteCN-Release cd BurpSuiteCN-Release之后启动方式三选一:
| 场景 | 命令 | 说明 |
|---|---|---|
| 最省事 | java -jar burpsuitloader-x.xx-all.jar | 一键启动,需在勾选界面里开启 auto start |
| 图形配置 | java -jar burpsuitloader-x.xx-all.jar -r | 打开 keygen 配置页,按需勾选 loader、汉化、一键启动 |
| 手动注入 | %JAVA_HOME%/bin/java -javaagent:burpsuitloader-x.xx-all.jar=loader,han -jar burpsuite_pro_v20xx.jar | 等号后的参数里loader控制加载器,han控制汉化;只写han则仅汉化 |
如果一键启动在你机器上有问题,优先用第三种手动注入方式,它把控制权完全交还给启动命令。内存方面,Burp 本身比较吃内存,可以在java后面加-Xmx4096m这类参数,按机器内存大致对应:8GB 给 4096m,16GB 给 8192m,32GB 给 16384m。
✅ 启动之后怎么确认汉化生效
依次看三处:顶部菜单栏、工具栏图标旁的文字、设置页面里的分组标题。这三处都变成中文,基本可以认为翻译层加载成功。个别位置仍然显示英文,先不要急着改配置,多半是那条文案不在翻译表里,走后面的日志流程就能确认。
另外,较新的发布版支持通过外置文件自定义 Java 版本和参数:bp.java里写 java home 路径,bp.java.options里写额外参数,适合机器上 Java 环境特殊的用户。
📝 默认翻译覆盖不到时:四个外置文件
在发布目录根下按需创建以下文件(都是可选项):
| 文件 | 作用 |
|---|---|
debug(文件或文件夹) | 开启调试日志,已翻译的文本会写入 log 目录 |
white.txt | 不翻译白名单,支持正则,#开头为注释 |
cn.txt | 自定义翻译,支持正则,可覆盖内置内容,Tab 分隔键值 |
cn*.txt | 多文件形式的插件专用翻译,规则同上 |
写规则时记住两条:键值之间用 Tab 而不是空格;#开头的行会被当注释跳过。想跳过某段永远不该动的文案(比如某个变量名恰好长得像英文句子),就放进white.txt;想纠正某个译法,就在cn.txt里写一条更精确的规则,后写者覆盖内置内容。
🧩 插件界面还是英文:为扩展单独加翻译
Burp 主界面汉化后,第三方插件是另一套代码,需要单独给翻译。项目里已附带三份现成的插件翻译文件,可以直接参考格式:
cn-Logger++.txt:日志增强插件,含"处理中""日志来源""正则搜索"等条目cn-PentagridScanController.txt:批量扫描控制器,含"原请求""修改后的响应"等条目cn-Reshaper.txt:请求响应改写插件
给其他插件加汉化的流程是:开启debug启动一次,把插件里残留的英文从日志里挑出来,整理成cn-插件名.txt放进根目录,重启验证。文件名里的插件名要和插件对应,多文件可以同时存在。
🔢 版本号怎么读:[A]A.BB.CC[.DD]
这个项目的版本号不是随意排的,而是日期:
A:可选前缀,通常省略AA:年份减 2020(2022 年写作 2)BB:月份CC:修改日期DD:可选小版本,出现时从 1 起
例如2.11.19.1表示 2022 年 11 月 19 日构建的该日第一个版本。对照这个规则挑版本,就能确认自己手里的翻译是不是最近更新的(较新发布已跟进 Burp 2024.10.1 的界面文案)。
🛠️ 汉化常见问题排查
界面启动后还是英文。检查 agent 参数是否完整。手动注入方式下,等号后必须带han,只写loader不加han时汉化不会启用;参数写错或 jar 路径不对时,程序会照旧启动但没有任何翻译,这一点容易被忽略。
某个页面或弹窗没翻译。先开启debug复现,去 log 里看那段英文到底走了哪个方法。如果日志里根本没有它,说明它不在现有挂钩点上,属于下面"已知局限"的范畴,可以提 issue 给作者。
翻译不准确。根目录的 log 文件会记录翻译过程,把不准确的条目连同日志一起反馈;也可以自己先在cn.txt里写一条覆盖规则应急。
⚠️ 已知局限:哪些地方暂时翻不了
要说明的是,翻译依赖挂钩点覆盖到的调用,并非万能。目前明确翻不了的部分包括:新版设置里的树状菜单内容,以及一些未找到文本注入点的页面。这些在 README 的"已知问题"里都有记录,遇到界面残留英文时,可以先对照判断是"缺翻译条目"还是"压根没挂钩点"——前者自己补规则就能解决,后者只能等作者跟进。
📣 反馈与社区动态
项目把"未翻译内容"当作一等公民来收集:根目录生成的 log 文件会持续记录漏翻文案,反馈问题时附上日志,比只截图高效得多。翻译条目、白名单规则的质量更新都通过 issue 推进,社区里对翻译的增补是常态。从更新节奏看,主线方向是继续扩大覆盖率、跟进更多插件,以及把配置过程做得更傻瓜化;对普通用户来说,跟着版本号更新拿最新的 jar 就是最直接的受益方式。
动手前的三件小事
- 确认本机 Java 版本和 Burp 要求一致,记下
java -version的输出,出问题时先排除环境因素。 - 先跑一键启动,不行再切手动注入,别一上来就改参数。
- 建一个
debug文件再开始用,前期漏翻的文案会自动留痕,后续补翻译有依据。
【免费下载链接】BurpSuiteCN-ReleaseBurpSuite汉化发布项目地址: https://gitcode.com/gh_mirrors/bu/BurpSuiteCN-Release
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考