Anthropicの AIコーディングアシスタント「Claude Code」に、ユーザーが設定したセーフティコントロールをサイレントに回避する重大なセキュリティ脆弱性が発見されました。これにより開発者はデータ盗難とコマンド実行攻撃の危険にさらされています。
攻撃者は50個以上の無害なサブコマンドでコマンドシーケンスをパディングすることで、システムにこれらの制限を完全に無視させることができます。
Claude Codeは、複合コマンドがハードコーディングされた50個のサブコマンドしきい値を超えると、拒否ルールの評価を停止する従来型のコマンドパーサーに依存しています。
過度に複雑な入力を拒否する代わりに、システムは一般的なユーザー承認プロンプトにフォールバックします。
CI/CDパイプラインなどの自動化環境では、このプロンプトはユーザーの介入なしに自動承認される可能性があり、事実上無制限の実行が可能になります。
この攻撃ベクトルは、一般的なソフトウェア開発慣行を利用しているため、特に懸念されます。
脅威行為者は、悪意のあるCLAUDE.md設定ファイルが組み込まれた一見正当なオープンソースリポジトリを公開できます。このファイルはAIアシスタントの信頼できる命令セットとして機能します。
これらの命令の中に、攻撃者は50個の無害なビルドステップのシーケンスに続いて、隠された悪意のあるペイロードを51番目のコマンドとして含めることができます。
開発者がリポジトリをクローンしてClaude Codeを使ってビルドを実行すると、AIは完全なコマンドチェーンを生成します。
パーサーの制限を超えるため、拒否ルールは決して実行されません。これにより隠されたペイロードの実行が可能になります。隠されたペイロードは、SSHキーなどの機密データ、APIトークン、またはクラウド認証情報を攻撃者が制御するインフラにサイレントに流出させることができます。
この脆弱性は、セキュリティ実装とパフォーマンス・コストのバランスを取るというAIシステム設計における、より広い問題を浮き彫りにしています。
すべてのサブコマンドをポリシー違反について評価するには、かなりの計算リソースが必要であり、トークン使用量が増加し、運用効率に直接影響します。
これらの制約を軽減するため、Anthropicはパフォーマンス低下とUIレイテンシーを防ぐために50コマンド制限を実装しました。ただし、この最適化は重大なセキュリティギャップをもたらしました。
注目すべきことに、コマンド長に関係なく拒否ルールを実行できるより堅牢なパーサーメカニズムは既に内部に存在していましたが、本番ビルドには展開されていませんでした。
この決定は、セキュリティが速度とコスト削減を優先して優先順位を下げられたトレードオフを強調しています。
更新プログラムが完全に採用されるまで、セキュリティ専門家はClaude Codeの拒否ルールを信頼できないものとして扱うことを推奨しています。
このインシデントは、パフォーマンスの最適化が意図せずに悪用可能なセキュリティギャップをもたらす可能性があるAI搭載開発ツールを取り巻く、進化するリスク状況を強調しています。
翻訳元: https://cyberpress.org/claude-code-flaw/