PeMCP について
PeMCP(Arkana)は、Claude Code などの MCP クライアントに 308 個のマルウェア解析ツールを提供する MCP サーバーです。バイナリ解析、逆コンパイル、シンボリック実行、対話型デバッグを扱います。SOC アナリストやリバースエンジニア向けで、リアルタイムの Web ダッシュボードも備えます。
主な機能
- 01PE、ELF、Mach-O、.NET、Go などのフォーマット対応
- 02angr による逆コンパイルとシンボリック実行
- 03ブレークポイントとスナップショットを備えた対話型デバッガー
- 04YARA、capa、FLOSS によるシグネチャ解析
- 05メモ、リネーム、履歴を保持するセッション永続化
活用シーン
- 01サンプルのリスク評価と C2 サーバーおよび IOC の抽出
- 02パッカーのステップ実行と解凍後ペイロードの書き出し
- 03バイナリ間の関数照合による系統の特定
MCP 対応
本プロジェクトは MCP サーバーとして、Claude Code などの MCP クライアントに 308 個の解析ツールを提供し、自然言語のプロンプトからこれらのツールを呼び出せるようにします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Arkana - AI プロンプトひとつで、マルウェア解析ラボのすべてを
「asyncrat.exe を解析して、何をするのか教えて」
プロンプトひとつで、Arkana はバイナリを開き、トリアージを実行します(CRITICAL -- VirusTotal の検出数 43/72)。
C2 サーバー(cveutb.sa.com)を抽出し、MessagePack を使った AES-256 暗号化通信を特定し、MITRE ATT&CK の 12 の手法をマッピングします。また、VMware/VirtualBox/Sandboxie を対象とするアンチ VM チェックを検出し、永続化の仕組み(レジストリの Run キー)を特定し、ベトナム語を話す脅威アクターの存在を示すオペレーターの PDB パスを復元します。
レポート全文を見る。
「アンパックスタブを順に実行して、何を復号するか見せて」
Arkana は対話型デバッグセッションを開始し、VirtualAlloc と VirtualProtect にブレークポイントを設定して、復号ループを順に実行します。実行前後の状態をスナップショットし、メモリ領域を比較して、アンパックされたペイロードをダンプします。これらすべてを自然言語で指示できます。

Arkana は Model Context Protocol(MCP)サーバーで、Claude Code(または任意の MCP クライアント)に 308 個の解析ツールを提供します。逆コンパイル、シンボリック実行、対話型のステップ実行デバッグ、データフロー解析、YARA/capa/FLOSS シグネチャ、Binary Refinery によるデータ変換、Qiling/Speakeasy エミュレーション、.NET の難読化解除、関数の類似性マッチング、リアルタイムの Web ダッシュボードを利用できます。そのため、知りたいことを伝えるだけで、PE、ELF、Mach-O、.NET、Go、Rust、シェルコードのサンプルを調査できます。Ghidra スクリプトも、コマンドラインフラグも、複数のツールを行き来する必要もありません。結果だけが得られます。
Arkanaを選ぶ理由
課題: マルウェア解析では、Ghidra、IDA、CyberChef、YARAをはじめとする数多くのツールを使い分ける必要があります。それぞれに独自のインターフェース、スクリプト言語、習得の難しさがあります。1つのサンプルを調査するだけでも、5~10個のツールを切り替え、連携していないワークフローの間で調査結果を手作業で照合することがあります。
Arkanaは、308種類の専門的な解析ツールを1つのAI駆動インターフェースに集約し、この問題を解消します。1つのMCPサーバーが、マルウェア解析ラボ全体に相当する機能を提供します。知りたいことを自然言語で説明すれば、AIが適切なツールを自動的に連携させます。
他との違い:
- 幅広い対応範囲 -- PE/ELF/Mach-Oの解析、angrを活用した逆コンパイルとシンボリック実行、200種類以上の組み合わせ可能なデータ変換を提供するBinary Refinery、YARA/capa/FLOSS/PEiDのシグネチャエンジン、Qiling/Speakeasyのエミュレーション、.NET/Go/Rustに特化した解析、.NETの難読化解除とC#の逆コンパイル、Fridaスクリプトの生成、脆弱性パターンの検出、バイナリ間の関数類似性検索、VirusTotalとの連携など、308種類のツールを提供します。
- 解析結果に対するAIの推論 -- 単に出力を生成するだけのツールとは異なり、Arkanaは解析結果をAIに渡し、結果に基づいた推論を行います。関数を逆コンパイルして、
VirtualAllocの後にmemcpyと間接呼び出しが続くのを検出すると、シェルコードインジェクションのパターンだと認識し、関数名をinject_shellcodeに変更して、ソースバッファの調査を提案します。 - 設定不要の自動エンリッチメント -- ファイルを開くと、Arkanaはバックグラウンドで分類、リスクスコアの算出、MITRE ATT&CKへのマッピング、IOCの抽出、ライブラリの特定、逆コンパイルの一括実行をすぐに開始します。最初の質問をする頃には、回答がすでにキャッシュされています。
- 対話型デバッグ -- ブレークポイント、ウォッチポイント、メモリの検査、実行スナップショット、API呼び出しのトレース、I/Oのキャプチャ、カスタムAPIスタブを使い、バイナリを命令単位でステップ実行できます。状態のスナップショットを取得し、レジスタやメモリを変更して結果を比較することで、別の実行経路を調査できます。
- セッションの継続性 -- メモ、関数名の変更、カスタム型定義、ツールの履歴は、コンテキストウィンドウの制限やサーバーの再起動後も保持されます。これにより、コンテキストを失うことなく、数時間から数日にわたる調査を続けられます。
- リアルタイムのウェブダッシュボード -- AIの作業に合わせてリアルタイムに更新されるビジュアルな補助ツールです。XREF解析を含む関数のトリアージ、対話型コールグラフ、文字列エクスプローラー、MITRE ATT&CKマトリクス、16進ビューアー、解析タイムラインを利用できます。ダッシュボードで設定したアナリストのフラグは、AIが提案するツールに直接反映されます。
活用できるユーザー:
- SOCアナリスト -- リスクスコアの算出、MITREマッピング、IOC抽出を含む自動トリアージを数秒で実行でき、ウェブダッシュボードで視覚的に確認できます
- マルウェアリバースエンジニア -- 自然言語を使って、複数段階のペイロードにわたる逆コンパイル、シンボリック実行、対話型デバッグ、データ変換を実行できます
- インシデント対応担当者 -- 時間に追われる状況でも、C2設定、ネットワークインジケーター、構造化レポートを迅速に抽出できます
- 学習者 -- ソクラテス式のガイダンス、進捗管理、実際のツールを使った実践演習を備えた、対話型のリバースエンジニアリング学習機能を利用できます
- 脅威インテリジェンスチーム -- 類似性ハッシュの自動生成、ファミリーの特定、YARAルールの生成、バイナリ間の関数マッチングを利用できます
主な機能
- マルチフォーマット対応 -- PE、ELF、Mach-O、.NET、Go、Rust、raw shellcodeを自動検出し、解析前に完全性を検証します(切り詰め、破損、NULLパディングを検出)。未知のフォーマット(ZIP、PDF、PCAP)はクラッシュせず、明確なガイダンスとともにrawモードにフォールバックします。pefileで不正なPEを処理できない場合は、LIEFがフォールバックパーサーとして機能します。
- Angrを活用した解析 -- デコンパイル、一括デコンパイル、CFG、シンボリック実行、データフロー、スライシング、エミュレーション用の46個のツール
- 包括的な静的解析 -- 27個のPE構造ツール、YARA/capa/PEiD/FLOSSシグネチャ、暗号検出、16進パターン検索、IOCエクスポート
- Binary Refineryとの統合 -- 200種類以上の組み合わせ可能なデータ変換(エンコーディング、暗号、圧縮、フォレンジック)をラップした、コンテキスト効率の高い23個のツール
- クロスプラットフォームエミュレーション -- Speakeasy(Windows API)とQiling(Windows/Linux/macOS、x86/x64/ARM/MIPS)
- インタラクティブデバッガー -- ブレークポイント、ウォッチポイント、メモリ検査、スナップショット、API呼び出しトレース、I/Oキャプチャ、カスタムAPIスタブ、メモリ検索を備えた、ステップ実行エミュレーション用の29個のツール -- 最大3つのデバッグセッションを同時に実行可能
- 関数の類似性(BSimスタイル) -- CFG、API呼び出し、VEX IR、文字列、定数、サイズ、ブロックハッシュ、呼び出しコンテキストの8つの特徴グループを用いて、バイナリ間でアーキテクチャに依存せず関数を照合します。エンリッチメント中にすべてのバイナリを自動的にインデックス化し、名前の変更はBSim DBと同期されるため、
transfer_annotationsによって解析結果を亜種に引き継げます。バイナリ全体のトリアージ、信頼度スコア、誤検知対策も含まれます。 - インタラクティブな注釈 -- 関数や変数の名前変更、カスタム構造体/列挙型の定義、アドレスラベルの追加が可能で、すべてセッションをまたいで保持され、デコンパイル結果に自動的に適用されます。
- セッションの永続化 -- メモ、名前の変更、カスタム型、ツール履歴、解析キャッシュは、再起動後もコンテキストウィンドウの上限を超えても保持されます。
- 自動エンリッチメント -- ファイルを開くと、バックグラウンドで分類、トリアージ、MITREマッピング、IOC収集、ライブラリ特定、デコンパイルの一括処理が自動的に開始されるため、質問する前に結果が準備できます。
- AIに最適化されたワークフロー -- 簡潔なトリアージ、スマートな関数ランキング、一括デコンパイル、ダイジェスト要約、次の手順のガイド
- 堅牢なアーキテクチャ -- Docker優先、スレッドセーフな状態管理、バックグラウンドタスク、ページネーション、スマートな切り詰め、グレースフルデグラデーション
- 簡潔な説明 --
--brief-descriptionsを使うと、ツールの説明を最初の段落の要約に短縮できます。ツール検索に対応していないクライアントでは、ツール一覧のサイズを約60%削減します。 - Webダッシュボード -- ポート8082で動作するリアルタイムのCRTテーマWebインターフェース。バイナリ概要、XREF解析パネル付き関数トリアージ、タブ付きサイドバーを備えたdagreレイアウトのコールグラフ、解析タイムライン、文字列エクスプローラー、メモブラウザーを備え、アナリストのフラグはAIのツール提案にフィードバックされます。
比較
| Arkana | Ghidra | IDA Pro | CyberChef | |
|---|---|---|---|---|
| AI推論 | ネイティブ | なし | なし | なし |
| デコンパイル | Angr(マルチアーキテクチャ、一括処理) | Ghidra Decompiler | Hex-Rays($$$) | なし |
| 関数の類似性 | BSimスタイルのバイナリ間照合 | BSim(Java) | BinDiff/Lumina | なし |
| データ変換 | Refinery経由で200種類以上 | 手動スクリプト作成 | 手動スクリプト作成 | 300種類以上(手動) |
| エミュレーション | Speakeasy + Qiling | 限定的 | なし | なし |
| インタラクティブデバッグ | 29個のツールを備えたステップデバッガー | 手動 | 手動 | なし |
| 自動エンリッチメント | 開いたときにバックグラウンドでトリアージ | なし | なし | なし |
| Webダッシュボード | リアルタイム、14ページ | なし | なし | なし |
| 習得の難しさ | 自然言語 | 数か月 | 数か月 | 中程度 |
| 費用 | 無料、オープンソース | 無料 | 年間1,800ドル以上 | 無料 |
ArkanaはGhidra/IDAを置き換えるのではなく、それらを補完します。詳細な分析については、シナリオと比較をご覧ください。
Web ダッシュボード
Arkana には、ポート 8082 で自動的に起動するリアルタイム Web ダッシュボードが含まれています。AI 主導の分析を視覚的に補完し、調査の進行状況を確認しながら操作できます。
- 概要 -- リスクスコア、パッキング状況、セキュリティ緩和策、関数へのピボットリンク付きの主な調査結果、最近のメモを含むバイナリーの概要
- 関数 -- トリアージボタン(FLAG/SUS/CLN)付きのソート可能な関数エクスプローラー、XREF 分析パネル、インラインメモ、全文コード検索、シンボルツリービュー。XREF をクリックすると、疑わしい API バッジ付きの相互参照、対象関数へ移動できるクリック可能な呼び出し元/呼び出し先、関連する文字列が表示されます。事前の逆コンパイルは不要です
- コールグラフ -- dagre 階層レイアウトを備えたインタラクティブな Cytoscape.js コールグラフ。ノード選択時に表示されるタブ付きサイドバー(INFO/XREFS/STRINGS/CODE)、エンリッチメントスコアに基づく枠線の太さ、蟻の行進アニメーション付きの近傍ハイライト、検索、ブックマーク、PNG/SVG エクスポートを備えています
- セクション -- 異常のハイライト表示(W+X の検出)とエントロピーヒートマップを備えた PE/ELF セクションの権限
- インポート -- エクスポート/関数ごとのグループ化とクリック可能なエクスポートアドレスを備えた DLL インポートテーブル
- 16 進数ビュー -- オフセットへのジャンプ機能を備えた無限スクロールの 16 進ダンプ
- 文字列 -- FLOSS 詳細パネル(種類の内訳、デコード済み文字列/スタック文字列のプレビュー)、種類/カテゴリによるフィルタリング、sifter スコア、リンク付き関数列を備えた統合文字列エクスプローラー
- CAPA -- 関数リンク付きの名前空間別にグループ化された機能の一致
- MITRE -- IOC パネル付きの ATT&CK 手法マトリックス
- 型 -- バイナリーデータ解析用のカスタム構造体/列挙型エディター
- 類似性 -- BSim トリアージ(シグネチャ DB に対するバイナリー全体の類似性)、BinDiff による関数レベルの比較、シグネチャデータベース管理
- タイムライン -- 各ツール呼び出しとメモの時系列ログ。展開可能な詳細パネルにリクエストパラメーターと結果の概要が表示されます
- メモ -- すべての分析メモをカテゴリ別に絞り込んで表示(general、function、tool_result、IOC、hypothesis、conclusion、manual)。クリック可能なアドレスリンク付きです
- グローバルステータスバー -- すべてのページで、アクティブなツールとバックグラウンドタスクの進行状況を確認できます
- リアルタイム更新 -- AI によるツール実行に合わせて SSE でライブ更新します

ダッシュボードではトークンベースの認証を使用します(~/.arkana/dashboard_token に保存されます)。トークン付きのアクセス URL は、サーバーの起動時に出力されます。すべてのビューのスクリーンショットについては、ダッシュボードギャラリーをご覧ください。
レポートの例
以下のレポートはすべて、単一のプロンプト「このバイナリを解析して、何をするものか教えてください。」から生成されました。
| レポート | サンプル | 主な内容 |
|---|---|---|
| Trojan.Delshad BYOVD Loader | 多段階ドロッパー | ペイロードの抽出、攻撃チェーン図、ATT&CK のテクニック 12 件 |
| LockBit 3.0 Ransomware | パックされたランサムウェア | エントロピー分析、パッキング検出、スタブの抽出 |
| AsyncRAT .NET RAT | .NET RAT | 難読化されたメタデータにもかかわらず C2 設定を抽出 |
| StealC Info Stealer | 認証情報窃取ツール | capa ルール 32 件、ブラウザー/Steam の標的化、暗号ツールキット |
| ValleyRAT Multi-Stage Loader | 中国の APT RAT | 5 段階のアンパッキング、独自 ARX 暗号の逆解析、C2 設定の抽出 |
| Brute Ratel C4 Badger | 商用 C2 インプラント | PIC シェルコードの追跡、RC4 アンパッキング、C2 設定の抽出、ATT&CK のテクニック 17 件 |
| CrackMeZ3S CTF Challenge | PELock 6-key crackme | IAT パッチ適用を備えた対話型デバッガー、コードケーブへのシェルコード挿入、暗号化 blob の復号、手動での XOR 暗号の逆解析、MD5 ハッシュのクラッキング |
| Ternary Trap Neural Crackme | ニューラルネットワークによるパスワードロック | 独自 NLI2 形式の逆解析、三進 MLP の再構築、SIMD アセンブリの型特定(cvtdq2pd)、自己回帰推論、DFS によるパスワード検索 |
| ACRStealer Go Loader | Go でコンパイルされた情報窃取ツール | 同日 Malware Bazaar サンプル、Go pclntab の解析、独自の 5 段階暗号の逆解析、PEB をたどる API 回避、静的 IOC なし、暗号化ペイロードの抽出 |
| SalatStealer 3-Layer Stealer | 3 層構造の Go 窃取ツール | AES-256-CBC によるペイロード復号、UPX 5.02 LZMA の手動展開、Go モジュールのマッピング、ブラウザー 16 種 + ウォレット 23 種 + LSASS ダンプ、Defender の二重回避、DoH C2 |
| StealC v2 7-Layer AutoIt3 Loader | 7 層のプロセスハロウィングローダー | IExpress SFX → バッチの難読化解除 → PE フラグメントの再構築 → RanRot PRNG による復号 → 41 API を用いたプロセスハロウィング → RC4 + LZNT1 によるペイロード抽出 → 暗号化 C2 設定、ビルダーパス、認証情報の標的を含む StealC v2 PE |
| Elysium RAT (SheetRAT) | .NET プラグインベース RAT | 同日 MalwareBazaar サンプル、独自の 2 アルファベット置換暗号、C# ファイル 313 件を復元、AMSI/ETW のパッチバイトを抽出、レジストリ DLL ストレージを備えたプラグインフレームワークアーキテクチャ、Dead Drop Resolver を用いたデュアル C2 |
| CrySome RAT | .NET モジュラー RAT | C# ファイル 124 件を逆コンパイル、工場出荷時リセット後も存続する 5 層の永続化、終了時に BSOD を起こす自己防御、114 以上の製品を標的とする 5 ベクトルの AV キラー、6 種のブラウザー向け HVNC、DLL インジェクションによる認証情報窃取、相互監視プロセス |
| MBA-Obfuscated WinHTTP RAT | 同日 Malware Bazaar RAT | C2 プロトコル全体の逆解析(コマンド 4 件、バージョン管理されたプロトコル、Cloudflare のバイパス)、XOR 暗号を隠す Mixed Boolean-Arithmetic 難読化、Base64+XOR で暗号化された C2、ダウンロードと実行(EXE/DLL/カスタム)、解析回避テクニック 27 件、埋め込み Chromium のフォームインジェクション、作成者のスペルミスによるフィンガープリントを含むシステムプロファイリング |
解析の仕組み
Arkana は、構造化された証拠優先の手法に従います。これは、プロのマルウェアアナリストが用いる段階的なワークフローを 308 個のツールで自動的に実行するものです。すべての主張には特定のツール出力が引用され、指標は結論ではなく手掛かりとして扱われます。また、復号を行う関数を逆コンパイルする前に、AI が復号を試みることはできません。
注釈付き AsyncRAT ウォークスルーで、手法の全容を読む →
4つのコマンドですぐに始める
Arkana は Claude Code および MCP 対応のあらゆるクライアントで動作します。Claude Code と Docker を使って最も手早く始める方法は次のとおりです。
# 1. Clone and build (first build takes a few minutes)
git clone https://github.com/JameZUK/Arkana.git
cd Arkana
./run.sh --build
# 2. Add Arkana to Claude Code
claude mcp add --scope project arkana -- ./run.sh --samples ~/your-samples --stdio
# Optional: reduce context window usage with shorter tool descriptions
claude mcp add --scope project arkana -- ./run.sh --samples ~/your-samples --stdio --brief-descriptions
# 3. Start Claude Code and analyse a binary
claude
その後、Claude Code で /arkana-analyse スキルを使うと、最良の結果が得られます。
> /arkana-analyse suspicious.exe
または、質問を直接入力するだけでもかまいません。
> Open suspicious.exe and tell me if it's malicious
さらに、Arkana のツールを使ってバイナリ分析を実践的に学べる、対話型のリバースエンジニアリングチューター /arkana-learn スキルもあります。
その他の MCP クライアント、ローカルへの Python のインストール、詳細な設定については、インストールガイドをご覧ください。
デモ
AsyncRAT の分析 -- 1つのプロンプトで、完全なトリアージ、C2 の抽出、MITRE ATT&CK へのマッピングを実行します。

インタラクティブ再生:asciinema play docs/demos/demo-asyncrat.cast
複数フェーズの調査 -- デコンパイル、エミュレーション、構造化された所見を含む詳細な分析です。

インタラクティブ再生:asciinema play docs/demos/demo-analysis.cast
ドキュメント
| ドキュメント | 説明 |
|---|---|
| インストールガイド | Docker、ローカル環境、最小構成でのインストール、動作モード、複数形式のバイナリ対応 |
| 分析方法論 | 8フェーズの分析パイプライン、ツールごとの解説、判断ロジック、組み込みのガードレール、注釈付き AsyncRAT の例 |
| Claude Code との統合 | CLI と JSON 設定によるセットアップ、分析および学習スキル、一般的なワークフローと質問例 |
| 設定 | API キー、分析キャッシュ、コマンドラインオプション |
| ツールリファレンス | カテゴリー別に整理された、全 308 個の MCP ツールの完全な一覧 |
| VM 保護されたバイナリ | Frida DBI スクリプトを使った VMProtect/Themida/Enigma バイナリの分析、4段階のパイプライン |
| シナリオと比較 | 実例に基づく7つの分析ガイド、Arkana と Ghidra、IDA Pro、CyberChef の比較 |
| アーキテクチャ | パッケージ構造、設計原則、ページネーションと結果の上限 |
| セキュリティとテスト | パスのサンドボックス化、セキュリティ対策、テストと CI/CD |
| Web ダッシュボード | ポート 8082 のリアルタイム分析ダッシュボード、関数トリアージ、呼び出しグラフ、タイムライン、メモ |
| Qiling Rootfs のセットアップ | Qiling によるクロスプラットフォームエミュレーション用の Windows DLL セットアップ |
| 依存関係 | ライブラリの依存関係とオプションコンポーネントの詳細 |
| 今後の改善 | ロードマップと計画中の機能強化 |
| コントリビューション | コントリビューションのガイドラインと開発ワークフロー |
コントリビューション
コントリビューションを歓迎します。詳細はコントリビューションガイドをご覧ください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/your-enhancement) - 変更をコミットします
- プルリクエストを作成します
ライセンス
MIT ライセンスのもとで配布されています。詳しくは LICENSE をご覧ください。
免責事項
このツールキットは教育および研究目的に限り、「現状のまま」提供されます。サンドボックス環境内で、分析対象のバイナリの一部を実行する機能(angr によるエミュレーションおよびシンボリック実行)を備えています。信頼できないファイルを分析する際は、常に注意してください。本ソフトウェアの悪用、または使用によって生じた損害について、作者は一切責任を負いません。
Arkana が役に立った場合は、スターを付けることをご検討ください。ほかの人がこのプロジェクトを見つけやすくなります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。