NationalSecurityAgency/ghidra
面向逆向工程和安全分析,对看不到源码的二进制做反汇编与反编译的开源工作台。
解决什么问题
拿到一个固件包、可疑可执行文件,或厂商拒绝提供源码的库,你需要弄清它到底做了什么。商业逆向套件价格高、授权受限,而单纯的反汇编器只会给你一堆汇编让你硬读。Ghidra 把反汇编、反编译成类 C 代码、图形化调用关系、脚本化分析、多指令集与多可执行格式支持收进一个可直接安装的工作台,让分析闭环不用东拼西凑。
有什么不同
对比长期占据商业市场的 IDA Pro,Ghidra 的核心差异在成本与开放性:免费、Apache-2.0,反编译器、脚本层和扩展 API 都可以改,而不是黑盒。对比 radare2,后者更偏命令行与脚本化,学习曲线陡、反编译集成度较弱,Ghidra 则提供 GUI 重、面向团队协作的流程——README 明确说它是为了应对复杂 SRE 的规模化与团队协作问题而建。另一个值得注意的点是交互式与自动化双模式:可以脚本化跑无头分析,而不是逐个文件点界面;扩展支持 Java 和 Python。反编译结果足以应付日常初筛,但不能指望它输出可读源码。
适合谁
安全研究员、恶意样本分析师、漏洞挖掘者,以及需要检查固件或第三方二进制、又不想为 IDA 授权买单的嵌入式工程师。需要批量分析大量样本的团队能受益于无头脚本。只想快速看 strings 或十六进制的轻度用户不必上这套;纯动态插桩场景也不对口;需要厂商支持和 SLA 的,请另找商业方案——NSA 不卖支持,问题靠社区回答。
上手成本
需要 JDK 25 64 位;README 警告某些版本存在已知安全漏洞,部署前务必看安全公告。从源码构建还要 Gradle 9.1.0+、Python 3.9 到 3.15,以及 GCC/Clang 或 Visual Studio 构建工具;多数人直接下载 release 压缩包运行 ./ghidraRun 即可。学习成本真实存在:界面信息密度高,反编译结果需要汇编基础才能判断可信度。开发流程高度围绕 Eclipse,略显陈旧;发布节奏稳定,但项目由政府团队维护,迭代风格偏流程化。
点评
这不是新项目:仓库创建于 2019 年,已积累约 9.4 万 star、1.05 万 fork,对逆向工程工具而言是相当大的体量。近期信号是一个月新增约 1.4 万 star、全语言月榜第 10,加上一条 433 分的 Hacker News 讨论——更像是主流关注度回升,而不是新项目蹭热度。Apache-2.0 消除了常见的商业门槛,真正的成本是学界面和读懂反编译输出。如果逆向是你工作中的常态,它几乎是默认选项;如果只是偶尔用,要为爬坡留出时间。
Hacker News 讨论
本文由 AI 根据项目 README 生成,更新于 2026年10月24日,以项目官方文档为准。