Skip to main content

ida-reverse

当用户要求“使用IDA Pro进行逆向分析”、分析指定可执行文件/库、反编译函数或通过 IDA Pro 分析目标时触发此技能。能够全自动唤醒 IDA Pro、加载分析目标二进制、静默等待自动分析完成,并通过 MCP 协议无缝进行函数枚举、反编译及交叉引用分析。

ソース情報

リポジトリ
angusdevgo/Seep-Reverse-Lab
ソースの最終更新活動
2026年10月2日 13:06
検出された SKILL.md の言語
中国語
スター
957
フォーク
279

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
ida-reverse
description
当用户要求“使用IDA Pro进行逆向分析”、分析指定可执行文件/库、反编译函数或通过 IDA Pro 分析目标时触发此技能。能够全自动唤醒 IDA Pro、加载分析目标二进制、静默等待自动分析完成,并通过 MCP 协议无缝进行函数枚举、反编译及交叉引用分析。
license
GPL-3.0
compatibility
Windows 10 / Windows 11 x64, macOS, Linux, IDA Pro 7.7~9.x
# ida-reverse — IDA Pro 自动化逆向战术技能 当用户发出指令:**“使用IDA Pro进行逆向分析”** 或要求加载某个二进制目标时,严格按照本流程全自动执行。 --- ## 一、 自动化智能定位与目标加载(Zero-Touch Launch) 当主人指定目标文件(或当前工作区中的题目二进制)时,使用以下自适应脚本**动态定位 IDA 可执行文件**并启动: ```powershell # 1. 动态自适应探测 IDA 可执行文件路径(杜绝写死盘符) $candidates = @( 'D:\Tool\IDA Pro\ida.exe', 'C:\Program Files\IDA Pro\ida.exe', 'C:\Program Files\IDA Professional 9.0\ida.exe', 'C:\Program Files\IDA Pro 9.4\ida.exe', 'C:\Program Files\IDA Professional 9.4\ida.exe', 'C:\IDA Pro\ida.exe', 'C:\IDA\ida.exe', 'D:\IDA Pro\ida.exe', 'E:\IDA Pro\ida.exe', 'F:\IDA Pro\ida.exe', (Join-Path $env:USERPROFILE 'Desktop\IDA Pro\App\IDA Pro\ida.exe'), (Join-Path $env:USERPROFILE 'Desktop\IDA Pro 9.4\App\IDA Pro\ida.exe'), (Join-Path $env:USERPROFILE 'Tools\IDA Pro 9.4\App\IDA Pro\ida.exe') ) $idaExe = $null foreach ($c in $candidates) { if (Test-Path $c) { $idaExe = (Resolve-Path $c).Path; break } } if (-not $idaExe) { # 注册表探测 foreach ($rp in @('HKCU:\Software\Hex-Rays\IDA Pro', 'HKLM:\SOFTWARE\Hex-Rays\IDA Pro')) { if (Test-Path $rp) { $p = (Get-ItemProperty $rp -ErrorAction SilentlyContinue).InstallDir if ($p -and (Test-Path (Join-Path $p 'ida.exe'))) { $idaExe = Join-Path $p 'ida.exe'; break } } } } # 2. 拉起 IDA Pro 加载目标二进制 $targetPath = "目标文件的绝对路径" if ($idaExe) { Start-Process -FilePath $idaExe -ArgumentList "`"$targetPath`"" } else { Write-Host "[!] 未检测到本地 IDA Pro,自动降级为内置 Radare2 无头分析 (seep_r2_*)" -ForegroundColor Yellow } ``` ### 握手检测与自愈等待: 目标启动后,后台内置的 `mcp-plugin.py` 与 `idapythonrc.py` 会自动在本地 `127.0.0.1:13337` 开启 JSON-RPC 服务。 通过执行以下轻量检查轮询确认 IDA 是否就绪: ```powershell python -c " import urllib.request, json, time for i in range(15): try: req = urllib.request.Request('http://127.0.0.1:13337/mcp', data=json.dumps({'jsonrpc':'2.0','id':1,'method':'get_metadata','params':[]}).encode(), headers={'Content-Type':'application/json'}) with urllib.request.urlopen(req, timeout=2) as resp: if resp.status == 200: print('IDA MCP Connected') break except: time.sleep(1) " ``` --- ## 二、 核心分析能力矩阵(MCP 工具映射) 当连接就绪后,直接通过 `ida` MCP 工具调度分析: | 战术动作 | 对应 MCP 工具 / API | 产出与用途 | |---|---|---| | **元数据提取** | `mcp_ida_get_metadata` | 获取目标架构、位宽、编译器与基址信息 | | **入口点探测** | `mcp_ida_get_entry_points` | 快速锁定 main / OEP / 初始化入口 | | **函数列表枚举** | `mcp_ida_list_functions` | 检索 `verify_license`、`check_vip`、`sub_*` | | **C-Like 伪代码反编译** | `mcp_ida_decompile_function` | 获得 Hex-Rays 反编译高质量 C 伪代码 | | **交叉引用回溯** | `mcp_ida_get_xrefs_to` / `_from` | 逆向回溯调用链,寻找鉴权判断上游来源 | | **结构体/局部变量重命名**| `mcp_ida_set_local_name` | 动态修复混淆符号,增强可读性 | --- ## 三、 降级处理策略 如果目标机器未安装 IDA Pro 或端口未监听,**严禁向用户抛出异常中断**,立即无缝降级为工作台内置的 **`seep_r2_*`** 系列工具(Radare2 无头反编译与交叉引用分析)。
GitHubで見る