返回市场
身份验证-MCP服务器插件

身份验证-MCP服务器插件

作者:taida957789160 星标更新:2025-05-26

项目介绍

MseeP.ai 安全评估徽章

IDA Pro MCP Server

IDA Pro MCP Server 是一个插件,允许通过模型上下文协议(MCP)接口远程查询和控制 IDA Pro。此插件使 AI 助手(如 Claude)能够直接与 IDA Pro 进行二进制分析任务交互。

概述

该服务器提供了一系列工具,使 AI 助手能够执行以下操作:

  • 获取特定地址的字节数据
  • 获取反汇编代码
  • 获取反编译伪代码
  • 查询函数名称
  • 获取段信息
  • 列出所有函数
  • 查找交叉引用
  • 获取导入/导出表
  • 获取入口点
  • 定义/取消定义函数
  • 获取各种数据类型(双字、字、字节、四字、浮点数、双精度数、字符串)
  • 获取二进制文件中的所有字符串
  • 获取指定地址处指令的长度

安装

注意: 此插件设计并测试于 IDA Pro 版本 9.0+。

  1. 确保安装了 Python 和相关依赖项:
pip install -r requirements.txt
  1. 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

在 Claude 或 VSCode 的 mcp.json 文件中添加以下配置:

{
  "mcpServers": {
    "IDAPro": {
      "url": "http://127.0.0.1:3000/sse",
      "type": "sse"
    }
  }
}

使用方法

  1. 在 IDA Pro 中打开一个二进制文件
  2. 插件会自动加载并在本地启动 MCP 服务器(端口 3000)
  3. 将您的 AI 助手(例如 Claude)连接到此服务器
  4. 使用 AI 助手执行二进制分析任务

可用分析工具

IDA Pro MCP Server 提供以下工具:

  • 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: 获取指定地址的双字
  • get_word_at: 获取指定地址的字
  • get_byte_at: 获取指定地址的字节
  • get_qword_at: 获取指定地址的四字
  • get_float_at: 获取指定地址的浮点数
  • get_double_at: 获取指定地址的双精度数
  • get_string_at: 获取指定地址的字符串
  • get_string_list: 获取二进制中的所有字符串
  • get_strings: 获取二进制中的所有字符串(带地址)

最佳实践

在分析二进制文件时,建议遵循以下步骤:

  1. 检查入口点
  2. 分析导入表
  3. 查看字符串
  4. 跟踪关键 API 调用
  5. 识别主要功能块
  6. 分析控制流
  7. 识别恶意行为
  8. 分析算法和加密例程
  9. 记录分析结果
  10. 使用高级技术

许可证

MIT 许可证

版权所有 (c) 2023

在此授权任何人免费获得本软件及其相关文档文件(以下简称“软件”),无限制地使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并且允许向其提供软件的人这样做,但须符合以下条件:

上述版权声明和本许可通知应包括在软件的所有副本或实质部分中。

软件按“原样”提供,不附带任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人都不对因软件或其使用或其他交易而引起的任何索赔、损害或其他责任负责,无论是合同、侵权或其他方式。