工具
rz-ghidra Rizin 的 Ghidra 反编译器插件
Rizin 插件,内嵌 Ghidra 的 C++ 反编译器和 Sleigh 反汇编器,因此无需安装 Java 版 Ghidra。其 pdg 系列命令可反编译当前函数,也可与偏移量并排显示或以 XML、JSON 格式输出,还能把结果作为注释写回 Rizin,并列出已加载的 Sleigh 语言;配置变量可调整输出格式,也可覆盖自动检测到的 Sleigh 语言。反编译器使用 Rizin 已加载的二进制、类型和注释;另有可选插件将其接入 Cutter 图形界面。
使用条件与局限
- 审阅时最新版本为 v0.9.0,于 2026-06-21 以源码包发布,其发布说明称与 Rizin v0.9.x 系列兼容,并将所用的 Ghidra 代码更新到 12.1。所审阅的 dev 分支提交(2026-10-12)跟随 Rizin 的 dev 分支,比该发布标签多 3 个提交、少 5 个提交。README 指出版本号并不保证与 Rizin 兼容,建议发行版维护者改用 rz-* 标签。
- 需先拉取 rizinorg/ghidra 和 pugixml 子模块,再用 CMake 针对已安装的 Rizin 构建。必须执行安装步骤,因为它会安装 Sleigh 文件;使用 rz-pm 软件包时会自动配置。Cutter 插件需要从源码安装的 Cutter,并启用 -DBUILD_CUTTER_PLUGIN=ON。CI 在 Debian Bullseye、Arch Linux 和 Windows 上构建。
- 反编译只适用于已在 Rizin 中加载并分析的二进制,且其架构须已安装 Sleigh 规范;输出即 Ghidra 反编译器的结果,需要分析者核查。
- 采用 LGPL-3.0-or-later 许可,README 特别指出它比 Ghidra 自身的许可更严格;反编译器源码来自独立的 rizinorg/ghidra 分支。测试用二进制由仓库中的 C 源码构建。本次未反编译任何二进制。
关于此条目
- 类型
- 工具
- 类别
- 原生分析工具
- 关联
- 基础工具
- 目标
- 二进制
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- README.md#L12-L40 GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- README.md#L75-L93 GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- .gitmodules GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- src GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- cutter-plugin GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- .github/workflows/ci.yml GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- test/bins GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- COPYING GitHub · rizinorg/rz-ghidra · 修订 0f4e062
- https://github.com/rizinorg/rz-ghidra/releases/tag/v0.9.0