ESAA-Security: An Event-Sourced, Verifiable Architecture for Agent-Assisted Security Audits of AI-Generated Code

本論文は、AI 生成コードのセキュリティ監査において、LLM との自由な対話ではなく、イベントソーシングと検証可能なアーキテクチャを用いて、再現性のある証拠に基づく監査プロセスを実現する「ESAA-Security」フレームワークを提案しています。

Elzo Brito dos Santos Filho

公開日 Mon, 09 Ma
📖 1 分で読めます☕ さくっと読める

Each language version is independently generated for its own context, not a direct translation.

この論文は、**「AI が書いたコードのセキュリティチェックを、ただの『会話』ではなく、厳格な『裁判記録』のような仕組みで行う」**という新しい方法を提案しています。

タイトルは**「ESAA-Security」**(エスアア・セキュリティ)と呼ばれています。

以下に、専門用語を使わず、日常の例え話を交えてわかりやすく解説します。


1. 問題:AI の「おしゃべり」は信用できない?

今、AI(大規模言語モデル)に「このコードを直して」「セキュリティチェックして」と頼むと、すごく速く作業してくれます。でも、ここに大きな落とし穴があります。

  • 例え話:
    AI にセキュリティチェックを頼むのは、「天才的な料理人に『この料理に毒がないか見て』と頼む」ようなものです。
    料理人は「大丈夫そうですよ、見た目も綺麗だし!」と自信満々に答えます。でも、もしその料理人が
    「どこで毒を入れたか、いつ毒を入れたか、なぜ毒が入ったか」を記録していない
    としたら、あなたは本当に安心できますか?
    従来の AI によるチェックは、この「おしゃべり(会話)」だけで終わってしまい、「なぜそう判断したのか」「どこをチェックしたのか」の証拠が残らないという問題がありました。

2. 解決策:ESAA-Security の「事件記録簿」方式

この論文が提案する「ESAA-Security」は、AI との会話をやめて、**「厳格な手続きを踏んだ事件調査」**に変えることを提案しています。

  • 核心のアイデア:
    AI は「自由な発言」をせず、**「決められたフォーマットで証拠を提出する」必要があります。そして、その証拠は「書き換え不可能な記録簿(イベントログ)」**に次々と追加されていきます。

  • 例え話:
    これは**「裁判所の記録」「銀行の通帳」**に似ています。

    • AI(調査員): 「犯人(バグ)が見つかりました!」と叫ぶのではなく、「証拠 A を発見しました。場所はここ、重さはこれです」と書式が決まった報告書を提出します。
    • オーケストレーター(裁判長): AI の報告がルールに合っているかチェックし、合っていれば**「記録簿」にハンコを押して確定**させます。
    • 記録簿(イベントログ): 一度書かれた記録は二度と消せません。後から「実はここは間違ってた」と書き換えたり、都合のいいように消したりすることはできません。

3. 仕組み:4 つのステップで完璧なチェック

このシステムは、チェックを 4 つの段階(フェーズ)に分けて、まるで**「探偵が事件を解決する」**ように進めます。

  1. 偵察(Reconnaissance):
    • 「この建物(コード)の構造はどうなっている?入り口(攻撃経路)はどこ?」と地図を描きます。
  2. 現場調査(Domain Audit):
    • 「鍵(認証)はしっかりかかっているか?窓(入力値)は壊れていないか?」と、16 の分野(鍵、窓、配管など)を順番にチェックします。
  3. リスク分類(Risk Classification):
    • 見つかった問題を整理します。「これは致命傷(クリティカル)」「これは軽傷(ロー)」とランク付けし、優先順位をつけます。
  4. 最終報告(Final Reporting):
    • 全ての証拠をまとめて、誰にでもわかる「事件報告書」と、技術者向けの「修理マニュアル」を作成します。

4. なぜこれがすごいのか?(3 つのメリット)

この方法は、単に「バグを見つける」こと以上に、**「その結果を信じていいか」**を証明することに重点を置いています。

  1. 再現性(リプレイ可能):

    • 「なぜその結論になったのか?」が、記録簿を最初から読み返す(リプレイする)ことで、誰でも同じ結果が得られることを証明できます。
    • 例え: 「裁判の記録を最初から読み直せば、同じ判決が下されるはずだ」と言える状態です。
  2. 証拠の明確さ:

    • AI が「たぶんここが危ないかも」と曖昧に言うのではなく、「この行のコードが、このルールに違反している」と具体的な証拠を提示します。
  3. 改ざん不可能:

    • 一度記録された結果は、後から「実は大丈夫だった」と書き換えられません。これにより、「本当にチェックしたのか?」という疑念を消し去ります。

5. まとめ:AI の「直感」から「証拠」へ

この論文が伝えたい一番のメッセージは、**「AI にセキュリティチェックを任せるなら、その結果が『AI の気分』ではなく『厳格な証拠』に基づいていることを保証する仕組みが必要だ」**ということです。

  • 従来の方法: 「AI さん、チェックして!」→「はい、大丈夫そうです(でも証拠なし)」
  • ESAA-Security: 「AI さん、ルールに従って証拠を提出し、記録簿に確定させてください」→「はい、記録簿に『この部分に穴あり』と確定しました。後から誰が見ても同じ結果です」

これは、AI が作るコードが爆発的に増えている現代において、**「AI の作ったものを、人間が安心して使えるようにする」**ための、非常に重要な「信頼の基盤」を作る試みだと言えます。