ゼロクリックRCE脆弱性、主要AIコーディングエージェント4製品を直撃 うち2製品は未修正

Claude Code、Codex、GitHub Copilot、そしてGemini CLIという主要なAIコーディングエージェント4製品はいずれも、同一のゼロクリックRCE脆弱性を抱えていることが、AIRの調査で明らかになりました。この脆弱性を悪用されると、攻撃者はエージェントを実行している従業員本人と同等の権限で、企業のシステムやデータにアクセスできてしまいます。

「これはAIエージェントのエコシステムにおける、初のサプライチェーン脆弱性です」と研究者は述べています。

「マーケットプレイスからプラグインをインストールする主要コーディングエージェントを利用している人は、誰でもこのリスクにさらされています。しかもこの脅威は、不用意にプラグインをインストールしたユーザーに限られません。被害者は、信頼できるマーケットプレイスからレビュー済みのプラグインを導入し、セキュリティモデルが意図した通りにバージョンを固定(pin)してさえいれば、それだけで標的になり得るのです」と研究者は付け加えています。

ピン留めバイパスの仕組み

Plugin4Shellと名付けられたこのバグは、開発者がインストール済みプラグインをレビュー済みの特定バージョンに固定するために利用する仕組み、SHAピン留めを突破してしまいます。本来ピン留めとは、一度レビューを通過したプラグインは開発者の知らないところで変更されない、ということを保証するはずのものです。

Image

このバグの核心的な仕組みを示す図(出典:AIR)

AIRの研究者たちは、4製品のエージェントすべてが、ピン留めされたコミットをチェックアウトする際、実際にそのコミットへ正しく到達したかどうかを検証していないことを発見しました。このため、ピン留めが一見無傷に見えていても、攻撃者は悪意あるコードにすり替えることができてしまいます。

研究者たちはこれを「プラグインSHAピン留めバイパス」と呼んでいます。Claude Code、Codex、GitHub Copilotの3製品は、gitがブランチ名を扱う仕組みに起因する同一系統の欠陥を共有しています。一方Gemini CLIは、ピン留めされたコミットを取得・チェックアウトする際の別の仕組みを通じて脆弱性が生じていますが、結果として起きることは同じです。

この欠陥が危険なのは、すでに正しい手順をすべて踏んでいたユーザーにまで被害が及ぶという点です。

「これはインストール時だけの問題ではなく、まさにそれがゼロクリックたる所以です。同じgitチェックアウトの処理は、バックグラウンドでの自動更新(Claude CodeとCodexではデフォルトの挙動)の際にも再実行されます。つまりマーケットプレイス側がピン留めされたSHAを更新すると、ユーザーが何も操作しなくても、すでにインストール済みのプラグインにまですり替えが波及してしまうのです」

「この手法が成立するのは、ブランチ名をハッシュのように名付けられる場合に限られます。これはgitのデフォルトの挙動ですが、一部のホスティングサービスはこれを禁止しています。たとえばGitHubは40桁の16進数のブランチ名を明確に拒否します。一方でBitbucketをはじめとする他のサービスや、セルフホスト型のgitサーバーではこれが許容されてしまいます」とAIRは記しています

攻撃者が侵入する2つの経路

1つ目の経路では、攻撃者はまず、謳い文句通りに正常に動作するプラグインを公開します。レビューを通過してユーザーに採用され、時間が経ってから初めて、攻撃者がそれを悪意あるものへと変貌させるのです。AIRは、以前の研究ですでにこの手法が実際に機能することを実証済みだとしています。同社が作成したプラグインは、削除されるまでに26,000を超えるエージェントに広まりました。

2つ目の経路では、攻撃者は他者がすでに作成し、ユーザーからすでに信頼を得ているプラグインのリポジトリを乗っ取り、同じバイパス手法を使って、そのプラグインをインストール済みの全ユーザーに悪意あるコードを配信します。AIRはこの種の乗っ取りについても、SkillJackingと呼ぶ別の研究で個別に実証しています。同研究では、すでに実運用で使われていた925個のスキルが、元の開発者から乗っ取られており、134,000のエージェントに影響が及んでいたことが判明しています。

「この2つを組み合わせれば、攻撃の連鎖は端から端まで実証済みということになります。乗っ取りは大規模に発生しており、Plugin4Shellはそれを封じ込めるはずだった仕組みそのものを打ち破ってしまうのです」

各ベンダーの対応にばらつき

AIRは2026年5月にこのバグを発見し、4製品すべてに対して動作するPoC(概念実証)エクスプロイトを作成した上で、翌月に各ベンダーへ開示しました。

この検証処理はマーケットプレイス側ではなくエージェント内部で実行されるため、マーケットプレイス単独では保護を保証できない、とAIRは指摘しています。研究者らによれば、このギャップを埋めるには各ベンダーがエージェント自体を修正する必要があり、修正版が存在する場合はアップデートが唯一の完全な対処法だとしています。

Anthropicは、AIRの開示を受けてバージョン2.1.179でClaude Codeを修正しました。OpenAIはバージョン0.146.0でCodexを修正しています。同じ欠陥について通知を受けたMicrosoftは、Copilotの修正版を未だ提供しておらず、ユーザーには修正パッチが提供されないままの状態が続いています。

Googleはこれとは全く逆の対応を取り、Gemini CLIを修正するのではなく、製品自体を非推奨としました。これは、既存のインストール環境がすべて無期限にリスクにさらされ続けることを意味します。Googleはこうしたユーザーに対し、この攻撃が悪用するプラグインピン留めの仕組みを持たずに構築された、同社の新しいエージェントAntigravityへの移行を推奨しています。

翻訳元: https://www.helpnetsecurity.com/2026/09/18/plugin4shell-ai-coding-agents-vulnerability/

本記事は helpnetsecurity.com の記事を翻訳・要約したものです。