10月30日、pbxscience.comが「Malicious AGENTS.md in Downloads Folder Used to Hijack AI Coding Agents, Security Firm Warns」と題した記事を公開した。AIコーディングエージェントが悪意ある指示ファイルを「設計通りに」読み込み、攻撃者の命令を実行してしまう——これはソフトウェアのバグではなく、エージェントが正しく動作しているがゆえに生じる問題だ。攻撃者がDownloadsフォルダにAGENTS.mdを1ファイル仕込むだけで、OpenAI CodexやAnthropic Claude Codeといった主要エージェントを乗っ取れることが実際の顧客環境で確認された。
本質はバグではなく「設計の問題」
あるセキュリティ企業(記事中では社名が明示されていない)は、この問題を「特定のバグではなく設計上の問題」と位置づけている。AGENTS.mdは、コーディングエージェントにプロジェクトのルールや手順を伝えるためのプレーンテキストファイルだ。エージェントはこのファイルを読み込み、内容に従うよう設計されている。攻撃が成立するのはまさにその仕組みが理由であり、研究者たちは「フォルダ内のAGENTS.mdに従うエージェントは、設計通りに動作しているに過ぎない」と指摘している。
この構造は、近年セキュリティ研究者の間で広く議論されているプロンプトインジェクションの一形態とも見なせる。プロンプトインジェクションとは、LLM(大規模言語モデル)に対して悪意ある指示を外部から注入し、意図しない動作を引き起こす攻撃手法の総称だ。従来のプロンプトインジェクションはチャットUIや外部Webページの内容を経由するケースが多かったが、今回の手法はローカルファイルシステム上の「信頼された設定ファイル」を攻撃ベクターとして利用する点が新しい。OWASP LLM Top 10でも、プロンプトインジェクションはLLMアプリケーションにおける最重要リスクの一つとして挙げられている。
エージェントは指示ファイルに従い、Downloadsフォルダはウェブが書き込めるフォルダだ——この2つが組み合わさることで攻撃が成立する。
実際に何が起きたか
同セキュリティ企業は、顧客のマシン上でAIコーディングエージェントが既知の悪意あるnpmパッケージをインストールしようとする挙動を検知・ブロックした。調査の結果、この動作の原因は顧客の~/Downloadsフォルダ内に存在していたAGENTS.mdというファイルに行き着いた。このフォルダはちょうどエージェントの作業ディレクトリでもあった。調査結果が公開されたのは2026年10月22日で、実際の顧客マシン上でこの攻撃が発生していたことが発端だ。
なぜDownloadsフォルダが狙われるのか
この攻撃においてDownloadsフォルダが鍵を握る理由は2つある。
- Webページが自動的に書き込める唯一のフォルダである。Webページは
AGENTS.mdという名前のファイルをユーザーの操作なしにDownloadsフォルダへ静かにダウンロードできる。 - 実際に多くのユーザーがそこでエージェントを動かしている。研究者のGal Weizman氏はBleepingComputerに対し、ファイルを整理したり直前にダウンロードしたものを処理するためにDownloadsフォルダでエージェントを実行するケースは珍しくないと語った。同社の内部統計によれば、Claude Code、OpenAI Codex、Cursor CLIをDownloadsフォルダから起動している顧客は数百人に上るという。
検証実験:成功率90%超
研究チームは隔離された仮想マシン上でOpenAI Codexに対してこの攻撃を再現した。報告書によると、Codexはテスト試行の90%超でマルウェアを実行した。
Claude Codeに対しては、悪意あるCLAUDE.mdファイルを使った関連実験も行った。このテストではClaude CodeのAPIトラフィックを研究者が管理するサーバーへリダイレクトさせることに成功し、OAuthログイントークンのキャプチャと再利用によってアカウント乗っ取りを実現している。
なお、Claude Codeの実験ではCLAUDE.mdを使用しており、すべてのClaude CodeインストールがあらゆるAGENTS.mdを読み込むわけではない。指示ファイルの探索はバージョンや設定に依存する。また攻撃が成立するにはエージェントがファイルを読んで実行に移す必要があり、ファイルがディスク上に存在するだけで自動的に侵害されるわけではない。
今すぐできる対策
- Downloadsフォルダやホームディレクトリ直下でAIコーディングエージェントを起動しない。専用のプロジェクトフォルダを使う。
- エージェントが読み込む前に、見覚えのない
AGENTS.mdやCLAUDE.mdを確認し、自分で作成したものでなければ削除する。 - エージェントがコマンド実行・設定変更・パッケージインストールを行う前に承認プロンプトを必須にする設定を維持する。Claude Codeの設定ドキュメントやOpenAI Codexのドキュメントで、各ツールの権限設定を確認することを推奨する。
- 各ツールが提供するサンドボックスや権限制御を活用し、エージェントがアクセスできる範囲を制限する。また、自分のインストール環境がどの設定ファイルや指示ファイルを読み込むかを確認する。
詳細はMalicious AGENTS.md in Downloads Folder Used to Hijack AI Coding Agents, Security Firm Warnsを参照していただきたい。