4月7日現在の情報によると、セキュリティ研究機関Adversa AIは、以前に漏洩したClaude Codeのソースコードを深く検査した際に、開発者にとって恐ろしい致命的な深刻な脆弱性を発見しました。このツールが50を超えるサブコマンドを持つ複合コマンドを処理する際、ユーザーが設定したすべてのセキュリティフィルタールールを静かにバイパスしてしまうというものです。

脆弱性の再現:第51番目のコマンドが「見えない」悪意のあるコード

Claude Codeは、Anthropicが提供する最も急速に成長しているAIプログラミングアシスタントであり、開発者がコマンドラインを通じてコードベースを直接管理できるようにしています。敏感なデータの漏洩を防ぐために、システム内には権限チェック(例:curlやrmの実行を禁止)が組み込まれています。しかし、研究者は以下の点を発見しました。

  • 静かにバイパス: 攻撃者が&am;または;で50以上のサブコマンドを結合した一連のコマンドを送信すると、Claude Codeは以降のコマンドを個別に審査しなくなるのです。

  • 攻撃経路: 攻撃者は、悪意のあるCLAUDE.mdファイルを含むオープンソースリポジトリを作成し、開発者に実行させることで攻撃できます。AIは最初の50のコマンドを無害に生成し、第51番目ではSSHキーまたはAPIトークンを盗む指令を挿入する可能性があります。システムはそのまま許可してしまいます。

原因は「最適化」:UIの遅延を避けるためのセキュリティの低下

驚くべきことに、この脆弱性の原因は技術的な不備ではなく、ある「パフォーマンスの妥協」によるものです。

  • 内部チケット記録:Anthropicの内部番号CC-643のチケットには、超長の複合コマンドに対して逐条的なセキュリティ分析を行うとUIが遅くなることが記されています。

  • 仮定の破綻: 開発チームは通常のユーザーが50以上のサブコマンドを入力することはないと思っていたため、分析上限を50に設定し、それ以上は「ユーザーに尋ねる」モードに戻すことにしました。しかし、彼らはAIのプロンプトインジェクション攻撃がその人間の行動仮定を簡単に破る可能性を考慮していませんでした。

皮肉な現実:修正方法はすでに「ロック」されていた

Adversa AIのレポートによると、Anthropicは実際にtree-sitterを基盤とした新しい解析器を開発しており、コマンドの長さに関係なく安全規則を正しく検証できることを示しています。この成熟したコードはソースコードリポジトリにあり、テストも完了していましたが、何らかの理由により、実際の製品バージョンに適用されませんでした。

リスク評価:50万の開発者に影響、年間25億ドルの「セキュリティ網」が穴あきに

現在、この脆弱性は50万人以上の開発者に影響を与えています。Anthropicが生み出す年間經常収入が25億ドル(約1723億円)に達するこの主要製品において、権限システムの機能不全は企業のセキュリティチームが設けた最後の防衛線が崩れたことを意味します。

最新進展:公式に緊急修復が行われた

幸いにも、ソースコードの漏洩事件が引き起こしたこの「市民監査」の圧力の下、Anthropicは4月4日にClaude Code v2.1.90バージョンを公開しました。公式公告ではこの修正は「解析失敗時のロールバックによりdeny rulesが低下した」と説明されており、現在この脆弱性は正式に修正されています。

セキュリティの推奨:

研究チームは、広範な開発者に対し、AIツールが持つ拒否ルールを唯一のセキュリティ境界として過度に頼らないことを注意喚起しています。Claude Codeで未知のリポジトリを実行する前には、必ずCLAUDE.mdファイルを審査し、Shellアクセス権を最小限に制限しておく必要があります。