8月27日、Ars Technicaが「Claude, Codex, and Hermes installed unowned code inside corporate networks」と題した記事を公開した。AIコーディングエージェントが企業ネットワーク内に無承認のコードを自動インストールしたセキュリティ事例について詳しく報告している。
Fortune 500企業から1時間以内に「生存確認」のビーコンが届いた、というこの実験の結果は、AIエージェントを業務に導入している組織にとって見過ごせない警告だ。
llms.txtという新興規格が攻撃ベクターになった
近年、WebサイトがAI向けにllms.txtおよびllms-full.txtというファイルを公開する慣習が広がっている。SEOにおけるrobots.txtのAI版とも言える存在で、サイトのコンテンツ構造や概要を機械可読な形式で提供するものだ。AIエージェントがコードを書く際の参照元として定着しつつあり、Google Lighthouseもこの規格の監査をサポートしている。
組織名を非公開にしているイスラエルのスタートアップに所属する研究者たちは、防衛関連企業・Fortune 500企業・Big Tech企業が保有する6,214のライブドメインをスキャンした。発見した8,265件のllms.txt/llms-full.txtファイルのうち、120件が、すでに登録が失効しているか誰も取得していないコードパッケージやドメイン名を参照していた。
「電話が鳴るまで1時間もかからなかった」
研究者たちはその未登録ドメインやパッケージ名を自分たちで取得し、実行されると自分たちのサーバーに「生存確認(phone-home)」シグナルを送るProof-of-Conceptコードをホストした。
結果は明快だった。1時間以内にFortune 500企業の1社からビーコンが届いた。 その後も数十社から反応があり、複数のFortune 500企業が含まれていた。
さらに重要なのは、ビーコンに記録されていた親プロセスのチェーンだ。OSはプログラムを起動する際に「どのプロセスが自分を呼び出したか」を記録しており、この情報を辿ることでコードをインストールした主体を特定できる。今回の解析により、インストールを行ったのは人間ではなく、AIコーディングエージェントであることが判明した。関与が確認されたのは以下の3つだ:
- Claude(Anthropic)
- Codex(OpenAI)
- **Hermes**(Nous Researchが開発するLLMベースのエージェント。Nous Researchはオープンソース指向のAI研究機関)
AnthropicとOpenAI、Nous Researchはいずれも記事公開時点でコメントに応じていない。
「トラストモデルが壊れている」
研究者の一人であるAlon Hertz氏は、この問題の本質をこう表現している:
「トラストモデルが壊れている。エージェントはベンダーのドキュメントを無条件に正しいものとして扱い、疑問を持たない。それを監督している人間も同様だ。AIエージェントの利用は爆発的に増加しており、SaaS・クラウド・エンドポイントのあらゆる層に広がっている。エージェントが増えれば、サプライチェーンの攻撃面も広がる。今のガードはそこをカバーしていない。」
今回の手口はAIエージェントを経路とするサプライチェーン攻撃の一形態だ。2021年にAlex Birsan氏が実証した「dependency confusion」攻撃(パッケージ名前空間を乗っ取り、組織の内部ビルドシステムに悪意あるコードを紛れ込ませる手法)と構造は似ているが、今回はAIエージェントが自律的にドキュメントを読み込んでコードを実行するという、これまでになかった経路を悪用している点が異なる。
また、少なくとも1件の設定ミスのあるサイトでは、AIエージェントだけでなく人間のブラウザ訪問者をも実際のマルウェアに誘導していた状態だったと報告されている。
エンジニアが今すぐ確認すべきこと
この事例が示す攻撃シナリオはシンプルだ。
- サイト管理者が
llms.txtにコードパッケージや外部ドメインを記載する - そのパッケージやドメインが失効・未登録になる
- 攻撃者がその名前を取得し、悪意あるコードをホストする
- AIエージェントがドキュメントを読み込み、指示通りにコードを実行する
- 企業ネットワーク内にコードがインストールされる
対策として求められるのは主に2点だ。まず、自社のllms.txtやllms-full.txtで参照しているドメイン・パッケージ名が今も有効かどうかを定期的に確認する運用を整えること。次に、AIエージェントに与える権限の範囲と、エージェントが実行できる操作の審査プロセスを見直すことだ。AIエージェントの「自律性」は生産性向上の源泉でもあるが、その自律性がドキュメントを無批判に信頼する形で発揮されるとき、それはそのまま攻撃面になる。この問題はツールの設定だけでなく、AIエージェントを組み込んだ開発フロー全体のセキュリティ設計として捉える必要がある。
詳細はClaude, Codex, and Hermes installed unowned code inside corporate networksを参照していただきたい。