欢迎光临
我们一直在努力

IDA Pro MCP完整安装配置与排错指南(含 WSL2 远程连接,联动 Trae 实现 AI 辅助逆向)

文章目录

    • 一、前置环境要求
      • 1. 版本硬性要求
      • 2. 环境预检查
    • 二、正式安装流程
      • 步骤 1:安装 ida-pro-mcp 依赖包
      • 步骤 2:执行 IDA 插件安装
      • 步骤 3:手动补充客户端配置(自动写入失败时)
    • 三、Trae 智能体精细化配置
      • 1. 智能体提示词模板
      • 2. 「何时调用」填写模板
    • 四、常见报错与排查方案
      • 1. streamable fetch failed / 13337 端口连接失败
      • 2. IDA 顶部无「IDA MCP」菜单
      • 3. 连接超时(Connection Timed Out)
      • 4. 连接被拒绝(Connection Refused)
      • 5. ping 能通但 TCP 连不上
    • 五、远程连接配置(跨设备 / WSL2 / 网络访问)
      • 核心步骤:修改监听地址为 0.0.0.0
        • 方法 A:修改插件源代码(永久生效,推荐)
        • 方法 B:修改配置文件
        • 方法 C:通过 IDA 配置界面(临时)
        • 方法 D:使用环境变量
      • 验证监听状态
      • 防火墙配置
        • 图形界面方式
        • 命令行方式(管理员 PowerShell)
        • 端口转发方案(最稳定,不依赖防火墙规则)
        • 临时关闭防火墙(仅用于诊断)
      • 获取服务器 IP 地址
      • WSL2 远程连接专项配置
      • 客户端(Trae / VS Code)配置
      • 常见 WSL2 连接问题
      • 安全注意事项
    • 六、标准使用流程

ida-pro-mcp 是基于模型上下文协议(MCP)的 IDA Pro 服务端插件,可让 AI 客户端(Trae、Cursor 等)直接调用 IDA 的反编译、函数检索、交叉引用、字符串搜索等核心能力,自动化完成恶意样本分析、逆向工程、漏洞分析等工作。本文覆盖从环境准备、插件安装、客户端配置到常见报错排查的全流程,并包含 WSL2 远程连接方案,适配 Windows 全平台。

一、前置环境要求

1. 版本硬性要求

  • IDA Pro:8.3 及以上版本(推荐 9.0+),IDA Free 免费版不支持该插件
  • Python:3.11 及以上版本,必须与 IDA 内置 Python 版本完全一致(版本不匹配会导致插件加载失败)
  • Git for Windows:pip 拉取 GitHub 源码依赖 Git 环境,安装时需勾选「Add Git to PATH」
  • MCP 客户端:Trae / VS Code(搭配对应 MCP 插件),用于承载 AI 逆向智能体

2. 环境预检查

  • 安装 Python 时务必勾选「Add Python to PATH」,方便全局调用命令
  • 查看 IDA 内置 Python 版本:打开 IDA → 顶部菜单 Help → About,在信息面板中确认
  • 系统存在多个 Python 版本时,推荐使用 py -3.11 -m pip 强制指定版本执行安装,避免版本错位
  • 二、正式安装流程

    步骤 1:安装 ida-pro-mcp 依赖包

    以管理员身份打开 PowerShell 或 CMD,执行对应安装命令:

    # 系统仅安装一个 Python 版本时使用
    pip install —upgrade git+https://github.com/mrexodia/ida-pro-mcp

    # 多 Python 版本共存时使用(强制指定 3.11 版本)
    py –3.11 –m pip install —upgrade git+https://github.com/mrexodia/ida-pro-mcp

    安装成功后会提示 Successfully installed ida-pro-mcp-x.x.x。

    步骤 2:执行 IDA 插件安装

    终端执行安装命令,进入交互式配置流程:

    ida-pro-mcp.exe —install

    按以下选项依次选择:

  • 传输模式:选择 Streamable HTTP (recommended)

    • 基于 HTTP 协议开放 13337 端口,支持远程调用、多客户端接入,适配 Trae 标准 MCP 配置方案
  • 安装范围:选择 Global (user-level)

    • 全局用户级配置,所有 Trae 项目、所有客户端均可复用,避免重复配置
  • 目标客户端勾选:仅勾选你实际使用的工具(推荐仅勾选 Trae + VS Code)

    • 勾选过多无关客户端会造成配置冗余,按需选择即可
  • 安装成功标志:终端输出插件文件路径,示例如下:

    Installed IDA Pro plugin (IDA restart required)
    loader: C:\\Users\\用户名\\AppData\\Roaming\\Hex-Rays\\IDA Pro\\plugins\\ida_mcp.py
    package: C:\\Users\\用户名\\AppData\\Roaming\\Hex-Rays\\IDA Pro\\plugins\\ida_mcp

    步骤 3:手动补充客户端配置(自动写入失败时)

    若终端提示 Skipping Trae installation (not found),说明客户端从未启动过,系统无对应配置目录,可手动写入配置:

  • 先打开一次 Trae 并关闭,让系统自动生成配置目录

  • 复制下方 Streamable HTTP 配置 JSON:

    {
    "mcpServers": {
    "ida-pro-mcp": {
    "type": "http",
    "url": "http://127.0.0.1:13337/mcp"
    }
    }
    }

  • 打开 Trae → 设置 → MCP 服务器配置,粘贴 JSON 并保存

  • 三、Trae 智能体精细化配置

    1. 智能体提示词模板

    直接复制填入提示词输入框,规范 AI 逆向行为:

    你是专业 Windows 恶意代码静态逆向分析工程师,绑定 IDA Pro MCP 工具链,仅针对 PE 可执行程序、病毒木马样本开展安全逆向分析,专注识别程序恶意行为、加密逻辑、注入手段、持久化方式、网络通信特征。

    【硬性安全规则】
    1. 严禁自动调用任何修改二进制的工具:禁用 patch、patch_asm、put_int、py_exec_file 等改写样本的功能,所有补丁、修改类操作必须交由用户手动在 IDA 完成,禁止改动原始样本文件。
    2. 仅使用静态只读类工具做分析:仅读取反汇编、伪代码、字符串、函数、交叉引用、内存字节、调用图等只读数据,不自动修改 IDA 数据库、不新建结构体/函数定义。
    3. 样本安全约束:不得执行样本代码,仅基于 IDA IDB 数据库静态分析,禁止生成可运行漏洞利用代码。

    【标准分析工作流程】
    1. 先通过字符串检索、导入表分析快速锁定样本行为方向(文件操作、进程注入、注册表、网络通信等);
    2. 使用反编译功能查看核心函数伪代码,拆解执行逻辑;
    3. 借助交叉引用、调用图梳理函数调用关系、数据流向;
    4. 利用特征字节检索定位加密、解密、Shellcode 核心逻辑;
    5. 分析完成后分模块整理报告:样本基础信息、恶意行为分类、关键代码逻辑、IOC 特征。

    【输出规范】
    1. 分层清晰输出,区分「基础信息」「恶意行为拆解」「关键代码逻辑」「IOC 特征清单」;
    2. 涉及地址、函数名、字符串时附带十六进制偏移,方便用户在 IDA 快速跳转;
    3. 汇编/伪代码仅摘录核心片段,附带中文注释解释功能;
    4. 给出后续分析建议,指明需要重点排查的函数与方向。

    2. 「何时调用」填写模板

    适用于 SOLO 模式多智能体联动,填入对应输入框:

    当需要对 Windows PE 程序、病毒/木马恶意样本进行静态逆向分析,存在以下需求时调用本智能体:
    1. 查看程序汇编代码、Hex-Rays 伪代码,解析函数执行逻辑;
    2. 检索样本内硬编码字符串、URL、文件路径、注册表键值、加密密钥;
    3. 分析导入 API,识别进程注入、文件篡改、自启动、网络外联等恶意行为;
    4. 梳理函数调用图、交叉引用、数据流,追踪恶意代码执行链路;
    5. 搜索特征字节、关键汇编指令,定位加密、解密、Shellcode 逻辑;
    6. 读取栈变量、结构体数据,解析程序内部数据存储规则;
    7. 生成恶意样本分析报告,提取威胁指标 IOC、病毒行为特征。

    无需调用场景:动态调试、修改二进制补丁、批量生成 IDA 签名、自动修正程序类型结构。

    四、常见报错与排查方案

    1. streamable fetch failed / 13337 端口连接失败

    核心原因:IDA 内的 RPC 服务未手动启动,或端口被拦截、占用

    排查步骤:

  • 打开 IDA 并载入任意样本 / IDB 文件,点击 IDA MCP → Start RPC Server,确认底部输出 Listening on http://127.0.0.1:13337

  • 终端执行命令验证端口监听:

    netstat –ano | findstr "13337"

    无输出则服务未启动,有非 IDA 进程占用则关闭对应程序

  • 临时关闭 Windows Defender 防火墙测试,排除本地端口拦截

  • 确认 IDA 顶部存在 IDA MCP 菜单,无菜单则插件加载失败

  • 2. IDA 顶部无「IDA MCP」菜单

    常见原因:Python 版本不匹配、插件文件缺失、未载入样本

    解决方法:

  • 对齐 Python 版本:使用与 IDA 内置版本一致的 Python 重新执行 ida-pro-mcp –install
  • 检查插件目录:打开 %APPDATA%\\Hex-Rays\\IDA Pro\\plugins\\,确认存在 ida_mcp.py 与 ida_mcp 文件夹,缺失则重装插件
  • 注意:空 IDA 窗口(未载入任何文件)不会显示插件菜单,属于正常现象
  • 3. 连接超时(Connection Timed Out)

    原因:防火墙阻止了 TCP 连接

    解决方法:

  • 确认防火墙规则已添加(参见第五节防火墙配置)
  • 尝试端口转发方案
  • 临时关闭防火墙测试
  • 4. 连接被拒绝(Connection Refused)

    原因:服务未监听在 0.0.0.0

    解决方法:

  • 运行 netstat -ano | findstr 13337 检查监听地址
  • 确认显示 0.0.0.0:13337 而非 127.0.0.1:13337
  • 重启 IDA Pro
  • 5. ping 能通但 TCP 连不上

    原因:ICMP 和 TCP 的防火墙规则独立

    解决方法:ping 使用 ICMP 协议,TCP 连接需要单独配置防火墙规则允许 13337 端口

    五、远程连接配置(跨设备 / WSL2 / 网络访问)

    核心步骤:修改监听地址为 0.0.0.0

    IDA MCP 插件默认监听 127.0.0.1:13337,仅允许本机访问。要让其他设备或 WSL2 虚拟机连接,必须将监听地址改为 0.0.0.0,使服务监听所有网络接口。

    方法 A:修改插件源代码(永久生效,推荐)

    找到 IDA 插件目录下的 ida_mcp.py 文件,修改默认绑定地址:

    C:\\Users\\用户名\\AppData\\Roaming\\Hex-Rays\\IDA Pro\\plugins\\ida_mcp.py

    打开文件,找到类似以下代码:

    DEFAULT_HOST = "127.0.0.1"
    DEFAULT_PORT = 13337

    修改为:

    DEFAULT_HOST = "0.0.0.0"
    DEFAULT_PORT = 13337

    修改后重启 IDA Pro 即可永久生效。这是最可靠的方案,实测将 127.0.0.1 改为 0.0.0.0 后连接即成功。

    方法 B:修改配置文件

    找到 IDA 插件配置文件并修改 server_address 字段:

    C:\\Users\\用户名\\AppData\\Roaming\\Hex-Rays\\IDA Pro\\plugins\\ida_mcp\\config.json

    {
    "server_address": "0.0.0.0:13337",
    "transport": "http"
    }

    方法 C:通过 IDA 配置界面(临时)
  • 在 IDA Pro 中按 Ctrl+Alt+M 启动 MCP 插件
  • 进入 Edit → Plugins → MCP Configuration
  • 将 Host 从 127.0.0.1 改为 0.0.0.0
  • 勾选 “Save host and port to this database”
  • 点击确定
  • 此方法重启 IDA Pro 后可能恢复为 127.0.0.1,需要重新设置,不推荐长期使用。

    方法 D:使用环境变量

    启动 IDA Pro 前设置环境变量:

    $env:IDA_MCP_HOST = "0.0.0.0"
    & "C:\\Program Files\\IDA Pro\\ida64.exe"

    验证监听状态

    修改后在物理机 PowerShell 中运行:

    netstat –ano | findstr 13337

    • 显示 0.0.0.0:13337 → 监听正确,所有接口均可访问
    • 显示 127.0.0.1:13337 → 配置未生效,需重启 IDA Pro

    防火墙配置

    需要允许外部设备访问 13337 端口。

    图形界面方式
  • 打开 Windows 防火墙高级设置
  • 添加入站规则:类型选「端口」,协议选「TCP」,端口填 13337,操作选「允许连接」
  • 配置文件根据需要选择(建议仅私有网络)
  • 保存规则并命名为 “IDA MCP Remote Access”
  • 命令行方式(管理员 PowerShell)

    # 添加防火墙规则
    netsh advfirewall firewall add rule name="IDA-MCP-13337" dir=in action=allow protocol=TCP localport=13337 remoteip=any profile=any

    # 验证规则
    netsh advfirewall firewall show rule name="IDA-MCP-13337"

    # 备选:使用 PowerShell 高级防火墙命令
    New-NetFirewallRule –DisplayName "IDA-MCP-13337" –Direction Inbound –Protocol TCP –LocalPort 13337 –Action Allow –Profile Any –RemoteAddress Any

    端口转发方案(最稳定,不依赖防火墙规则)

    如果防火墙规则不生效(尤其 WSL2/Hyper-V 虚拟网络场景),使用端口转发是最可靠的方案:

    # 添加端口转发:将所有接口的 13337 端口转发到 127.0.0.1:13337
    netsh interface portproxy add v4tov4 listenport=13337 listenaddress=0.0.0.0 connectport=13337 connectaddress=127.0.0.1

    # 验证
    netsh interface portproxy show v4tov4

    临时关闭防火墙(仅用于诊断)

    # 关闭防火墙
    netsh advfirewall set allprofiles state off

    # 测试连接…

    # 重新开启防火墙
    netsh advfirewall set allprofiles state on

    获取服务器 IP 地址

    在服务器端执行命令获取本地 IP:

    ipconfig

    查找 IPv4 地址,如 192.168.1.100。

    WSL2 远程连接专项配置

    当 IDA Pro 运行在物理机(Windows)上,开发环境在 WSL2 中时,网络拓扑如下:

    组件IP 地址示例说明
    物理机(Windows) 192.168.0.107 运行 IDA Pro
    WSL2 虚拟机 172.30.154.92 开发环境
    WSL2 网关 172.30.144.1 Windows 主机虚拟网卡

    WSL2 访问 Windows 主机有两条路径:

    路径地址稳定性说明
    物理网卡 192.168.0.107 不稳定 受 Windows 网络配置文件(公用/专用)和防火墙策略影响
    虚拟网关 172.30.144.1 稳定 走 Hyper-V 虚拟交换机,不经过物理防火墙

    推荐使用虚拟网关 IP,在 WSL2 中动态获取当前网关 IP:

    ip route | grep default | awk '{print $3}'

    在 WSL2 中测试连接:

    # 推荐:通过 WSL2 虚拟网关测试
    curl -v http://172.30.144.1:13337/config.html

    # 备选:通过物理机 LAN IP 测试
    curl -v http://192.168.0.107:13337/config.html

    如果返回 HTTP 响应(200 状态码),说明连接成功。

    客户端(Trae / VS Code)配置

    根据部署场景,在 MCP 配置中使用对应的 URL:

    {
    "mcpServers": {
    "ida-pro-mcp": {
    "type": "http",
    "url": "http://127.0.0.1:13337/mcp"
    }
    }
    }

    • 本机访问:保持 127.0.0.1
    • 局域网其他设备:替换为服务器物理 IP,如 http://192.168.1.100:13337/mcp
    • WSL2 访问:替换为虚拟网关 IP,如 http://172.30.144.1:13337/mcp(推荐)

    WSL2 重启后网关 IP 可能变化,需重新获取并更新配置。

    常见 WSL2 连接问题

    Windows 重启后连不上(Connection Refused)

    现象:Windows 端 netstat 确认 0.0.0.0:13337 正常监听,防火墙规则也存在,但 WSL2 通过 192.168.0.107 连接被拒绝。

    原因:Windows 重启后,网络配置文件可能从"专用"切换为"公用",导致防火墙规则虽存在但不生效;Hyper-V 虚拟交换机重建后物理网卡路径的流量转发行为改变。

    解决:

    # 检查网络配置文件类型
    Get-NetConnectionProfile
    # 如果 NetworkCategory 显示 Public,改为 Private:
    Set-NetConnectionProfile –InterfaceAlias "以太网" –NetworkCategory Private

    根本解决方案:将 MCP 客户端 URL 从 http://192.168.0.107:13337/mcp 改为 http://<虚拟网关IP>:13337/mcp,彻底绕开物理网卡路径的不稳定性。

    安全注意事项

  • 将绑定地址改为 0.0.0.0 会使服务暴露在局域网内,远程连接应仅在可信的内部网络中使用
  • 避免在公共网络上暴露 13337 端口,可考虑使用 VPN
  • 如有条件,可配置防火墙白名单,只允许特定 IP 地址访问
  • 默认 HTTP 传输不加密,敏感数据传输时应考虑 HTTPS 代理
  • 测试完成后记得重新开启防火墙
  • 六、标准使用流程

  • 打开 IDA Pro,载入待分析的样本或 IDB 数据库文件
  • 打开 Trae,启动配置完成的 IDA 逆向智能体
  • 下发分析指令(如「分析该样本的全部恶意行为并提取 IOC」),AI 自动调用 IDA 工具完成逆向分析
  • 分析结束后,手动在 IDA 中保存 IDB 文件。
  • 赞(0)
    未经允许不得转载:171主机测评 » IDA Pro MCP完整安装配置与排错指南(含 WSL2 远程连接,联动 Trae 实现 AI 辅助逆向)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址