# GhidrAssist Ghidra 大模型辅助分析扩展

> 由 GhidrAssistMCP 作者 Jason Tang 开发的 Ghidra 扩展，在 CodeBrowser 中加入多标签页的 GhidrAssist 窗口，借助大语言模型分析当前打开的程序。各标签页可解释反编译或反汇编后的函数并附安全摘要，保存支持上下文宏、MCP 工具调用和可选 ReAct 智能体模式的持久对话，为函数和变量提出重命名、类型修改及结构体建议并在审阅后应用，还能构建涵盖函数、调用关系和安全特征的语义知识图谱并进行社区检测，同时可借助 Lucene 检索分析人员添加的参考文档。SymGraph 标签页则通过托管的 symgraph.ai 服务导入和发布名称、类型、图谱数据及文档。

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

## 使用条件与局限

- 审阅时最新版本为 2.2.0，于 2026-05-29 发布，提供适用于 Ghidra 12.0 和 12.1 Public 的扩展 zip；所审阅的 master 分支提交比它晚三个提交，仅更新了模型建议和最大 token 数处理。README 和入门指南写明最低需要 Ghidra 11.0，但发布的 zip 按 Ghidra 版本分别构建，近期版本只覆盖 12.x。通过 File → Install Extensions 安装后，需在 CodeBrowser 的 File → Configure → Miscellaneous 中启用插件；从源码构建使用 Gradle，并需设置 GHIDRA_INSTALL_DIR。
- 分析需要至少配置一个大模型服务。所审阅的服务类型包括 Anthropic、OpenAI、Azure OpenAI、Gemini 和 xAI 的 API，通过 OAuth 登录的 OpenAI 与 Gemini 订阅，本地 Claude Code CLI，LiteLLM 代理，以及本地 Ollama、LM Studio 或 Open WebUI 端点；文档的服务类型表还列出了一个源码中并未定义的 Anthropic OAuth 类型。解释、对话、Actions、智能体运行以及图谱的 Semantic Analysis 步骤都会把伪代码或反汇编发送给当前服务，只有本地或自托管端点才能让代码不离开本机；图谱重建索引和 Security Analysis 则无需调用模型。对话、解释、图谱数据和反馈保存在本地 SQLite 数据库和 Lucene 索引中，路径可在 Settings 中设置。
- 待分析程序来自用户自己的 Ghidra 项目。Actions 的建议只对用户勾选的行生效。对话可通过 SSE 或 streamable HTTP 连接 MCP 服务器，也可通过 stdio 启动；内置工具可读取当前函数和地址、执行 Actions 修改并查询语义图谱，README 建议搭配 GhidrAssistMCP 获取反编译、交叉引用等 Ghidra 专用工具。名称看起来并非只读的工具，调用前需等待用户选择允许一次、本会话允许或拒绝，而这种分类依赖工具名称中的关键词。
- SymGraph 标签页无需密钥即可按 SHA-256 查询程序，但导入、发布和上传需要 SymGraph API 密钥；若服务中尚无该二进制，发布时会上传原始二进制文件本身。仓库没有测试或 CI 工作流。
- 依据 LICENSE 和 README 采用 MIT 许可；Ghidra、各模型服务和 SymGraph 仍受各自条款约束。仓库已从 jtang613/GhidrAssist 迁移。

## 一手来源

1. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/README.md>
2. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/getting-started.md>
3. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/index.md>
4. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/settings-tab.md>
5. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/symgraph-tab.md>
6. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/query-tab.md>
7. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/actions-tab.md>
8. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/build.gradle>
9. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/src/main/java/ghidrassist/apiprovider/APIProvider.java>
10. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/src/main/java/ghidrassist/tools/approval/ToolApprovalService.java>
11. <https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/LICENSE>
12. <https://github.com/symgraph/GhidrAssist/releases/tag/2.2.0>
13. <https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/README.md>

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

- [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) · 集成
- [IDA-Skill IDA Pro 恶意样本分析智能体技能](https://awesomerea.org/zh/resources/ida-skill-malware-analysis/index.md) · 集成

## 关于此条目

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