IDA Pro MCP 服务器插件允许通过模型上下文协议(MCP)接口远程查询和控制IDA Pro,能让 AI 助手(如 Claude)直接参与 IDA Pro 的二进制分析任务。
该插件可助力 AI 助手与 IDA Pro 协同完成二进制分析。你只需按如下步骤操作,就能让插件发挥作用:
⚠️ 重要提示
该插件专为 IDA Pro 版本 9.0+ 设计并进行了测试。
确保已安装 Python 及相关依赖项,可使用以下命令:
pip install -r requirements.txt
将 ida-mcp-server.py 文件复制到 IDA Pro 插件目录中:
%Programfiles%\IDA Pro 9.0\plugins\~/.idapro/plugins/~/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 服务器提供以下工具:
| 工具名称 | 功能 |
|---|---|
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 |
获取指定地址处的双字(dword) |
get_word_at |
获取指定地址处的单词(word) |
get_byte_at |
获取指定地址处的字节(byte) |
get_qword_at |
获取指定地址处的八字(qword) |
get_float_at |
获取指定地址处的浮点数(float) |
get_double_at |
获取指定地址处的双精度浮点数(double) |
get_string_at |
获取指定地址处的字符串 |
get_string_list |
获取二进制文件中的所有字符串 |
get_strings |
获取二进制文件中的所有字符串(带地址) |
在分析二进制文件时,建议遵循以下步骤:
本项目采用 MIT License。
版权 (c) 2023
本软件的版权所有者授予任何获得本软件及其相关文档文件副本的人(“软件”),在无限制的情况下使用、复制、修改、合并、发布、分发、进行 sublicense 和/或 sell 的权利,但需遵守以下条件: