MeroZemory/ida-multi-mcp

Multi-instance IDA Pro MCP server — analyze multiple binaries simultaneously through a single MCP endpoint.

解决的问题

ida-multi-mcp 允许 AI 代理通过单一 Model Context Protocol (MCP) 端点同时逆向分析多个二进制文件。它消除了对每个二进制文件单独配置客户端的需求,并通过将工具置于 IDA Pro 的自动分析流程之后进行防护,防止 AI 代理提供不完整答案。

工作原理

该项目实现了一个位于 MCP 客户端(如 Claude Code 或 Cursor)与多个 IDA Pro 进程之间的路由器。

  • 发现:IDA 插件将每个打开的数据库注册到一个共享的 JSON 注册文件中。路由器随后动态发现这些实例。
  • 路由:使用 instance_id 将请求通过 HTTP JSON-RPC 转发到正确的 IDA 进程。
  • 分析门控:提供特定工具(analysis_statusanalysis_wait),确保在代理尝试反编译或分析函数之前,IDA 已完成后台分析。
  • 相似性搜索:基于 MinHash、CFG 结构和可选的神经嵌入,使用二进制代码相似性检测(BCSD)在不同二进制文件之间查找相似函数,即使它们已去除符号。
  • 无头模式:支持 idalib,可在无 GUI 的情况下进行分析。

适用人群

使用 IDA Pro 并希望利用 AI 代理同时分析多个文件中的复杂恶意软件链(例如,一个下载器、载荷和 C2 服务器)的逆向工程师和安全研究人员。

主要亮点

  • 零配置发现:数据库打开时,实例会自动注册。
  • 跨二进制相似性:本地评分和索引,适用于变种检测和库识别。
  • 并行执行:请求在工作线程池中运行,防止一个繁忙的 IDA 实例阻塞其他实例。
  • 代理感知门控:当结果基于不完整的自动分析时,会向代理发出警告。
  • 本地优先:所有评分、推理和二进制数据均保留在本地机器上。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目