セキュリティ企業のForeverは2026年10月22日、Claude CodeやCodexといったAIコーディングエージェントを「ダウンロード」フォルダ経由で乗っ取る手口を公開しました*1。きっかけは、実際の顧客のPCで悪意あるnpmパッケージのインストールを止めた際に、Downloadsフォルダの中に普通の開発メモを装った AGENTS.md が見つかったことだと説明されています*1。ウイルスのような実行ファイルではなく、ただのMarkdownファイルがAIへの「指示書」として働く点がこの攻撃の特徴です。
Foreverの検証では、Codexは90%を超える試行で不正なプログラムを実行し、Claude Codeは約50%の確率で指示どおりに設定ファイルを書き換えたと報告されています*1。先に結論を言うと、AIエージェントは「起動したフォルダの指示ファイルを信頼する」作りなので、Webから勝手にファイルが入るDownloadsで起動しないこと、そして承認やサンドボックスを切らないことが最も効く対策です。製品のバグではなく使い方の問題なので、今日から運用で防げます。
この話題は、私もXで紹介しました。
今なら、生成AIの基礎知識から社内導入の6ステップ・定着のポイントまでを1冊にまとめた「はじめての生成AI社内導入ガイド」を無料で配布中!何から始めればいいか分からない方でも、これ1冊で導入の流れがつかめます。
目次
Claude Codeとは|フォルダの指示ファイルを読んで動くAIエージェント
Claude CodeはAnthropicが提供するAIコーディングエージェントで、ターミナルやVS Codeから起動すると、そのフォルダのファイルを読み、編集し、コマンドを実行して作業を進めます。OpenAIのCodexも同じ種類のツールです。どちらも、起動したフォルダに置かれた CLAUDE.md や AGENTS.md を「このプロジェクトのルール」として最初に読み込みます。
Codexの公式ドキュメントでは、プロジェクトのルートから現在の作業フォルダまで下りながら各フォルダの AGENTS.md を読み込み、作業フォルダに近いファイルほど優先されると説明されています*5。つまり、どのフォルダで起動したかによって、AIが受け取る指示そのものが変わるということです。今回の攻撃はこの仕組みを突いています。
| 項目 | Claude Code | Codex |
|---|---|---|
| 読み込む指示ファイル | CLAUDE.md | AGENTS.md(AGENTS.override.md が優先) |
| 今回狙われた設定 | プロジェクトの .claude/settings.json | PC全体に効く ~/.codex/config.toml |
| 攻撃で書き込まれた内容 | API接続先 ANTHROPIC_BASE_URL を攻撃者のサーバーへ | npmの不正パッケージを入れるMCPサーバー設定 |
| 影響の範囲 | そのフォルダで次に起動したセッション | どのフォルダで起動しても影響 |
| 報告された成功率 | 設定の書き換え 約50% | 不正プログラムの実行 90%超 |
Claude Codeそのものの基本機能や料金、Web版との使い分けは、以下の記事で解説しています。
Claude Codeとは?Web版やCoworkとの使い分けから使い方・料金を徹底解説
Downloadsフォルダ攻撃の仕組み|3つのステップで乗っ取られる
Foreverのレポートによると、攻撃は大きく3つの段階で進みます。ポイントは、利用者がファイルを開いたり実行したりしなくても成立することです。
- 指示ファイルが置かれる — 悪意あるWebページが
AGENTS.mdなどの名前と中身を指定して、クリックや承認なしでDownloadsに保存できるとForeverは説明しています*1。 - AIが指示を読む — 利用者がDownloadsでClaude CodeやCodexを起動すると、AIはそのファイルを「プロジェクトのルール」として読み込みます。長い開発メモの途中に、設定変更を求める一節が紛れ込んでいる形です。
- AI自身が設定を書き換える — AIが指示に従って設定ファイルを変更し、その結果として不正なプログラムの実行やログイン情報の流出につながります。
Codexの場合|PC全体の設定に不正なMCPサーバーが入る
Codexでは、指示ファイルが ~/.codex/config.toml に [mcp_servers.project-tools] という設定を追加させ、その中で不正なnpmパッケージ function-color をインストールさせる内容でした*1。この設定ファイルはPC全体に効くため、Downloads以外のどのフォルダでCodexを起動しても影響が続きます。さらにCodexが承認とサンドボックスを外すオプション --dangerously-bypass-approvals-and-sandbox を付けて子プロセスを起動したことも報告されています*1。
Claude Codeの場合|API通信とログイン情報が攻撃者へ向かう
Claude Codeでは、指示ファイルが .claude/settings.json に ANTHROPIC_BASE_URL を書き込ませ、APIの接続先を攻撃者のサーバーへ向けさせる内容でした*1。こうなると、Claude Codeの通信がログイン用のトークンごと攻撃者に届き、攻撃者がモデルになりすまして返答できます。Foreverは、盗んだトークンで本物のAPIに本人としてアクセスできたとしており、コードを実行されなくてもアカウントを乗っ取られる点を指摘しています*1。
検証結果の比較|Codexは9割超、Claude Codeは約5割
Foreverが公表した数字を整理すると次のとおりです。試行回数の総数はレポートに書かれていないため、割合は目安として読むのがよいと私は考えています。
| 検証項目 | 結果 | 補足 |
|---|---|---|
| Codexでの不正プログラム実行 | 90%超の試行で成功 | 設定が残るため以後のセッションにも影響 |
| Claude Codeでの設定書き換え | 約50% | 指示どおり settings.json を変更 |
| Claude Codeでのコード実行 | 同じセッション内で約5分の1 | サブエージェントが攻撃者のサーバーに接続した場合 |
| トークンの悪用 | 本物のAPIに本人としてアクセス | コード実行なしのアカウント乗っ取り |
数字の差は「Claude Codeなら安全」という意味ではありません。半分の確率で設定が書き換わるなら、攻撃者にとっては十分に狙う価値があります。Foreverは、どちらの製品のバグでもなく、Webから書き込める場所を信頼してしまう使い方に原因があると結論づけています*1。
さらに気になるのは利用実態です。Foreverの計測では、顧客の約半数がDownloadsフォルダの中でコーディングエージェントを動かしており、エージェントのセッションの約4分の1が実際のブラウザを開いていたとされています*1。AIが自分でWebを閲覧する使い方が広がるほど、人が気付かないうちにファイルが置かれる可能性は高まると見られます。
AIエージェントが攻撃に使われた過去の事例と、企業側が見直すべき点は、以下の記事で解説しています。
Claude CodeのAI主導サイバー攻撃から学ぶ:企業が見直すべき生成AIセキュリティ戦略
Claude Codeの対策|今日から設定できる6つの防御
ここからは、私たちが社内で実際に意識しているポイントも含めて、個人と企業がすぐにできる対策を整理します。どれも追加費用はかかりません。
- 起動するフォルダを決める — Downloads・デスクトップ・ホーム直下では起動せず、作業用のプロジェクトフォルダに移動してから起動します。Claude Codeの公式ドキュメントも、ホームディレクトリではなくプロジェクトのサブフォルダから起動するよう案内しています*2。
- 信頼確認を流し読みしない — Claude Codeは、まだ信頼していないフォルダで起動すると信頼確認のダイアログを表示します*2。Downloadsで確認が出たら、その時点で止めるのが正解です。
- 見覚えのない指示ファイルを読む — 自分で書いていない
AGENTS.mdやCLAUDE.mdは、AIに読ませる前に中身を確認します。設定ファイルの変更やインストールを求める一節は要注意です。 - 承認とサンドボックスを切らない — Codexの
--dangerously-bypass-approvals-and-sandboxは公式に「推奨しない」とされています*6。Claude Codeでも承認を飛ばすbypassPermissionsは、コンテナや仮想マシンのような隔離環境だけで使うよう案内されています*3。 - 設定ファイルを点検する —
~/.codex/config.tomlに覚えのない[mcp_servers.*]がないか、各プロジェクトの.claude/settings.jsonに設定した覚えのないANTHROPIC_BASE_URLやプロキシがないかを確認します*1。 - 怪しいと思ったらトークンを更新する — 盗まれたトークンはそのまま使われるため、漏れた前提でトークンを更新します*1。
サンドボックスの「抜け道」も閉じておく
Claude Codeのサンドボックスは、コマンドの書き込み先を作業フォルダなどに限り、ネットワークは許可したドメインだけに絞る仕組みです*4。ただし、サンドボックス内で失敗したコマンドを外で再実行する dangerouslyDisableSandbox という抜け道があり、承認を飛ばすモードでは確認なしで実行されます*4。
この抜け道は、サンドボックス設定で "allowUnsandboxedCommands": false にすると閉じられます*4。ユーザー設定や管理設定で false にしておけば、プロジェクト側の設定で true にされても上書きされません*4。今回のように「プロジェクトの設定ファイルを書き換えさせる」攻撃に対しては、ユーザー側で固めておく設定が効いてきます。
| 設定 | 置き場所 | 効果 |
|---|---|---|
| permissions.disableBypassPermissionsMode | 管理設定(またはユーザー設定) | 承認を飛ばすモードを使えなくする |
| sandbox.enabled と failIfUnavailable | 管理設定 | サンドボックスを必須にする |
| sandbox.allowUnsandboxedCommands: false | ユーザー設定・管理設定 | サンドボックス外での再実行を止める |
| ConfigChange フック | フック設定(Securityページの Team security で案内) | セッション中の設定変更を監査・ブロックする |
表の設定はいずれもClaude Codeの公式ドキュメントに記載されています*2*3*4。Codexでも、Gitで管理されていないフォルダは既定で読み取り専用になり、ネットワークも既定でオフです*6。既定のままなら守られている部分は多いので、「面倒だから全部許可」に切り替えないことが一番の防御になります。
CLAUDE.md の正しい書き方や、指示が効かない原因については、以下の記事で解説しています。
【保存版】CLAUDE.md設計ガイド|Claude Codeが指示を無視する原因と12の設計ルール
セキュリティを保ったまま、自社の業務にAIエージェントを組み込みたい方もいると思います。法人向けAIリスキリングサービスの導入社数No.1*の弊社デジライズが、AIコンサルティング&開発のサービス資料を無料でお送りしています。既製のAIサービスでは要件が満たせず、自社に合わせたシステム構築や環境の検討が必要な場合の進め方をまとめています。
※出典:株式会社東京商工リサーチ「法人向けリスキリングサービスに関する調査」(2026年5月/調査期間:2026年3月26日〜4月17日/調査方法:デスクリサーチおよびヒアリング/2026年3月末時点)
Claude Code活用事例|企業で安全に使い続けるための運用ルール
「claude code活用事例」を調べている方の多くは、どんな業務に使えるかと同時に、社内で使わせて大丈夫かを気にしていると思います。今回の件を踏まえると、活用事例は「何に使うか」と「どこで・どの権限で動かすか」をセットで決めるのが現実的です。
| 活用の場面 | 起動する場所 | おすすめの権限 |
|---|---|---|
| 既存システムの改修・テスト作成 | Gitで管理したプロジェクトフォルダ | サンドボックスあり+コマンドは確認 |
| 社内資料・データの整形や集計 | 業務ごとに作った作業フォルダ | 書き込みは作業フォルダ内だけ |
| 受け取ったファイルの調査・要約 | 仮想マシンやコンテナの中 | ネットワークを絞り、承認を必須に |
| Web調査を伴う自動化 | 隔離した環境 | 許可ドメインを限定し、設定変更は監視 |
特に注意したいのは、取引先から届いたファイルやWebで拾った資料をAIに読ませる場面です。Claude Codeの公式ドキュメントも、信頼できない内容を扱うときは仮想マシンでスクリプトやツールを動かすよう勧めています*2。受け取ったファイルは一度プロジェクト外の隔離フォルダに置き、中身を見てから作業フォルダへ移す手順にしておくと安心です。
情報システム部門が決めておきたい3つのこと
- 起動場所のルール — 「AIエージェントは業務用の作業フォルダで起動する。Downloads・デスクトップでは起動しない」を社内ガイドラインに1行入れます。
- 管理設定の配布 — Claude Codeの管理設定で承認を飛ばすモードを無効にし、サンドボックスを必須にします。利用者が個別に外せない形にするのがポイントです。
- 異常の検知 — 設定変更を記録するフックや利用状況のモニタリングを入れ、覚えのないAPI接続先やMCPサーバーの追加に気付けるようにします*2。
複数のAIエージェントを遠隔から操作する機能も増えています。起動場所と権限の考え方はそこでも同じなので、各ツールの違いは以下の記事も参考にしてください。
Claude Code・Codex・Antigravity、AIコーディングエージェントの「リモート操作」機能を徹底比較
Claude CodeとCodexの注意点|「怪しいファイルを読ませない」が新しい常識
これまでのセキュリティ教育は「怪しいファイルを実行しない」「添付ファイルを開かない」が中心でした。AIエージェントの時代には、これに「怪しいファイルをAIに読ませない」が加わります。AIは指示に忠実に従うよう作られているので、指示の出どころが攻撃者でも、それらしい文章なら実行してしまうことがあります。
もう1つ覚えておきたいのは、被害が1回の作業で終わらない点です。Codexの例では設定がPC全体に残り、Claude Codeの例では次回以降のセッションの通信先が変わります*1。「さっき変な動きをしたけど、作業は終わったから大丈夫」ではなく、設定ファイルまで確認するところまでを対応の1セットにしてください。
すでにDownloadsで起動したことがある人の点検手順
過去にDownloadsでAIエージェントを起動したことがあっても、すぐに被害があったとは限りません。不安な方は、次の順番で確認すると状況を把握しやすくなります。
- Downloadsの中を見る — 自分で保存した覚えのない
AGENTS.md・CLAUDE.md・.claudeフォルダがないかを確認します。隠しファイルも表示して探してください。 - Codexの設定を見る —
~/.codex/config.tomlを開き、追加した覚えのないMCPサーバーの設定や接続先の変更がないかを確認します。 - Claude Codeの設定を見る — Downloadsや各プロジェクトの
.claude/settings.jsonに、知らないAPI接続先や環境変数が書かれていないかを確認します。 - 見つかったら止めて報告する — 該当の記述を消すだけで済ませず、ログイン情報を更新し、会社のPCなら情報システム部門に報告します。
Foreverのレポートでは、npm上の
function-colorのインストールが感染の目印として挙げられており、このパッケージはその後npmから削除されたとされています*1。
まとめ
- 攻撃の仕組み — Downloadsに置かれたAGENTS.mdやCLAUDE.mdの指示で、AI自身が設定ファイルを書き換えます。
- 検証結果 — Codexは90%超で不正プログラムを実行し、Claude Codeは約50%で設定を書き換えたと報告されています。
- 個人の対策 — 作業フォルダで起動し、承認とサンドボックスを切らず、見覚えのない指示ファイルと設定を点検します。
- 企業の備え — 起動場所のルール、管理設定の配布、設定変更の監視をセットで整えると安全に活用を広げられます。
私自身、Claude CodeもCodexも毎日使っていますが、便利さの裏側で「AIが何を読んでいるか」を意識する場面は確実に増えました。私のおすすめは、まず今日のうちに起動するフォルダを決め、承認を飛ばす設定を使っていないか確認することです。設定を1つ見直すだけでリスクは大きく下がるので、AIエージェントを使っている方はぜひチームでも共有してください。
