振る舞いを記録する
VM上で動的解析を行い、プロセスやファイル操作などの記録を収集します。
VMWARE / SYSMONLLMが調べ、スクリプトが工程をつなぐ。
動的ログとGhidraの解析情報から、根拠のある考察へ。
VM上で動的解析を行い、プロセスやファイル操作などの記録を収集します。
VMWARE / SYSMONGhidraの関数やデコンパイル情報を調べ、実行時に現れなかった処理も確認します。
GHIDRA / MCP観測した事実と推測を分け、LLMが解析情報を整理してMarkdown・HTMLへまとめます。
LLM / REPORTマルウェア解析には、検体を動かす準備、ログの回収、コードの調査、結果の照合が必要です。r_AKanalyはこれらを一つの流れにつなぎ、LLMによる調査とスクリプトによる工程管理を組み合わせます。
VM操作やログ回収などの定型処理をスクリプトが担当。集めた情報を次の調査へ引き継ぎ、レポートまでの工程をつなぎます。
LLMが得られた情報から調査先を判断。関数や参照関係をたどり、動的ログに現れた振る舞いの理由をコード側から確かめます。
何が観測され、どの処理と関連するのかを整理。確認できた事実、推測、残った不明点を分け、後から読み返せる考察へまとめます。
動的解析では、VM内で検体を実行し、プロセスやファイル操作などを記録します。その環境・条件で実際に現れた振る舞いが調査の出発点になります。
静的解析では、検体を通常実行せず、Ghidraなどで関数や呼び出し関係を調べます。実行時に現れなかった処理や、特定の条件でだけ動く分岐も調査の対象です。
例えば、ファイルの書き換えを観測したら。 対応する関数や呼び出し条件を調べ、ログの挙動とコードの処理が一致するか確認します。コードに処理が存在することと、その処理が実際に動いたことを分けて考察します。
下へ進むと要求がGuestへ届き、結果がHostへ戻ります。スクロールを止めると経路の動きも止まり、戻すと巻き戻ります。
指定された検体と解析条件を読み込み、解析に必要な準備を進めます。
スマホでは図を左右にスワイプできます。設計を含む概念図。vmrunはHostで動作します。線は論理的な指示・結果の流れを表し、検体をMCPへ直接渡す意味ではありません。
指定された検体と解析条件を読み込み、解析に必要な準備を進めます。
動的解析用VMで挙動を観測し、ログを回収。静的解析用の環境へ切り替えます。
LLMが調べる内容を判断。MCPからHost常駐エージェントへ要求を渡します。
Host常駐エージェントが指示を中継し、vmrun経由でGuest内の操作につなぎます。
Guest OS操作エージェントが展開やファイル操作、ツールの準備を担います。検体転送は準備確認後に行います。
Ghidra常駐エージェントから関数やデコンパイル情報を取得。必要な箇所を繰り返し調査します。
解析結果を逆方向に返し、LLMが動的ログと照合して考察。最終レポートにまとめます。
LLMが調査内容を判断。MCPで受けた要求をHost側が中継し、結果を返します。
OS操作は準備・展開・起動、Ghidra操作は関数や解析情報の取得を担当します。
VM復元、準備確認、検体転送、ログ回収、解析後の保存を順序立てて管理します。
VM内Ghidraの常駐連携と解析後の保存処理は開発中です。
安全性を重視し、Host上のLLMと、検体を扱うGuestの解析環境を分離する設計です。VM内のGhidraや補助ツールを通じて静的解析を行い、Hostへ調査結果を返す構成を目指しています。
VM常駐連携・本体への統合は開発中です。以下はその構成方針です。
検体の展開と解析ツールの操作をVM内で行い、Host側のLLMは返された情報を基に調査を進めます。vmrun/Guest Operationsを使い、Host-Onlyネットワークへの接続を前提としない構成です。
動的解析用と静的解析用のスナップショットを別々に管理。静的解析で不明点が見つかった際も、検体の通常実行へ自動で切り替えない方針です。
VM内のエージェント、解析ツール、受け入れ先、外部へ接続しない独自LANの状態を確認してから検体を転送。解析環境の準備と検体を扱う工程を順序立てます。
何が起きたか。どこから判断したか。残った不明点は何か。次の調査につながる形で整理します。
レポートは構成の説明用イメージです。実際の検体や解析結果ではありません。
「全自動」は、必要な環境を整え、検体と解析条件を指定した後の工程をつなぐこと。利用前の準備と、解析後に確認するものを整理しています。
配布は準備中です。対応環境の詳細と導入手順は、ダウンロード公開時に案内します。
配布状況を確認する ↗
作って、調べて、もっと理解する。