1. プロジェクト概要
reverse-skillは、AIコーディングエージェント(およびそれと協働する人間)を、リバースエンジニアリング、ペネトレーションテスト、CTF形式のセキュリティタスクにおける構造化され再現可能なワークフローへと導くサイバーセキュリティスキルルーターです。場当たり的な推測を、対象に応じて適切な方法論とツールを選択するルールベースのルーティングシステムに置き換えます。
2. 背景と位置づけ
- 中核的使命: AIエージェントはAPK、バイナリ、暗号化されたJavaScript、ファームウェアの解析やCTFチャレンジの実行を求められる機会が増えていますが、どの手法やツールをどの状況に適用すべきかを体系的に判断する手段を一般に欠いています。reverse-skillは、専門家のルーティングロジック——「ユーザータスク →
RULES.md→MASTER-ROUTING→ ケース初期化 → シナリオ固有スキル → 証拠収集 → 報告」——をエンコードすることでこのギャップを埋め、エージェントが即興ではなく一貫性のある監査可能な経路をたどるようにします。 - 差別化: reverse-skillは単一のツールや特定ユーティリティのラッパーではなく、既存のセキュリティツールエコシステム(jadx、apktool、Frida、Burp、YARAなど)の上に位置するルーティングおよびオーケストレーションレイヤーです。その価値は、タスク分類の一貫性を保つ43のルーティングルールと173の回帰テスト、そしてClaude Code、Cursor、ClineなどのAIコーディング環境で同じように動作するクライアント中立設計にあります。
3. 機能カテゴリ
- 📱 モバイル解析 — APKおよびiOSアプリ解析。代表的なスキルには静的逆コンパイル、動的インストゥルメンテーション、証明書・署名検査が含まれます。目的: モバイルバイナリのアプリ挙動と脆弱性を明らかにする。
- 🧩 バイナリリバースエンジニアリング — ELF、EXE、DLL、SOファイルの取り扱い。逆アセンブル、シンボル復元、制御フロー解析。目的: コンパイル済みバイナリを理解可能なロジックに戻す。
- 🔐 .NET / C# 逆コンパイル — .NETアセンブリからソースレベルの構造を復元。目的: 元のソースなしでマネージコードアプリケーションを解析する。
- 🕸️ JavaScript暗号化解析 — フロントエンド/Web向けJavaScriptの難読化解除と復号ルーチンの追跡。目的: WebアプリやAPIが使用するクライアントサイド暗号化ロジックを理解する。
- 🛡️ マルウェア検出とYARA — シグネチャベースおよび挙動ベースのマルウェア解析。目的: YARAルールを使用して悪性サンプルを分類・検出する。
- 🎯 ペネトレーションテストとスキャン — 許可された対象に対する構造化されたスキャンおよびエクスプロイトワークフロー。目的: 明示的なテスト範囲の下でシステムの露出を評価する。
- 🏁 CTF競技 — 一般的なチャレンジカテゴリ(pwn、crypto、web、reverse、forensics)を網羅する42の専用CTFサブスキル。目的: キャプチャ・ザ・フラッグイベント向けの競技即応ワークフローを提供する。
- 🔌 ファームウェアとIoT評価 — 組み込みファームウェアイメージの抽出と解析。目的: IoTデバイスのセキュリティ態勢を評価する。
- 💥 エクスプロイト開発とPwnチェーン — 概念実証エクスプロイトチェーンのガイド付き構築。目的: 管理された環境で脆弱性の影響を検証する。
- 🌐 APIとGraphQLセキュリティ — APIのエンドポイント発見と認可・ロジックテスト。目的: 安全でないAPI設計とアクセス制御の欠陥を特定する。
- 📦 サプライチェーン解析 — 依存関係とビルドパイプラインの検査。目的: ソフトウェアサプライチェーンにおける改ざんや悪意のあるパッケージを検出する。
- 🤖 LLM / AIセキュリティ — プロンプトインジェクション、モデル悪用、エージェント固有の攻撃面の評価。目的: 従来のセキュリティレビューをAI搭載システムに拡張する。
4. 主な特徴
- ルールベースのルーティングエンジン —
routing.jsonで定義された43のルーティングルール(R0–R44)が、タスクの分類と振り分け方法に関する唯一の信頼できる情報源として機能します。 - 回帰テスト済みの信頼性 — 173の回帰テストケースがルーティング判断を検証し、ルール変更が既存のワークフローを静かに破壊するリスクを低減します。
- クロスプラットフォームCI — WindowsとUbuntuの両方で自動検証を行うことで、ルーティングとスクリプトがオペレーティングシステム間で一貫して動作することを保証します。
- クライアント中立設計 — Claude Code、Cursor、ClineなどのAIコーディングアシスタントで一様に動作するため、チームは単一のエージェントプラットフォームに縛られません。
- 構造化されたケースライフサイクル — すべてのタスクがケース初期化、証拠収集、報告を経て流れ、一回限りの使い捨て作業ではなく監査可能な成果物を生み出します。
- 明示的な認可ゲート —
RULES.mdが攻撃的なワークフローの実行前に範囲と認可のチェックを強制し、許可されたテストのみに使用を限定します。
5. 役割別ユースケース
- 一般開発者: JavaScript暗号化解析と.NET逆コンパイルのスキルを使用して、サードパーティコードの理解や難読化された依存関係のデバッグを行います。
- セキュリティエンジニア / ペネトレーションテスター: モバイル、バイナリ、API、エクスプロイト開発の各スキルを含む完全なルーティングシステムを活用し、許可された対象に対して一貫性のある十分に文書化された業務を実施します。
- CTFプレイヤー: 42のCTFサブスキルを、pwn、crypto、web、reverse、forensicsのチャレンジカテゴリ向けの即戦力プレイブックとして使用します。
- AIエージェント開発者: reverse-skillをルーティングレイヤーとして統合することで、Claude Code / Cursor / Clineベースのあらゆるエージェントが推測ではなく適切なセキュリティ方法論を確実に選択できるようにします。
6. はじめに
必要なものを見つける — ルーティングの入口から始めます:
cat MASTER-ROUTING.md
cat RULES.md
インストール / 統合 — リポジトリをクローンし、プラットフォーム固有のリフレッシュスクリプトを実行して利用可能なセキュリティツールを検出します(JDK、Node.js 22.12以上、Python 3.xが必要):
git clone https://github.com/zhaoxuya520/reverse-skill.git
cd reverse-skill
# プラットフォームに応じたリフレッシュスクリプトを実行(例):
./scripts/refresh.sh # Kali/Ubuntu/macOS
scripts/refresh.ps1 # Windows
貢献 — 標準的なフォーク&プルリクエストのワークフロー:
git checkout -b feature/my-skill
git commit -m "Add my-skill"
git push origin feature/my-skill
# その後、GitHubでプルリクエストを開く
7. プロジェクト構成
reverse-skill/
├── skills/ # コアルーティングルール、ワークフロー、ドメイン固有スキル
├── CTF-Sandbox/ # 42のCTFサブスキル(GPLv3ライセンスのオーケストレーター)
├── scripts/ # マスタールーティング、ケース初期化、テストスクリプト
├── docs/ # プラットフォーム固有のガイダンス(Kali、Ubuntu/Debian、macOS)
└── work/ # ローカルケースデータ(gitignore対象)
主要ファイル:
MASTER-ROUTING.md— 受信タスクのための主要なファストトラックルーティングラダー。routing.json— 43のルーティングルールの唯一の信頼できる情報源。README_AI.md— AIエージェント向けに特別に書かれたブートストラップ手順。RULES.md— スキル実行前に通過しなければならないグローバルな範囲ゲートと認可チェック。
8. 関連エコシステム
- ラップまたは依存する上流ツール: jadxとapktool(Android逆コンパイル)、Frida(動的インストゥルメンテーション)、Burp Suite(Web/APIテスト)、YARA(マルウェアシグネチャ)。
- 統合対象のAIエージェントプラットフォーム: Claude Code、Cursor、Cline、その他の互換性のあるAIコーディング環境。
- 補完的インフラスポンサー: Atlas Cloud(AI推論プラットフォーム)とKite AI(エージェント経済向けのID・決済インフラ)がプロジェクトの運営を支援しています。
9. ライセンス
- ✅ コアプロジェクトはMITライセンスの下で使用、複製、改変、再配布が可能です(商用利用を含む)。著作権表示を保持することが条件です。
- ✅ CTF-Sandbox-OrchestratorコンポーネントはGPLv3で個別にライセンスされており、改変版を再配布する場合はコピーレフト条件が適用されます。
- ❌ 所有していないシステムや明示的なテスト許可のないシステムに対して、このプロジェクトのいかなるスキルも使用しないでください。これは一般的な法的注意書きではなく、プロジェクト自身のルールに明記された厳格な要件です。
- ℹ️ 同梱または参照されるサードパーティツール(jadx、Frida、Burpなど)はそれぞれ独自のライセンスを保持しており、MIT/GPLv3とは異なる場合があるため、個別に確認する必要があります。
10. よくある質問
Q: reverse-skillを使用する前に、すべての前提ツールをインストールしておく必要がありますか?
A: いいえ。リフレッシュスクリプト(scripts/refresh.sh / scripts/refresh.ps1)がシステム上で既に利用可能なツールを検出し、それに応じてタスクをルーティングします。不足しているツールは想定ではなく報告されます。
Q: reverse-skillはCTFだけでなく、実際のペネトレーションテストにも使用できますか?
A: はい。ただし、所有しているシステム、またはテストについて明示的な書面による許可を得ているシステムに対してのみ使用できます。これはRULES.mdの範囲および認可ゲートによって強制されます。
Q: どのAIコーディングアシスタントで動作しますか?
A: ルーティングシステムはクライアント中立であり、Claude Code、Cursor、Clineで検証済みです。互換性のあるAIコーディング環境であれば、同じルーティングファイルを利用できるはずです。
Q: CTF-Sandbox-Orchestratorがプロジェクトの他の部分(MIT)と異なるライセンス(GPLv3)を使用しているのはなぜですか?
A: これは独自のライセンス判断を持つ個別にメンテナンスされているサブモジュールです。そのコンポーネントを特に再配布する前に、CTF-Sandbox/内のライセンスファイルを確認してください。
Q: 新しいスキルやルーティングルールを追加するにはどうすればよいですか?
A: リポジトリをフォークし、skills/(CTF固有のものはCTF-Sandbox/)の下にスキルを追加し、新しいルールが必要な場合はrouting.jsonを更新し、回帰テストが通ることを確認して、プルリクエストを開いてください。
11. クイックリンク
- リポジトリ: https://github.com/zhaoxuya520/reverse-skill
- ルーティング入口:
MASTER-ROUTING.md(リポジトリルート内) - 貢献: 標準的なGitHubのフォーク&プルリクエストワークフロー(
CONTRIBUTINGガイダンスについてはリポジトリルートを参照) - コミュニティ/ディスカッション: リポジトリ上のGitHub Issuesとプルリクエスト
12. まとめ
reverse-skillは、場当たり的で試行錯誤的なセキュリティ解析を、AIエージェントと人間の実務者がモバイル、バイナリ、Web、ファームウェア、CTFの各領域にわたって一貫して従うことのできる構造化されたルール駆動のワークフローに変えます。セキュリティタスクと適切なツールの間で信頼性が高く監査可能なルーティングを必要とするセキュリティエンジニア、CTF参加者、AIエージェント開発者に最適です——常に許可されたテストの範囲内で。