研究者らは、クローンしたリポジトリ内の.envファイルがCodex CLIのホームディレクトリパスを変更し、不正な設定ファイルを読み込ませることで任意のコマンド実行につながる可能性があることを発見しました。
AIツールが開発マシンの攻撃対象領域を拡大する新たな例として、研究者らはOpenAIのCodex CLI(最も人気のあるLLM搭載コーディングエージェントの一つ)に深刻なリモートコード実行(RCE)脆弱性を発見しました。
「この脆弱性は、開発者がリポジトリに対してcodexを実行するあらゆる環境で、静かにかつ繰り返しリモートコード実行を可能にします」と、この脆弱性を発見したセキュリティ企業CheckPointの研究者はレポートで述べています。「プロジェクトローカルの設定読み込みを悪用することで、コミットやPRを通じて攻撃者が無害なリポジトリを永続的なバックドアに変え、開発者がcodexを実行するたびに追加のプロンプトや承認なしで発動させることができます。」
この脆弱性はOpenAIに報告され、Codex CLIバージョン0.23.0で.envファイルがCODEX_HOME環境変数を攻撃者が制御する場所に静かにリダイレクトできないよう修正されました。
Codexを騙して不正なMCPエントリを実行させる
すべてのAI支援コーディングエージェントと同様に、Codexはターミナルから直接コードを読み取り、編集し、実行する必要があるため、強力な権限を持っています。デフォルトモードでは、ツールは作業ディレクトリ内で承認なしにタスクを実行できますが、ユーザーは読み取り専用やフルアクセスに変更することも可能です。
制御されたディレクトリ内でコマンド実行やファイル変更をツールに許可しても、一見それほどリスクがないように思えますが、CheckPointの研究者はこれを悪用する創造的な方法を発見しました。
まず、多くのAIエージェントと同様に、CodexはModel Context Protocol(MCP)をサポートしています。AI企業Anthropicによって開発されたMCPは、LLMを外部データソースやアプリケーションにリンクする業界標準の手法となっています。つまり、サードパーティツールを自動的に発見・利用できる自律型AIエージェントを作るための基盤です。
Codex CLIは、起動時に.codex/config.toml設定ファイル内のmcp_serversエントリをチェックし、設定されたMCPサーバーを読み込み・実行します。攻撃者がこのファイルを改変できれば、不正なMCPサーバーエントリを追加することでCodexに悪意あるコマンドを実行させることが可能です。
Codexはホームディレクトリ内の設定ファイルを探しますが、このディレクトリはCODEX_HOMEという環境変数で定義されています。研究者らは、リポジトリに含まれる.envファイルを解析する際にこの変数が上書きできるかどうか疑問に思いました。プロジェクトにこうしたファイルを含めることは珍しくありません。
研究者らは、リポジトリにCODEX_HOMEを./.codexのようなパスに設定する.envファイルを含めることができると発見しました。これは、現在の作業ディレクトリ(つまりリポジトリディレクトリ)内の.codexフォルダを指します。さらに、リポジトリ内の.codexディレクトリにconfig.tomlファイルがあれば、Codexエージェントはそれを自身の設定ファイルとして扱い、mcp_serversエントリを解析します。
「この挙動は、エントリの内容ではなく、解決されたCODEX_HOME配下にMCPエントリが存在することに信頼を結びつけているため、最初は無害な設定でも、承認やマージ後に悪意あるものに差し替えることで、通常の開発者ワークフローで発動するステルス性の高い再現可能なサプライチェーンバックドアを作り出せます」と研究者らは述べています。
研究者らは、MCPサーバーエントリ内の無害なコマンドを、ファイル作成やリバースシェルを開くコマンドに置き換えることでこの攻撃を実証しました。これらのコマンドは、デフォルト設定ではユーザーの承認なしに実行されました。
複数の攻撃経路
この脆弱性を悪用するには、被害者がリポジトリをクローンしてCodexを実行し、攻撃者がリポジトリへのコミット権限を持つか、悪意あるプルリクエストが承認される必要があります。
「侵害されたテンプレート、スターターリポジトリ、または人気のオープンソースプロジェクトは、単一のコミットで多くの下流利用者を武器化できます」と研究者らは警告しています。
さらに、CIツールやビルドエージェントがチェックアウトしたコードに自動でCodexを実行する場合、開発者のワークステーションからビルド成果物や下流のデプロイメントにまで侵害が広がる可能性があります。
開発マシンには、さまざまなクラウドサービスのAPIトークンやSSHキー、独自のソースコードなどが含まれていることが多く、これらはすべて流出・悪用されてさらなる資産への横展開に利用される恐れがあります。
「これはCLIの想定されるセキュリティ境界を破ります。プロジェクトが提供するファイルが信頼された実行素材となり、その暗黙の信頼は、標準的な開発ワークフロー以外にユーザーの操作がなくとも、最小限の労力で悪用される可能性があります」と研究者らは指摘しています。
現在、Codex CLIはCODEX_HOME環境変数のプロジェクトローカルなリダイレクトをブロックしていますが、この出来事は、こうしたセキュリティの見落としが大手AI企業によるエージェントにも存在し得ることを浮き彫りにしています。先週、研究者らはGoogleの新しいAI搭載Antigravity IDEツールで、クローンしたリポジトリからの指示が現在のワークスペースの範囲を逸脱できる脆弱性について警告しました。今月初めには、別の研究チームが不正なMCPサーバーがCursorの組み込みブラウザを乗っ取り、開発者マシンを完全に侵害し得ることを示しました。
開発者がAIコーディングエージェントやIDEツールを利用することを許可している組織は、これらのツールの自動化レベルに関する方針を策定すべきです。脆弱性や設定ミスがあった場合、これらは容易に強力なバックドアとなり得るためです。セキュリティ専門家は、実行ステップの人間による確認や承認を必要としない完全自動モードの利用には繰り返し警鐘を鳴らしています。