Googleは重大な脆弱性に対処するため、Gemini CLIと付属のGitHub Actionの緊急セキュリティアップデートをリリースしました。
GHSA-wpqr-6v78-jr5gとして追跡されているこの脆弱性は、継続的インテグレーション・継続的デプロイメント(CI/CD)パイプラインをリモートコード実行(RCE)攻撃にさらしています。
ワークスペーストラストとツール許可リストの不適切な処理により、悪意のある行為者が自動化されたワークフローを侵害することができ、重大なサプライチェーンセキュリティ上の懸念が生じています。
攻撃ベクトルの理解
この脆弱性はGemini CLI環境内の2つの異なるバイパスから生じています。GitHub Actionsのような自動化された非対話型環境にデプロイされた場合、このツールは以前は過度な権限でデータを処理していました。
Novee SecurityのセキュリティリサーチャーElad MegedおよびPillar SecurityのDan Lisichkinは2つの主要な悪用方法を特定しました:
- ヘッドレスモードでは、ワークスペースフォルダが自動的に信頼され、攻撃者は信頼されていないディレクトリの悪意のある環境変数を使用してコードを実行できます。
- Yolo実行モードは細かいツール許可リストを無視し、攻撃者は制限を回避し、プロンプトインジェクションを介してリモートコード実行を達成できます。
- 入力検証メカニズムの不適切な処理が特殊要素を中和できず、深刻なオペレーティングシステムコマンドインジェクション脆弱性を直接引き起こします。
この重大度の高い欠陥は、ソフトウェアサプライチェーンに重大なリスクをもたらします。自動化されたパイプラインは、ユーザーが提出したプルリクエストまたは公開GitHub issuesのトリアージを頻繁に行います。
ワークフローが適切なセーフガードなしに攻撃者の信頼されていないコードに対して脆弱なGemini CLIを実行した場合、システムは自動的に悪意のある設定ファイルをロードします。
この自動信頼動作は、権限のない行為者がビルドサーバー上で任意のコードを実行するための直接的なパスウェイを作成します。
侵害されると、攻撃者は機密リポジトリシークレットを盗む可能性があり、ソースコードを変更したり、組織のインフラストラクチャにより深く侵入したりできます。
この脆弱性は昇格された権限やユーザーの相互作用を必要としないため、ネットワーク上で高度に悪用可能です。
Googleは、Gemini CLIが自動化されたタスクを処理する方法を根本的に変更するパッチをリリースしました。
ヘッドレスモードは現在、対話型モードと一致し、環境変数または設定ファイルを処理する前に明示的な信頼設定が必要です。
これらのツールを使用する組織は、パイプラインを直ちに確認し、以下の修正を適用する必要があります:
- Gemini CLIのNPMパッケージをバージョン0.39.1または0.40.0-preview.3にアップグレードしてください。
- 付属のGitHub Actionをパッチ版0.1.22に更新してください。
- 信頼されている内部入力で実行されるワークフローのワークスペーストラスト環境変数を追加してください。
- 信頼されていない外部入力を処理するワークフローの厳密なツール許可リストを実装してください。
- コマンドラインインターフェースの古い脆弱なバージョンを指定する既存のすべてのGitHub Actionsを監査してください。
翻訳元: https://gbhackers.com/critical-gemini-cli-flaw/