跳到主要内容
项目档案应用项目

Ghidra开源软件逆向工程框架:NSA研发的跨平台二进制分析工具,支持反汇编反编译与脚本扩展

Ghidra是美国国家安全局研发的开源软件逆向工程框架,支持多平台运行,提供反汇编、反编译、脚本扩展等核心能力,适用于恶意代码分析、漏洞挖掘等场景,本文档包含项目介绍、安装与使用指南。

76,949JavaStar 于 2026年9月14日2026年9月16日 更新

AI 总结

Ghidra是由美国国家安全局(NSA)研发的开源软件逆向工程(SRE)框架,支持多平台运行,提供反汇编、反编译、脚本扩展等全功能分析能力,广泛应用于恶意代码分析、漏洞研究等网络安全领域。

中文项目介绍

Ghidra是由美国国家安全局(NSA)研发并维护的开源软件逆向工程(SRE)框架,支持Windows、macOS、Linux多平台运行,核心能力涵盖反汇编、反编译、图形化分析、脚本自动化等数百项功能,兼容多种处理器指令集与可执行格式,既支持交互式人工分析也支持自动化分析流程,用户可使用Java或Python开发自定义扩展与脚本。 NSA研发Ghidra的核心目标是解决复杂软件逆向工程场景下的规模化分析、跨团队协作痛点,为分析恶意代码、挖掘系统潜在漏洞、研判网络安全威胁提供可定制、可扩展的研究平台,大幅降低二进制代码深度分析的技术门槛与成本。 其适用场景包括恶意代码逆向分析、二进制程序漏洞挖掘、嵌入式固件安全分析、逆向工程自动化脚本开发、安全研究团队协作分析等网络安全相关领域。 从当前仓库信息可见,Ghidra基于Gradle构建,强制要求64位JDK运行,支持集成Python3环境;扩展系统基于OSGi动态模块化架构,支持包内依赖、跨OSGi包依赖、外部Jar包依赖三类模式,支持多版本OSGi包并行存在,配套Eclipse插件支持IDE内扩展开发调试。

详细信息与使用说明

1. 项目定位与用途

Ghidra是美国国家安全局(NSA)研发并维护的开源软件逆向工程(SRE)框架,属于完整的全功能逆向分析应用。其核心用途是对各类平台的编译后代码进行深度分析,内置反汇编、反编译、图形化调用链分析、脚本自动化等数百项功能,支持用户交互式分析与全自动化分析流程,可通过Java或Python开发自定义扩展与脚本,满足不同逆向分析需求。

2. 解决的问题

Ghidra由NSA为支撑其网络安全使命研发,核心解决复杂软件逆向工程场景下的规模化分析、跨团队协作难题,为分析恶意代码、挖掘系统潜在漏洞、研判网络安全威胁提供可定制、可扩展的研究平台,大幅降低二进制代码深度分析的技术门槛与成本。

3. 适用场景

根据仓库公开信息,Ghidra适用于以下场景:恶意代码逆向分析、二进制程序漏洞挖掘、嵌入式固件安全分析、逆向工程自动化脚本开发、安全研究团队协作分析,可覆盖从个人分析到团队协作的各类逆向工程需求。

4. 安装方式

官方预构建版本的安装步骤为:1. 安装64位JDK 25;2. 下载官方多平台预构建发布包(文件名为ghidra_<版本>_<发布号>_<日期>.zip,注意不要下载Source Code源码包);3. 解压发布包,注意不要覆盖已有安装目录;4. 运行./ghidraRun(Windows系统为ghidraRun.bat)启动Ghidra,或运行./support/pyghidraRun(Windows为support\\pyghidraRun.bat)启动PyGhidra。详细安装与故障排查可参考安装目录下的Getting Started文档。

5. 使用方式

Ghidra支持两种核心使用模式:一是交互式手动分析,分析人员可通过图形化界面开展反汇编、反编译、调用链分析等操作;二是自动化分析,可通过脚本实现批量分析流程。扩展开发方面,用户可使用Java或Python开发自定义扩展组件与脚本,可通过GhidraDev插件在Eclipse或VS Code中开展扩展开发,脚本可通过@category元数据声明分类、通过@importpackage元数据声明依赖关系。

6. 补充说明与实现特点

从当前仓库代码与文档可见,Ghidra基于Gradle构建,强制要求64位JDK运行,支持集成Python3环境;扩展系统基于OSGi动态模块化架构,支持包内依赖、跨OSGi包依赖、外部Jar包依赖三类依赖模式,支持多版本OSGi包并行存在,配套Eclipse插件适配支持IDE内扩展开发调试。另外README明确提示Ghidra部分版本存在已知安全漏洞,使用前需查阅官方安全公告确认影响范围。

思维导图

Ghidra软件逆向工程框架
核心能力
反汇编
反编译
图形化分析
脚本自动化
多平台支持
扩展系统
OSGi动态模块化架构
Java/Python扩展开发
Eclipse/VS Code插件适配
多版本包并行支持
构建与开发
Gradle构建体系
64位JDK强制要求
Python3集成
Docker镜像支持
适用场景
恶意代码分析
漏洞挖掘
固件安全分析
团队协作分析

常见问题

Ghidra支持哪些操作系统?

根据仓库公开信息,Ghidra支持Windows、macOS、Linux多平台运行。

开发Ghidra扩展需要准备哪些环境?

需要64位JDK 25、Gradle 9.1.0+、Python 3.9-3.14,Windows系统还需安装Microsoft Visual Studio 2017+及MSVC、Windows SDK、C++ ATL组件,可通过GhidraDev插件在Eclipse或VS Code中开展扩展开发。

Ghidra支持哪些编程语言开发扩展?

仓库明确说明用户可使用Java或Python开发自定义Ghidra扩展组件和脚本。

使用Ghidra有什么安全注意事项?

README明确提示Ghidra部分版本存在已知安全漏洞,使用前需查阅官方安全公告确认自身使用的版本是否受影响。

如何启动Ghidra?

预构建版本解压后,在安装目录下运行./ghidraRun(Windows系统为ghidraRun.bat)即可启动Ghidra,也可运行./support/pyghidraRun(Windows为support\\pyghidraRun.bat)启动PyGhidra。