探索
Ghidra MCP

Ghidra MCP

该项目将Ghidra逆向工程工具以无头模式运行,提取二进制文件分析数据并转换为JSON格式,通过MCP协议为Claude等LLM提供交互式逆向分析服务。
2分
0
2025-04-28 15:43:19
概述
安装
内容详情
替代品

什么是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服务器。
运行开发模式启动服务器进入开发模式以便测试。

使用案例

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

常见问题

1
为什么需要安装Java 21?Ghidra 11.3.1要求Java 21作为运行环境,因此需要确保安装正确的Java版本。
2
如何解决找不到 uv 命令的问题?检查本地是否安装了 uv 工具,并在配置文件中明确指定其完整路径。

相关资源

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