reverse-skill-router について
reverse-skill-router は、リバースエンジニアリングなどのセキュリティ分析を行うエージェント向けのルーティングスキル群です。対象、意図、ツールチェーンに応じてモジュールを選び、認可確認、証拠記録、必要なツールの導入を案内します。
主な機能
- 01タスクに応じたスキルの振り分け
- 02ケース初期化と認可確認
- 03ツールインデックスによる利用可否確認
- 04登録ツールのオンデマンド導入
- 05証拠に基づく分析結果の整理
活用シーン
- 01未知のバイナリに適したモジュールの選択
- 02分析前の範囲設定と認可確認
- 03未導入の登録ツールのセットアップ
- 04追跡可能な証拠としての発見事項の整理
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ zhaoxuya520/ reverse-skill --skill reverse-skill-routerインストール後、Claude Code で/reverse-skill-routerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CONTRIBUTING.mdapi-security/references/jwt-oauth-testing.mdrest-graphql-testing.mdapk-reverse/references/android-advanced.mdapk-security-checklist.mdfrida-bypass-kit.mdfrida-cookbook.mdapk-reverse/scripts/decode.ps1decode.shfrida-run.ps1frida-run.shmanifest-summary.ps1rebuild-sign-install.ps1rebuild-sign-install.shattack-chain/references/attack-playbooks.mdevasion-cheatsheet.mdlifecycle-checklist.mdbinary-diff/references/prompt-template.mdbinary-ninja-reverse/agents/openai.yamlbrowser-automation/references/playwright-cheatsheet.mdbrowser-automation/scripts/setup.ps1browser-extension-reverse/references/extension-analysis.mdcase-review/scripts/review_case.pycase-review/tests/test_review_case.pycloud-k8s/references/k8s-cloud-checklist.mdcode-audit/references/sast-review-checklist.mdconfig/routing.jsondatabase-security/references/db-misconfig-checklist.mddiagram-generator/README.mddiagram-generator/agents/openai.yaml詳細
リバースエンジニアリングスキルマスターコントロール
本ディレクトリには、リバースエンジニアリング関連のスキルモジュールを収録しています。各サブディレクトリは独立したモジュールであり、その適用シーン、ツールチェーン、ワークフローを記述した SKILL.md を含みます。
CRITICAL: ルーティング実行契約(直ちに実行すること)
本ファイルを読み終えた後、「読みました/理解しました」とだけ返信することは許されません。必ず順番に実行してください:
NOW:プラットフォームネイティブの router を実行します(Windows はscripts/master-route.ps1、Linux/macOS/Kali はscripts/master-route.sh)。config/routing.jsonから PRIMARY を決定します。難解な場合はrouting.mdの三軸付録を参照してください。NOW:プラットフォームネイティブのcase-initで、現在の分析プロジェクトのwork/<case>/scope.mdを作成します。auth が granted でない場合、対象への ACT は禁止です。ローカルのオフラインサンプルにはoffline-samplepreset + explicit sample を使用します。Force によってハードゲートを回避してはなりません。ACT:直ちに PRIMARY のSKILL.mdを開き、ACTION REQUIRED を実行します。NEXT:ツールパスはtool-index.mdのみを参照します。ツールが不足している場合 → プラットフォームネイティブの bootstrap(manifest のみ)。- 結論は Evidence→Finding→Path で記述します。report/journal は SHOULD であり、ユーザーが成果物を求めた場合を除きます。
アイデンティティ:ops/IDENTITY.md を参照してください(軽量ルーティングパッケージ + ツール自举 + journal であり、Z3r0 式プラットフォームではありません)。
ルーティングがヒットしない場合は、必ず先にオンラインで方法論を補完し、新しい skill の追加を提案してください。一致しないモジュールへ無理に押し込むことは禁止します。
指令の意味レベル(RFC 2119)
MUST:必ず実行すること。違反はタスク失敗とみなします。MUST NOT:実行を禁止します。違反はセキュリティ違反とみなします。SHOULD:原則として行うこと。行わない場合は理由を説明する必要があります。MAY:任意のアクション。
現在のモジュール
| モジュール | ディレクトリ | 適用シーン |
|---|---|---|
| 汎用リバースエンジニアリング | reverse-engineering/ | GDB / Frida / angr / Unicorn / Qiling / 対アンチ分析 / 全言語プラットフォームのリバース / CTF モードライブラリ |
| APK リバース | apk-reverse/ | Android APK の展開、jadx 逆コンパイル、smali 改変、Frida Hook、再パッケージ署名インストール |
| .NET / C# リバース | dotnet-reverse/ | マネージド PE リバース、dnSpyEx + de4dot による難読化解除(ConfuserEx/SmartAssembly/Babel)、IL パッチ、Sharp* レッドチームツール分析、dnSpy MCP 連携 |
| IDA Pro リバース | ida-reverse/ | IDA Pro MCP HTTP サーバー(72 個のツール):逆コンパイル、逆アセンブル、データフロー追跡、クロスリファレンス |
| フロントエンド JS リバース | js-reverse/ | ブラウザ側の署名特定、暗号化パラメータ分析、実行時サンプリング、Node 環境補完による再現;既存の js-reverse_* を優先し、より強力なブラウザ/CDP/Hook の面が必要な場合は jshookmcp を接続しますが、前提として先にその MCP サーバーをダウンロード/登録して有効化しておく必要があります |
| radare2 分析 | radare2/ | CLI バイナリ偵察、逆アセンブル、パッチ:r2 / rabin2 / rasm2 / radiff2 |
| CTF エントリ | ctf-sandbox/ | 単一 PRIMARY;下流は依然として sidecar ../CTF-Sandbox-Orchestrator/ |
| 技術ドキュメント作成 | docs-generator/ | タスク完了後にリバースレポート、ペネトレーションレポート、CTF writeup、署名リバースレポートを自動生成 |
| Evidence 図レビュー | case-review/ | scope、Evidence→Finding→Path の追跡可能性、workitems、timeline と artifact hash を検証 |
| ブラウザとデスクトップの自動化 | browser-automation/ | ブラウザ操作(Playwright)+ Windows デスクトップアプリ操作(OpenReverse UIA/CUA)+ ネットワーク観察 |
| クロスバージョンシンボル移行 | binary-diff/ | 旧版シンボルの新版への移行、PDB 欠如時の推論、プログラム更新後の関数名一括移行 |
| N-day パッチ差分→エクスプロイト | patch-diff-exploit/ | ベンダーパッチからの脆弱性箇所の特定、PoC 作成、N-day 兵器化(binary-diff との分業:本 skill は攻撃側寄り) |
| RE→エクスプロイトチェーン | pwn-chain/ | リバースから実用的な exploit まで:スタック/ヒープ/カーネル pwn、pwntools、libc-database、CTF から実リモートまでの安定化 |
| ファームウェアペネトレーションチェーン | firmware-pentest/ | OWASP FSTM の 9 フェーズ:抽出→EMBA 自動化→Firmadyne/QEMU エミュレーション→AFL++ fuzz→実機エクスプロイト |
| EDR バイパスリバース | edr-bypass-re/ | レッドチームシナリオ:EDR の hook テーブル/ETW/AMSI をリバース → 直接 syscall / Hell's Gate / ハードウェアブレークポイント / call stack spoof |
| ペネトレーションテストツールチェーン | pentest-tools/ | Nmap/Nuclei/SQLMap/FFUF/Hashcat/Pentest Swarm など 20+ のペネトレーションツールを MCP 経由で AI に公開 |
| 図表生成 | diagram-generator/ | 自然言語から Mermaid/Graphviz/PlantUML の図表(攻撃パス図、データフロー図、アーキテクチャ図、ステートマシン)を生成 |
| 攻撃チェーン編成 | attack-chain/ | 多段階攻撃パスの計画と実行の総指揮;完全なペネトレーション、HW 演習、外部ネットワークからドメインコントローラまでの突破など、段階をまたぐタスクはここから開始 |
| LLM/AI セキュリティテスト | llm-security/ | OWASP LLM + ASI Top 10:プロンプトインジェクション、ツール悪用、メモリポイズニング、エージェントハイジャック、システムプロンプト抽出、エージェント服従性エンジニアリング |
| API セキュリティテスト | api-security/ | REST/GraphQL/WebSocket 全プロトコル:BOLA/IDOR、JWT/OAuth 攻撃、10 フェーズの方法論 |
| サプライチェーンセキュリティ | supply-chain-security/ | SBOM/SCA/CI-CD パイプライン:依存関係スキャン、コンテナセキュリティ、ビルド完全性、脆弱性到達可能性の検証 |
| モバイルリバースエンジニアリング | mobile-reverse/ | Android + iOS:Frida/Objection による動的インストルメンテーション、SSL Pinning/Root/脱獄検知のバイパス、OWASP MASTG |
| マルウェア分析 | malware-analysis/ | サンプル分析の 6 フェーズ、YARA/Sigma、対アンチ分析検知、サンドボックス編成 |
| DSL 仮想マシンリバース | reverse-engineering/dsl-vm-reverse/ | JS のカスタム命令セット VM(IIFE + switch-case opcode);リスク管理/キャプチャエンジンなど |
| オペレーション契約 ops | ops/ | Scope / エビデンスチェーン / ロール / タイムライン / アイデンティティ / skill サプライチェーンセキュリティ |
| コミュニティ skill 対照 | references/community-security-skills.md | 外部セキュリティ skill の索引と参考ルール(盲目的なインストールは禁止) |
| Skill サプライチェーン | ops/skill-supply-chain.md | 外部 skill/MCP インストールのゲート(AST10 簡略版) |
| RE フェーズゲート | reverse-engineering/references/re-agent-workflow.md | triage→static→dynamic→synthesis |
| 認可偵察パイプライン | pentest-tools/references/recon-pipeline.md | scope ゲート + ヒット≠検証 |
| プロトコルリバース | protocol-reverse/ | カスタムバイナリプロトコル / Protobuf / gRPC / PCAP フレームレイアウト |
| Ghidra リバース | ghidra-reverse/ | オープンソース逆コンパイル、headless、Ghidra MCP(IDA がない場合の主入口) |
| Binary Ninja リバース | binary-ninja-reverse/ | HLIL/MLIL/LLIL、Python API、およびオプションのコミュニティ MCP/localhost HTTP 統合 |
| クラウド / コンテナ / K8s | cloud-k8s/ | IMDS/IAM、コンテナエスケープの面、Kubernetes RBAC |
| Windows / AD | windows-ad/ | Kerberos、AD CS、BloodHound、リレーとドメインパス |
| デジタルフォレンジック | digital-forensics/ | メモリ/ディスクのタイムライン、PCAP の溯源、IR 保全 |
| コード監査 / SAST | code-audit/ | Semgrep/CodeQL、ホワイトボックス、危険な API と認可審査 |
| 脅威インテリジェンス / OSINT | threat-intelligence/ | 公開ソースの IOC 補完、キャンペーン関連付け、独立検証とインテリジェンスの引き継ぎ |
| 脅威ハンティング | threat-hunting/ | 仮説駆動のハンティング、Sigma 検知エンジニアリング、ブルーチーム検証 |
| OT / ICS 産業制御 | ot-ics/ | Purdue 区分、PLC/SCADA、パッシブ優先の評価 |
| Wi-Fi / ワイヤレス | wifi-wireless/ | 認可されたワイヤレス評価、ハンドシェイク/PMKID、ラボルール |
| ブラウザ拡張リバース | browser-extension-reverse/ | Chrome/Firefox 拡張、MV3 worker、権限の面 |
| macOS / Mach-O | macos-reverse/ | 署名、ObjC/Swift、LaunchAgent、macOS サンプル |
| シッククライアント | thick-client/ | デスクトップ C/S、ローカルストレージ、IPC、更新チャネル |
| Go / Rust リバース | go-rust-reverse/ | シンボルを剥がされた Go/Rust、pclntab、panic 文字列 |
| ハードウェアデバッグインターフェース | hardware-security/ | UART/JTAG/SWD、読み取り専用抽出、ファームウェアの引き継ぎ |
| データベースセキュリティ | database-security/ | MySQL/PG/MSSQL/Mongo/Redis の露出と設定 |
| メールセキュリティ | email-security/ | フィッシングの分解、SPF/DKIM/DMARC、BEC |
| フェデレーテッドアイデンティティ | identity-federation/ | SAML/OIDC/OAuth SSO のフローと設定ミス |
| RF / SDR | radio-sdr/ | 認可された無線周波数研究、デフォルトは受信のみ |
统一入口
遇到逆向、CTF、抓包、前端签名、APK 改包、二进制分析类任务时,先按这个顺序进入:
- 平台原生 router(Windows
scripts/master-route.ps1;Linux/macOS/Kaliscripts/master-route.sh)→ PRIMARY(config/routing.json) - 平台原生
case-init→scope.md - 打开 PRIMARY
SKILL.md - 疑难时读
routing.md,需要本机路径时读tool-index.md
工作思路
这些模块可以按需组合使用:
- 拿到一个目标 → 先看文件类型,选对应的分析工具
- 快速捡漏 → strings / rabin2 -z / ltrace 看看有没有直接线索
- 深入分析 → 如果需要反编译→IDA;需要动态 Hook→Frida;需要符号执行→angr
- 一条路走不通就换一条 → 静态分析不行就动态,Java 层不行就看 so,页面观察不够就断点
下一步菜单模式(Next-Step Menu Pattern)
只有在 genuine decision boundary(存在两个或以上 materially different、evidence-supported 分支,且用户选择会改变下一动作)时,子 skill 才 MUST 提供 3-6 个编号选项。若下一步由 gate / Evidence 唯一决定,MUST 直接继续,并按 ops/timeline-workitem.md 只记录 decision_delta + carry_forward_refs;MUST NOT 为制造菜单而重新输出 unchanged route/scope/auth/context。
格式要求:
- 每个选项以数字编号(1-6 范围)
- 每个选项描述一项具体可执行的动作(不是抽象方向)
- 至少包含一个"导出报告/写 writeup"选项
- 至少包含一个"继续深入分析"或"换一种方法"选项
- 必要时包含一个"停止/暂停/询问其他问题"出口
示例:
## 建议下一步(选一个编号)
1. 对 sub_140001000 做深度反编译,还原算法
2. 用 Frida 动态 Hook 验证参数猜想
3. 导出当前已命名函数,生成符号迁移 YAML
4. 生成当前阶段的分析报告
5. 换 radare2 做轻量侦察对比
6. 暂停,我先确认前面的证据
目录是动态扩充的
本目录会持续增长。发现新的子目录时,读它的 SKILL.md 就能快速了解用途。
新增 skill 时,按 CONTRIBUTING.md 的标准流程操作,确保:
- 路由矩阵能正确分流
- bootstrap 系统能自动补齐依赖
- tool-index 能反映新工具状态
关联资源
- 本机还有 anything-analyzer(端口 23816)MCP 服务器,提供浏览器自动化、HTTP 捕获和 AI 分析能力
tool-index.md记录本机逆向工具是否可用、实际路径、版本和脚本引用- 包根目录下的
Readme.md提供面向 Claude Code、Codex CLI 与其他代码 AI 客户端的通用安装与接入说明
按需自举
当 workflow 发现缺少工具时,不要直接报错。统一调用平台原生 bootstrap:
Windows:
powershell -NoProfile -ExecutionPolicy Bypass -File "<skill-root>\scripts\bootstrap-reverse.ps1" -Capability @('工具名') -StartServices
Linux / macOS:
bash <skill-root>/scripts/bootstrap-reverse.sh 工具名 --start-services
Kali:
bash <package-root>/kali/scripts/bootstrap-reverse.sh 工具名 --start-services
支持的能力(以 scripts/bootstrap-manifest.json 为准):jadx、apktool、jeb-pro、binaryninja、frida、frida-ps、idalib-mcp、reqable-mcp、jshookmcp、xquik-mcp、anything-analyzer、idapro、r2、rabin2、adb、agent-browser、ghidra-mcp、seclists、proxycat、burpsuite-mcp、nmap、pentestswarm、binwalk、yara、pwntools、bkcrack
JEB Pro 已登记为手动许可安装能力:bootstrap 只输出指引,绝不下载或规避商业许可。Reqable MCP 仅登记固定版本的官方运行时,仍需要用户自行安装 Reqable 桌面客户端。
清单中未登记的工具(如 unblob/EMBA 等)
MUST在 skill 文档中走手动安装步骤,禁止假装可 bootstrap。
自举完成后会自动刷新 tool-index。
操作先例库(Precedent Files)
在执行任何逆向/渗透操作之前,按顺序 MUST 读取:
| 读序 | 文件 | 何时读 |
|---|---|---|
| #1 | ops/scope-contract.md + case-init.ps1 | 可执行授权门。precedent-auth.md 不写 granted |
| #2 | field-journal/precedent-reverse.md 或 precedent-pentest.md | 按需 — AI 犹豫时才加载 |
#1 前置,#2 懒加载。
自动进化
每次完成逆向/渗透任务后,必须回写经验到 field-journal/ 目录。详见 RULES.md 的"任务完成后的硬性 Checklist"。
- 模板:
field-journal/_template.md - 索引:
field-journal/_index.md - 先例:
field-journal/precedent-auth.md→precedent-reverse.md→precedent-pentest.md - 新任务开始前先查索引和先例,复用已有经验
任务完成自检(声称完成前 MUST 通过)
- 我是否完成了路由三轴匹配(目标类型 + 用户意图 + 工具链)?
- 我是否在路由成功后读取了目标 skill 的 SKILL.md?
- 路由未命中时,我是否提议了新增 skill 而非强行匹配?
- 我是否基于
tool-index使用了真实工具路径?