# GhidraGPT：调用大模型辅助逆向的 Ghidra 扩展

> Ghidra 扩展，把单个函数的反编译 C 代码发送给使用者选定的托管或本地大模型，并将回复流式显示在 GhidraGPT 控制台中。反编译视图和列表视图的右键菜单提供三项操作：解释函数；改写函数，把恢复出的函数名、参数名与变量名、类型、函数原型及行内注释写回程序；以及审查函数中可能存在的安全问题。每项操作只使用当前函数的反编译输出，README 称审查结果只是需要核实的线索，并非严谨的静态分析。

- 类型：集成
- 目标：二进制
- 类别：独立智能体工作流
- 关联：独立智能体集成
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/weirdmachine64/GhidraGPT>
- 一手来源：<https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/ghidragpt/>
- 记录 JSON：<https://awesomerea.org/resources/ghidragpt/record.json>
- 英文版：[English](https://awesomerea.org/resources/ghidragpt/index.md)

## 使用条件与局限

- 所审阅的 main 提交即 2026-07-22 发布的 v1.4.0，该版本附带 GhidraGPT-1.4.0.zip。extension.properties 声明 Ghidra 12.1.2，README 要求 Ghidra 12.1.x，并说明扩展声明的兼容版本就是构建时所用的 Ghidra 版本。从源码构建需要 JDK 21+、Maven，并将 GHIDRA_INSTALL_DIR 指向本地 Ghidra；随后通过 Ghidra 的 Install Extensions 对话框添加生成的 zip。
- 每次请求都会把函数名及其反编译代码发送给配置的服务商；改写操作还会在每行前标注指令地址，并附上变量列表。可选服务商包括 OpenAI、Anthropic、Google Gemini、Cohere、Mistral AI、DeepSeek、Grok、OpenRouter、本地 Ollama 模型，以及任何兼容 OpenAI 接口的端点。托管服务需使用者自备 API 密钥，README 说明密钥保存在用户主目录下 .ghidragpt 文件夹的 config.properties 中，仅经 XOR 混淆而非加密；除 Ollama 外均需联网。
- 改写操作在 Ghidra 事务中直接应用解析出的名称、类型、函数原型和注释，没有单独的确认步骤。README 说明它不做跨过程或全程序分析，因此函数之外的调用者、被调用者和数据流都不会提供给模型。
- CI 下载 Ghidra 12.1.2、配置 JDK 21，并运行 Maven 单元测试，覆盖配置处理、提示词构建以及模型回复与改写编辑的解析；这些测试不涉及 Ghidra 界面或模型输出。
- 采用 Apache-2.0 许可证；README 署名作者为 Mohamed Benchikh。Ghidra 和各模型服务商各有其许可与条款。

## 一手来源

1. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/README.md>
2. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/extension.properties>
3. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/pom.xml>
4. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/ui/Provider.java>
5. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/service/FunctionRewrite.java>
6. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/utils/PromptBuilder.java>
7. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/config/ConfigurationManager.java>
8. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/.github/workflows/tests.yml>
9. <https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/LICENSE>
10. <https://github.com/weirdmachine64/GhidraGPT/releases/tag/v1.4.0>

## 同分区更多条目：智能体与 MCP

- [GhidrAssist Ghidra 大模型辅助分析扩展](https://awesomerea.org/zh/resources/ghidrassist/index.md) · 集成
- [Rikugan](https://awesomerea.org/zh/resources/rikugan/index.md) · 集成
- [bn：面向智能体的 Binary Ninja 命令行工具](https://awesomerea.org/zh/resources/bn-binary-ninja-agent-cli/index.md) · 集成
- [IDA Pro MCP 服务器（fdrechsler）](https://awesomerea.org/zh/resources/mcp-server-idapro-fdrechsler/index.md) · 集成
- [Ghidra Headless MCP](https://awesomerea.org/zh/resources/ghidra-headless-mcp/index.md) · 集成
- [Binary Ninja Headless MCP（无界面）](https://awesomerea.org/zh/resources/binary-ninja-headless-mcp/index.md) · 集成

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
