Ghidra 是由国家安全局研究局创建和维护的软件逆向工程 (SRE) 框架 。该框架包括一套功能齐全的高端软件分析工具,使用户能够分析各种平台(包括 Windows、macOS 和 Linux)上的编译代码。功能包括反汇编、汇编、反编译、绘图和脚本,以及数百种其他功能。Ghidra 支持多种处理器指令集和可执行格式,可以在用户交互和自动模式下运行。用户还可以使用 Java 或 Python 开发自己的 Ghidra 扩展组件和/或脚本。
为了支持 NSA 的网络安全使命,Ghidra 旨在解决复杂 SRE 工作的扩展和团队问题,并提供可定制和可扩展的 SRE 研究平台。NSA 已将 Ghidra SRE 功能应用于各种问题,这些问题涉及分析恶意代码并为寻求更好地了解网络和系统中潜在漏洞的 SRE 分析师生成深入见解。
警告:某些版本的 Ghidra 中存在已知的安全漏洞。在继续之前,请通读 Ghidra 的安全公告,以便更好地了解您可能受到的影响。
[hidecontent type="logged" desc="隐藏内容:登录后可查看"]
要安装官方预构建的多平台 Ghidra 版本:
./ghidraRun
或ghidraRun.bat
适用于 Windows)有关安装和运行 Ghidra 版本的其他信息和故障排除提示,请参阅docs/InstallationGuide.html
可在提取的 Ghidra 版本目录中找到的内容。
要从此源存储库为您的平台创建最新的开发版本:
unzip ghidra-master
cd ghidra-master
注意:您可能不想下载压缩源,而是克隆 GitHub 存储库:git clone https://github.com/NationalSecurityAgency/ghidra.git
gradle -I gradle/support/fetchDependencies.gradle init
gradle buildGhidra
压缩开发版本将位于build/dist/
.
有关构建 Ghidra 的更多详细信息,请阅读开发人员指南。
对于构建问题,请查看已知问题部分以获取可能的解决方案。
Ghidra 安装支持用户通过Eclipse 的GhidraDev插件编写自定义脚本和扩展。该插件及其相应的说明可以在 Ghidra 版本中找到,网址为 Extensions/Eclipse/GhidraDev/
。
要开发 Ghidra 工具本身,强烈建议使用 Eclipse,Ghidra 开发流程已针对 Eclipse 进行了高度定制。
gradle prepdev eclipse buildNatives
当 Eclipse 完成项目构建时,可以使用提供的 Ghidra Eclipse运行配置启动和调试 Ghidra 。
有关开发 Ghidra 的更多详细信息,请阅读开发人员指南。
[/hidecontent]