](https://mseep.ai/app/taida957789-ida-mcp-server-plugin)
IDA Pro MCP服务器
IDA Pro MCP Server是一个插件,允许通过模型上下文协议(MCP)接口远程查询和控制IDA Pro。此插件使AI助手(如Claude)能够直接与IDA Pro交互以执行二进制分析任务。
概述
该服务器提供了一系列工具,允许AI助手执行以下操作:
- 从特定地址获取字节数据
- 获取拆卸代码
- 获取反编译的伪代码
- 查询函数名称
- 获取细分市场信息
- 列出所有功能
- 查找交叉引用
- 获取导入/导出表
- 获取入口点
- 定义/取消定义函数
- 获取各种数据类型(dword、word、byte、qword、float、double、string)
- 获取二进制文件中的所有字符串
- 获取指定地址的指令长度
安装
注: 此插件专为IDA Pro 9.0+版本设计并经过测试。
- 确保已安装Python和相关依赖项:
pip install -r requirements.txt- 复制
ida-mcp-server.py文件到IDA Pro插件目录:
- 窗户: %Programfiles%\IDA Pro 9.0\plugins\ - Linux: ~/.idapro/plugins/ - macOS: ~/Library/Application Support/IDA Pro/plugins/
配置Claude/VSCode
将以下配置添加到 mcp.json Claude或VSCode中的文件:
{
"mcpServers": {
"IDAPro": {
"url": "http://127.0.0.1:3000/sse",
"type": "sse"
}
}
}用法
- 在IDA Pro中打开二进制文件
- 该插件将自动在本地加载并启动MCP服务器(端口3000)
- 将您的AI助手(例如Claude)连接到此服务器
- 使用AI助手执行二进制分析任务
可用的分析工具
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:在指定地址获取dwordget_word_at:在指定地址获取单词get_byte_at:获取指定地址的字节get_qword_at:在指定地址获取qwordget_float_at:获取指定地址的浮点数get_double_at:在指定地址获取双倍值get_string_at:获取指定地址的字符串get_string_list:获取二进制文件中的所有字符串get_strings:获取二进制文件中的所有字符串(带地址)
最佳实践
分析二进制文件时,建议遵循以下步骤:
- 检查入口点
- 分析导入表
- 查看字符串
- 跟踪关键API调用
- 确定主要功能块
- 分析控制流
- 识别恶意行为
- 分析算法和加密例程
- 文件分析结果
- 使用先进技术
许可证
MIT许可证
版权所有(c)2023
特此免费向任何获得副本的人授予许可 本软件和相关文档文件(“软件”),以处理 在软件中不受限制,包括但不限于权利 使用、复制、修改、合并、发布、分发、再许可和/或销售 软件的副本,并允许软件的接收者 根据以下条件提供:
上述版权声明和本许可声明应包含在所有 软件的副本或实质性部分。
软件按“原样”提供,不提供任何形式的明示或明示担保 隐含的,包括但不限于适销性保证, 适用于特定目的且不造成伤害。在任何情况下 作者或版权持有人对任何索赔、损害赔偿或其他 因以下原因产生的责任,无论是在合同、侵权或其他诉讼中, 出于或与软件、使用或其他交易有关 软件。
