Agentic Malware Analysis(エージェニック・マルウェア解析)

Security

概要

Agentic Malware Analysisは、AIエージェント駆動の自動マルウェア逆解析環境を提供するリポジトリです。KaliをベースにしたDockerコンテナ内に50以上のREツールを統合し、Binary NinjaまたはGhidraのヘッドレス(MCP接続)バックエンドを用いてバイナリを解析します。プロジェクトは多段階のオーケストレーター(オーケストラティング・スキル)を備え、生データの受け取りからケースディレクトリの生成、証拠のランク付け、検証済みの仮説、コンポーネントマップ、優先度付けされた深堀り計画までを自動的に作成することを目指しています。Claude CodeやCodex CLI等のLLMベースワークフローとの連携も想定されており、解析のスケーラビリティと再現性を高めるための実験的フレームワークです。

GitHub

リポジトリの統計情報

  • スター数: 15
  • フォーク数: 2
  • ウォッチャー数: 15
  • コミット数: 3
  • ファイル数: 11
  • メインの言語: YARA

主な特徴

  • KaliベースのDockerイメージに50+のリバースエンジニアリングツールを同梱
  • Binary Ninja / Ghidraのヘッドレス(MCP)バックエンドとの連携による自動逆アセンブル
  • LLM(Claude Code / Codex CLI)を活用する構造化ワークフローとマルチフェーズ・オーケストレーション
  • バイナリから「検証済み仮説」「ランク付けされた証拠」「コンポーネントマップ」「優先解析プラン」を出力

技術的なポイント

このプロジェクトの肝は「ツール統合」と「エージェント駆動のワークフロー」にあります。まず、KaliベースのDockerイメージで多種多様なREツール群を一元化することで、静的解析、動的解析、ディスアセンブル、逆コンパイル、YARAによるIOC/特徴抽出など複数フェーズをコンテナ内で完結できるようにしています。ヘッドレスで動作するBinary NinjaやGhidraをMCP(disassembler backend connected via MCP)経由で接続する設計は、GUIに依存せずプログラム的に解析情報(関数リスト、AST、データフロー)を取得できる点で自動化に適しています。

オーケストレーターはマルチフェーズのパイプラインを管理し、各フェーズで得られたメタ情報を集約・構造化して「ケースディレクトリ」を生成します。ここには、証拠(トリガー箇所・IO操作・ネットワーク挙動など)のランク付け、仮説(機能的役割やコンポーネント間の依存関係)の検証ログ、コンポーネントマップ(モジュール分割やフロー図)、および深堀り優先度の付いた解析タスクが含まれます。LLMの活用は主に解析結果の要約、自動レポート生成、仮説提起や次段階のタスク生成に使われ、Claude CodeやCodex CLIとの連携を想定したインターフェースが組み込まれている点が特徴です。

また、メタレベルとしてYARAを主要言語に用いることで、抽出した特徴やシグネチャをルール化しやすく、他の検出システムやハンティングワークフローへ組み込む橋渡しが簡単になります。一方で、実運用や研究で使う際はマルウェアの実行や解析アクティビティを隔離された安全な環境で行う必要があり、法的・倫理的配慮やインフラの隔離が必須です。READMEからは実験的な性格と自動化の完成度はまだ発展途上であることが読み取れますが、リバースエンジニアリングのスケール化を目指す上で有望なアプローチを示しています。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .dockerignore: file
  • .gitignore: file
  • Dockerfile: file
  • LICENSE: file
  • README.md: file

…他 6 ファイル

まとめ

マルチツールとLLMを組み合わせた自動化志向のREフレームワークで、実験的ながら解析のスケール化に有用。

リポジトリ情報:

READMEの抜粋:

Agentic Malware Analysis

Automated deep malware reverse engineering driven by AI agents. A Kali-based Docker environment pairs 50+ RE tools with MCP-connected disassembler backends ([Binary Ninja][binary-ninja-headless-mcp] or [Ghidra][ghidra-headless-mcp]) and a structured multi-phase orchestrator skill that turns a raw binary into a case directory of ranked evidence, validated hypotheses, component maps, and a prioritized deep-analysis plan — with no human interaction required. Ready for […].