Google Cloud Vertex AI の脆弱性 CVE-N/A:権限過多による機密データへの不正アクセス

Google Cloud’s Vertex AI Hit by Vulnerability Enabling Sensitive Data Access

2024/04/01 gbhackers — AI エージェントがエンタープライズ・ワークフローを変革しているが、それと同時に、新たな攻撃ベクターをもたらしている。Google Cloud Platform (GCP) の Vertex AI Agent Engine に存在する深刻な脆弱性が、Palo Alto Networks Unit 42 のセキュリティ研究者たちにより発見された。デフォルトで設定される過度に広範な権限を悪用する攻撃者たちは、悪意のダブルエージェント (二重スパイ) を展開することで、秘密裏に機密データを流出させ、重要なクラウドインフラの侵害を可能にする。

Vertex ダブルエージェント攻撃

この脆弱性の根本的な原因は、デプロイされた AI エージェントに関連付けられる、プロジェクト/製品単位のサービス・エージェント (P4SA) のデフォルト権限スコープにある。Palo Alto Networks の研究者たちが実証したのは、Google Cloud Agent Development Kit (ADK) を用いて悪意の AI エージェントを構築し、シリアライズされた Python の pickle ファイルとしてパッケージ化できることだ。

Malicious agent response, containing service agent credentials (Source: Palo Alto)
Malicious agent response, containing service agent credentials (Source: Palo Alto)

本質的に pickle オブジェクトの使用は危険であり、デシリアライズ時に任意のコード実行を引き起こすリスクがあることで知られている。

Reformatted output showing extracted information (Source: Palo Alto)
Reformatted output showing extracted information (Source: Palo Alto)

デプロイ後、この悪意のあるエージェントは Google の内部メタデータ・サービスにクエリを送信し、P4SA の認証情報 (クレデンシャル) を抽出する。こうして窃取された認証情報を悪用する攻撃者は、エージェントの隔離された環境から脱出し、高権限サービス・エージェントのアイデンティティでの動作を可能にする。 

Vertex AI Reasoning Engine Service Agent permissions (Source: Palo Alto)
Vertex AI Reasoning Engine Service Agent permissions (Source: Palo Alto)

侵害した認証情報を悪用する攻撃者は、GCP エコシステム内の複数の境界を横断して攻撃範囲を拡大できる。この権限昇格により、有用なはずの AI ツールが、深刻な内部脅威へと変質する。Palo Alto の調査では、以下の影響が確認された:

  • コンシューマ・プロジェクトでは、すべての Google Cloud Storage バケットに対する無制限の読み取りアクセスが可能となり、組織の機密データが露出する。 
  • プロデューサ環境では、Google 所有の Artifact Registry リポジトリへの制限付きアクセスが露出するため、プロプライエタリなソースコード/コンテナイメージの取得を、攻撃者に許してしまう。 
  • テナント・プロジェクトでは、内部 Dockerfile を含む機密性の高いデプロイメント・ファイルが公開されるため、Google の基盤インフラ構成が露呈してしまう。 
  • 過度に許可された OAuth 2.0 スコープにより、Google Workspace データに対する潜在的リスクが生じ、Gmail / Google Drive などの連携サービスにも影響が及ぶ可能性がある。
Vertex AI デプロイの保護

この脆弱性の責任ある開示を受け、Google は Unit 42 と連携し、サプライチェーンおよびインフラリスクへの対応を実施した。Google が確認したのは、強固な内部統制により、攻撃者による本番コンテナ・イメージの改変が不可能なことだ。その一方で同社は、Vertex AI のリソースおよびエージェントの利用方法に関する、公式ドキュメントを大幅に改訂した。 

この脅威に対処するために、ユーザー組織にとって必要なことは、デフォルトのサービス・エージェントの使用を中止し、厳格なアクセス制御を導入することだ。Google が強く推奨するのは、すべての Vertex AI デプロイにおいて、Bring Your Own Service Account (BYOSA) アーキテクチャを採用することである。

カスタムの専用サービス・アカウントを利用することで、最小権限の原則を適用し、AI エージェントに必要最小限の権限のみを付与できる。AI エージェントのデプロイを、他の本番コードと同様に扱い、展開前に厳格なセキュリティ・レビュー/検証済み権限境界/制限されたスコープを適用する必要がある。