Ghidra MCP

该项目将Ghidra逆向工程工具以无头模式运行,提取二进制文件分析数据并转换为JSON格式,通过MCP协议为Claude等LLM提供交互式逆向分析服务。
2分
9

什么是Ghidra MCP服务器?

Ghidra MCP服务器允许您通过Ghidra进行二进制文件的反汇编和反编译,并将其分析结果以JSON格式导出。这使得像Claude这样的大型语言模型能够轻松访问这些数据。

如何使用Ghidra MCP服务器?

安装并配置Ghidra MCP服务器后,您可以使用它提供的工具来列出函数、查看伪代码、获取结构体定义等。只需几条简单的命令即可开始使用。

适用场景

适用于需要快速了解二进制程序逻辑的研究人员、安全分析师以及开发者。

主要功能

伪代码生成从二进制文件中提取函数伪代码,便于理解和分析。
结构体和枚举提取识别并导出二进制中的数据结构和枚举类型。
函数原型定义列出所有函数的返回值及参数列表。
动态更新支持实时加载新的分析结果。

优势与局限性

优势
强大的静态分析能力。
无缝对接现有AI工具。
易于扩展和定制。
跨平台兼容性好。
局限性
对大型二进制文件可能需要较长处理时间。
依赖特定版本的Ghidra和Java环境。
某些高级特性可能需要额外配置。

如何使用

安装Ghidra
下载并解压Ghidra 11.3.1版本。
设置Java环境
确保安装了Java 21(推荐使用Temurin)。
安装MCP服务器
使用MCP CLI工具安装Ghidra MCP服务器。
运行开发模式
启动服务器进入开发模式以便测试。

使用案例

分析二进制文件分析位于某个路径的二进制文件,并列出其中的主要函数。
获取伪代码从指定函数中获取伪代码。

常见问题

为什么需要安装Java 21?
如何解决找不到 uv 命令的问题?

相关资源

Ghidra 官方网站
访问官方文档了解更多关于Ghidra的信息。
MCP 协议官网
了解Model Context Protocol的更多细节。
GitHub 仓库
查看项目源码和贡献指南。
安装
复制以下命令到你的Client进行配置
{
  "mcpServers": {
    "ghidra": {
      "command": "/Users/yourname/.cargo/bin/uv",
      "args": [
        "--directory",
        "/Users/yourname/Documents/ghidra_mcp",
        "run",
        "main.py"
      ]
    }
  }
}
注意:您的密钥属于敏感信息,请勿与任何人分享。
精选MCP服务推荐
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
972
4.3分
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
4.1K
5分
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
6.8K
4.5分
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
324
4.8分
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
1.9K
5分
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
821
4.5分
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
901
4.8分
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
5.4K
4.7分
AIbase
智启未来,您的人工智能解决方案智库
简体中文