
IDA Pro MCP Server

2025.03.27
112
Python二进制分析逆向工程恶意软件分析开发效率
IDA Pro MCP Server 是一个插件,允许通过模型上下文协议(MCP)接口远程查询和控制 IDA Pro。该插件使 AI 助手(如 Claude)能够直接与 IDA Pro 交互,执行二进制分析任务。
View on GitHub
Overview
基本能力
产品定位
IDA Pro MCP Server 是一个用于二进制分析的插件,通过 MCP 接口实现 AI 助手与 IDA Pro 的交互。
核心功能
- 获取特定地址的字节数据
- 获取反汇编代码
- 获取反编译的伪代码
- 查询函数名称
- 获取段信息
- 列出所有函数
- 查找交叉引用
- 获取导入/导出表
- 获取入口点
- 定义/取消定义函数
- 获取各种数据类型(dword、word、byte、qword、float、double、string)
- 获取二进制文件中的所有字符串
- 获取指定地址的指令长度
适用场景
- 二进制文件分析
- 恶意软件分析
- 逆向工程
- 漏洞研究
工具列表
get_bytes
: 获取指定地址的字节get_disasm
: 获取指定地址的反汇编get_decompiled_func
: 获取包含指定地址的函数的伪代码get_function_name
: 获取指定地址的函数名称get_segments
: 获取所有段信息get_functions
: 获取二进制中的所有函数get_xrefs_to
: 获取所有指向指定地址的交叉引用get_imports
: 获取所有导入函数get_exports
: 获取所有导出函数get_entry_point
: 获取二进制的入口点make_function
: 在指定地址创建函数undefine_function
: 取消定义指定地址的函数get_dword_at
: 获取指定地址的 dwordget_word_at
: 获取指定地址的 wordget_byte_at
: 获取指定地址的 byteget_qword_at
: 获取指定地址的 qwordget_float_at
: 获取指定地址的 floatget_double_at
: 获取指定地址的 doubleget_string_at
: 获取指定地址的 stringget_string_list
: 获取二进制中的所有字符串get_strings
: 获取二进制中的所有字符串(带地址)
常见问题解答
- 该插件适用于 IDA Pro 9.0+ 版本。
- 安装时需要将插件文件复制到 IDA Pro 的插件目录。
- 配置 Claude 或 VSCode 时需要在
mcp.json
文件中添加服务器配置。
使用教程
使用依赖
确保已安装 Python 和相关依赖:
pip install -r requirements.txt
安装教程
- 将
ida-mcp-server.py
文件复制到 IDA Pro 的插件目录: - Windows:
%Programfiles%\IDA Pro 9.0\plugins\
- Linux:
~/.idapro/plugins/
-
macOS:
~/Library/Application Support/IDA Pro/plugins/
-
配置 Claude 或 VSCode: 在
mcp.json
文件中添加以下配置:
{
"mcpServers": {
"IDAPro": {
"url": "http://127.0.0.1:3000/sse",
"type": "sse"
}
}
}
调试方式
- 在 IDA Pro 中打开一个二进制文件。
- 插件将自动加载并启动本地 MCP 服务器(端口 3000)。
- 连接 AI 助手(如 Claude)到该服务器。
- 使用 AI 助手执行二进制分析任务。