项目简介
IDA Pro MCP服务器插件是一个IDA Pro的插件,它充当一个MCP服务器,使得AI助手(如Claude、VSCode等MCP客户端)能够通过Model Context Protocol (MCP) 协议与IDA Pro进行通信。这使得AI助手可以远程调用IDA Pro的功能,例如获取二进制文件的字节数据、反汇编代码、反编译伪代码、函数信息、段信息、交叉引用、导入导出表、字符串等,从而辅助进行二进制分析任务。
主要功能点
- 提供丰富的二进制分析工具: 插件内置了多种工具,涵盖了二进制分析的常用操作,例如:
- 数据访问: 获取指定地址的字节数据、各种数据类型 (dword, word, byte, qword, float, double, string) 等。
- 代码分析: 获取指定地址的反汇编代码、函数伪代码。
- 符号信息: 获取函数名、段信息、函数列表、导入导出表、入口点等。
- 关系分析: 获取指定地址的交叉引用。
- 函数定义: 支持动态定义和取消定义函数。
- 字符串分析: 获取二进制文件中的所有字符串。
- 基于MCP协议标准: 遵循Model Context Protocol (MCP) 协议,确保与支持MCP协议的客户端(如Claude、VSCode插件等)的兼容性。
- 易于集成: 作为一个IDA Pro插件,安装简单,启动后自动在后台运行MCP服务器。
安装步骤
-
安装Python依赖: 确保你的系统已安装Python和pip,然后在命令行中执行以下命令安装插件所需的Python库:
pip install -r requirements.txt('requirements.txt' 文件通常与插件代码在同一目录下,但根据仓库信息,可能需要手动创建包含 'mcp-server' 等依赖的 'requirements.txt' 文件,如果安装时提示缺少依赖,请根据错误信息安装。)
-
复制插件文件: 将 'ida-mcp-server.py' 文件复制到IDA Pro的插件目录:
- Windows: '%Programfiles%\IDA Pro <版本号>\plugins' (例如: '%Programfiles%\IDA Pro 9.0\plugins')
- Linux: '~/.idapro/plugins/'
- macOS: '~/Library/Application Support/IDA Pro/plugins/' (请根据你的IDA Pro版本和操作系统选择正确的插件目录)
服务器配置 (MCP客户端)
要让MCP客户端(例如 Claude 或 VSCode)连接到IDA Pro MCP服务器插件,需要在客户端的MCP配置文件(通常是 'mcp.json')中添加服务器配置信息。以下是一个示例配置,你需要根据实际情况进行调整:
{ "mcpServers": { "IDAPro": { // 服务器名称,可以自定义,用于在客户端中标识该服务器 "url": "http://127.0.0.1:3000/sse", // MCP服务器的URL,通常为 http://<服务器地址>:<端口>/sse,这里假设IDA Pro运行在本地,端口为3000,并使用SSE协议 "env": {} // 环境变量,如果服务器需要环境变量,可以在这里配置,本插件默认无需配置 } } }
配置参数说明:
- '"IDAPro"': 服务器名称。你可以自定义这个名称,它将用于在MCP客户端中标识和选择连接到IDA Pro MCP服务器。
- '"url"': MCP服务器 URL。这是MCP客户端连接服务器的地址。
- 'http://127.0.0.1:3000/sse': 表示服务器地址为本地计算机 (127.0.0.1),端口为 '3000',并且使用 Server-Sent Events (SSE) 协议进行通信 ('/sse' 路径通常用于SSE)。 请确保此URL与IDA Pro MCP服务器插件实际运行的地址和端口一致。
- '"env"': 环境变量 (可选)。 如果IDA Pro MCP服务器插件需要特定的环境变量才能正常运行,你可以在这里以键值对的形式配置。对于本插件,通常情况下无需配置环境变量,因此这里为空对象 '{}'。
基本使用方法
- 启动IDA Pro并加载二进制文件: 打开IDA Pro,并加载你想要分析的二进制文件。
- 插件自动启动MCP服务器: 当IDA Pro加载二进制文件后,IDA Pro MCP服务器插件会自动加载并启动,默认情况下会在本地 '3000' 端口启动SSE服务器。你无需手动启动服务器。
- 配置并连接MCP客户端: 在你的MCP客户端(例如 Claude 或 VSCode)中,根据上面的“服务器配置”部分,配置IDA Pro MCP服务器的信息。配置完成后,在MCP客户端中选择 "IDAPro" 服务器进行连接。
- 使用AI助手进行二进制分析: 连接成功后,你就可以在MCP客户端中使用AI助手,通过自然语言指令或图形界面,调用IDA Pro MCP服务器提供的工具,进行各种二进制分析任务。例如,你可以询问AI助手 "分析程序入口点代码"、"查找函数 'main' 的交叉引用"、"获取地址 '0x401000' 的反汇编代码" 等等。AI助手会将你的指令转换为MCP请求发送给IDA Pro MCP服务器,服务器执行相应的IDA Pro功能并将结果返回给AI助手。
注意:
- 确保IDA Pro版本为 9.0 或更高版本,这是插件要求的最低版本。
- 首次使用插件可能需要一些时间来建立连接和加载必要的数据。
- 请参考MCP客户端的文档,了解如何配置和使用MCP服务器连接功能。
信息
分类
桌面与硬件