概要
- AIエージェントによる バイナリ実行ファイルのマルウェア検出 ベンチマークの作成
- Claude Opus 4.6 を含む最新AIモデルの性能評価
- Dragon Sector の逆アセンブリ専門家との協力による検証
- BinaryAudit プロジェクトで詳細結果とオープンソース課題を公開
- AIの現状の限界と今後の展望について解説
AIエージェントによるバイナリマルウェア検出の最前線
- Claude などのAIはコード生成だけでなく、 バイナリ実行ファイルの解析 能力も持ち始めている
- Dragon Sector のMichał “Redford” Kowalczykと協力し、 ソースコード非公開のバイナリ からバックドアを発見するベンチマークを作成
- BinaryAudit で全ベンチマーク結果(誤検知率、ツール習熟度、コスト効率のパレートフロンティア)を公開
- すべての課題は quesmaOrg/BinaryAudit でオープンソースとして入手可能
- Claude Opus 4.6の成功率は 49% (小中規模バイナリの明白なバックドアのみ)、多くのモデルで 高い誤検知率 を確認
- 現状では 本番運用には不十分 だが、一部の隠れたバックドア検出に成功し、可能性を示唆
バイナリ解析と実社会の脅威
- 近年のサプライチェーン攻撃や Node Package Manager の侵害、Notepad++のバイナリ差し替え事件など、 実際のセキュリティ被害 が多発
- IoT機器や ファームウェア は検査が難しく、国家・企業による改ざんリスクが現実化
- 逆アセンブリの実例として ポーランドの列車 や中国製インバータ等の研究事例を紹介
- ネットワーク機器 の隠し管理者パスワード問題など、悪意なき設計ミスも脅威
バイナリ解析の技術的背景
- ソースコードは 高レベル抽象化 だが、バイナリは CPU命令列 のみが残る
- コンパイラ最適化 により構造情報や変数名が消失、解析難易度が急上昇
- 分析工程:
- 機械語 → アセンブリ(objdump等で可視化)
- アセンブリ → 疑似C(Ghidra、Radare2、IDA Pro等の逆コンパイラ活用)
- 逆コンパイル後も 意味不明な関数名や変数名 が並び、完全な理解は困難
ベンチマーク課題の設計
- lighttpd、dnsmasq、Dropbear、Sozu等 オープンソースプロジェクト に 人工的にバックドアを挿入
- 例:HTTPヘッダによるコマンド実行機能の埋め込み
- バイナリは シンボル・ソースなし で提供、AIはGhidraやRadare2等のツールを利用可
- タスク: 悪意あるコードの特定 と バックドア関数の開始アドレス の指摘(例:0x4a1c30)
- 一部課題では 複数バイナリの比較 によるバックドア有無判定も実施
AIによる解析プロセス例
- lighttpdのバックドア 検出ケース
- Claudeはまず 共有ライブラリ を特定し、popen等の危険関数の利用有無を確認
- nmやgrepで関数インポートを調査し、popen利用を検知
- Radare2の逆コンパイラで li_check_debug_header 関数を解析、隠しHTTPヘッダによるコマンド実行ロジックを特定
- クロスリファレンスで 死コードでないこと も確認
- 解析手順を段階的に自動化し、AIが人間のリバースエンジニアのように推論
AIの限界と課題
- dnsmasq への単純なバックドア挿入でも、多くのAIモデルは 検出に失敗
- バイナリ解析は依然として 人間の専門家による手作業 が不可欠
- 誤検知率の高さ や 複雑な最適化バイナリ への対応力不足が課題
今後の展望
- AIによるバイナリ解析は 着実に進化 しているが、現時点では 補助的なツール に留まる
- 精度向上や 誤検知抑制、より難解なバックドア検出能力の向上が今後の課題
- BinaryAudit のようなオープンベンチマークが、研究と実装の加速に寄与
参考リンク
- BinaryAudit プロジェクト:quesmaOrg/BinaryAudit
- 詳細なベンチマーク結果、使用ツール、タスク設計、誤検知率などを公開
- Dragon Sector、Michał “Redford” Kowalczykの活動や講演も参考
この分野は今後も AIとセキュリティ専門家の協働 が不可欠。AIの進化とともに、より高度なマルウェア検出やリバースエンジニアリング手法の発展が期待される。