Ghidra教程:78.5k星NSA开源逆向工程框架,反汇编+反编译+脚本扩展

📌 项目:NationalSecurityAgency/ghidra | 星数:78.5k(Java,Apache-2.0)| 日期:2026-09-18 | 今日 GitHub Trending +912 | 来源:GitHub | Trending详情

📋 项目简介

Ghidra(78.5k星,Apache-2.0,Java)是NSA(美国国家安全局)2019年开源的软件逆向工程(SRE)框架。它提供反汇编、反编译、Graph视图、脚本扩展等能力,支持二进制分析、漏洞研究、恶意软件分析。跨平台(Windows/macOS/Linux)免费,被视为IDA Pro的开源替代。今日GitHub Trending +912。

📊 核心特性

特性说明
反汇编+反编译支持x86/x64/ARM/MIPS等多架构反汇编,Decompiler反编译为C伪代码
Graph视图控制流图+调用图+数据流图,可视化分析函数逻辑
脚本扩展GhidraScript(Java/Python)批量自动化分析,Plugin生态
版本追踪Version Tracking对比多版本二进制,定位变更函数
协作分析共享Ghidra Server多人协作,适合团队逆向项目

⚡ 安装与运行

# 下载(官网 https://ghidra-sre.org/ 或 GitHub Release)
# 需 JDK 17+

# Linux/macOS
unzip ghidra_*_PUBLIC_*.zip
cd ghidra_*_PUBLIC
./support/launchGhidra

# 或命令行分析
./support/analyzeHeadless /tmp/project proj -import binary.exe -postScript MyScript.java

💡 使用建议

📚 常见问题

Ghidra和IDA Pro有什么区别?

Ghidra是NSA开源免费(Apache-2.0),IDA Pro是商业付费。Ghidra跨平台、支持反编译、脚本扩展(Java/Python)、协作分析,功能覆盖IDA Pro大部分场景。IDA Pro在反汇编精度和插件生态仍领先,但Ghidra免费+开源+反编译是其优势。

需要什么环境?

需JDK 17+(Java运行时)。跨平台支持Windows/macOS/Linux。下载解压即可运行,无需安装。Headless模式可在服务器/CI无GUI环境运行。

能自动化批量分析吗?

能。analyzeHeadless命令行模式+GhidraScript(Java/Python)实现批量自动化:导入二进制→运行分析脚本→导出结果。适合CI集成和大规模二进制分析。