Gemini CLIのコンテナ起動処理の脆弱性CVE-2026-12537
- タグ
- 国外
CVE-2026-12537のCVEレコードでは、GoogleのGemini CLIとGitHub Actionのrun-gemini-cliで、ヘッドレスのCI基盤では権限の無い攻撃者が細工した.gemini/.envファイルにより、サンドボックスより前にホスト上のコード実行に至りうる[1]。The Hacker Newsは2026年8月7日、CISAのKEVカタログにこの脆弱性が無いことを確かめたと報じた[12]。
脆弱性の内容
| 項目 | 値 | 資料 |
|---|---|---|
| アドバイザリ | GHSA-wpqr-6v78-jr5g(CVEレコードの参照先) | [1] |
| CVSS(CNAのGoogle Cloud) | v4.0で10(CRITICAL) | [1] |
| CVSS(NVD) | v3.1で7.8(攻撃元区分はローカル、ユーザーの関与が必要) | [2] |
| CWE(CNAのGoogle Cloud) | CWE-20(不適切な入力確認)、攻撃パターンはCAPEC-88(OSコマンドインジェクション) | [1] |
| CWE(NVD) | CWE-78を主、CNAのCWE-20を副の分類とした | [2] |
| 報告者 | Novee Securityの研究者ほか1名 | [1] |
CVEレコードは、原因をコンテナ起動処理でのOSコマンドの無害化の不備とした[1]。
The Hacker Newsの4月30日の記事によると、Googleはアドバイザリで、以前の版のGemini CLIはCI環境(ヘッドレスモード)で、設定と環境変数を読み込むためにワークスペースのフォルダを自動で信頼していたと説明した[9]。信頼できないディレクトリの内容で使うと、ローカルの.gemini/ディレクトリの悪意ある環境変数から遠隔コード実行に至りうる[9]。影響が及ぶのは、ヘッドレスモードのGemini CLIを使うワークフローだけである[9]。
Novee Securityは脆弱性のページで、悪意のある.gemini/ディレクトリを含むプルリクエストをCIのパイプラインがGemini CLIで処理すると、攻撃者が環境変数を注入し、遠隔コード実行を果たしうると説明した[3]。
Pillar Securityの報告では、Googleのアドバイザリは、Pillar Securityが見つけたワークフローのプロンプトインジェクションと、Novee Securityの研究者が見つけたヘッドレス環境のフォルダの信頼の問題の2つを扱う[7]。The Hacker Newsは8月7日の記事で、アドバイザリ自体にはCVEの記載が無く、Google CloudがCNAとして別に番号を公開したと報じた[12]。
コンテナ起動処理と信頼の判定
Novee Securityの9月8日の報告では、ヘッドレスモードの判定はCI=trueかGITHUB_ACTIONS=trueで、その場合はワークスペースを信頼済みとして扱った[6]。信頼済みのときは、.gemini/.envが変数の許可リストを通らずにprocess.envへ読み込まれた[6]。送信を制限するプロキシ(GEMINI_SANDBOX_PROXY_COMMAND)を起動する処理は、値を文字列でつなぎ、シェルを通して実行していた[6]。主のサンドボックスの起動は、配列の引数を使い、シェルを通さない形だった[6]。
Novee Securityは、Dockerのサンドボックス、環境変数の消去、coreToolsの許可リストの3層の防御は、いずれもサンドボックスの中を守るものだったとした[6]。親プロセスの環境にあったGITHUB_TOKEN、GEMINI_API_KEY、利用できるOIDCの認証情報などの秘密情報は、消去の処理より前に露出した[6]。4月29日の報告では、ワークフローが届く秘密情報・認証情報・ソースコードに手が届き、トークンの窃取やサプライチェーンへの横展開に足りるとしていた[4]。
ツール許可リストの回避
Pillar Securityの5月5日の報告では、同社の研究者がGoogleのGeminiを使うGitHubのワークフローにCVSS 10の脆弱性を見つけ、TrustIssuesと名付けた[7]。gemini-cliで脆弱性を確かめ、同じワークフローが少なくとも8つの別のGoogleのリポジトリにもあったとした[7]。
Novee Securityは脆弱性のページで、以前の版の--yoloはsettings.jsonに定めた細かいツールの許可リストを無視し、プロンプトインジェクションでモデルに任意のシェルコマンドを実行させうる状態だったと説明した[3]。
Novee Securityの8月6日の報告では、google-gemini/gemini-cliは、誰かがIssueを開くと動くgemini-automated-issue-dedup.ymlで、yoloモードのrun-gemini-cliを本番で動かしていた[5]。子プロセスの環境変数は消されていたが、親プロセスの環境は/procから読めた[5]。Novee Securityは、Issue 1件からこのリポジトリのサプライチェーンの侵害に至る経路を示し、下流は月約200万インストールとした[5]。
時系列
| 日付 | 主体 | 内容 | 資料 |
|---|---|---|---|
| 2026年 | Pillar Security | GoogleのOSS脆弱性報奨金プログラムに、google/dracoでの概念実証を付けて報告した | [7] |
| 2026年 | 報告を受理し、製品チームに内部のバグを起票して、露出したIssueを削除した | [7] | |
| 2026年 | 緩和策として、複数のリポジトリで脆弱なワークフローを無効にした | [7] | |
| 2026年 | Pillar Security | gemini-cliに対するサプライチェーン侵害の概念実証を提出した | [7] |
| 2026年 | アドバイザリGHSA-wpqr-6v78-jr5gを公開し〔注1〕、修正版を示した | [7] | |
| 2026年 | Novee Security | 脆弱性の報告を公開した | [4] |
| 2026年 | Pillar Security | 研究の報告を公開した | [7] |
| 2026年 | Google Cloud | CVE-2026-12537を予約した | [1] |
| 2026年 | Google Cloud | CVE-2026-12537を公開した | [1] |
| 2026年 | NVD | CVE-2026-12537を登録した | [2] |
| 2026年 | NVD | 分析済みとして更新し、CVSS v3.1の評価を付けた | [2] |
| 2026年 | Novee Security | Black Hat USAで研究を発表した | [12] |
| 2026年 | Novee Security | 技術詳細の報告を公開した | [6] |
対象の製品と版
Gemini CLIは、Googleが2025年6月25日にプレビューで公開したオープンソース(Apache 2.0)のAIエージェントである[18]。GoogleはGemini CLI GitHub Actionsを8月6日にベータで公開し、Issueの振り分けとプルリクエストのレビューを担うとした[19]。
| 製品 | 影響を受ける版 | 修正版 | 資料 |
|---|---|---|---|
| Gemini CLI(@google/gemini-cli)の安定版 | 0.39.1より前 | 0.39.1 | [1、7] |
| Gemini CLIのプレビュー版 | 0.40.0-preview.3より前 | 0.40.0-preview.3 | [3、7] |
| run-gemini-cli(google-github-actions/run-gemini-cli) | 0.1.22より前 | 0.1.22 | [1、7] |
NVDの構成情報は、0.40.0のpreview2も脆弱な版に含めた[2]。Novee Securityは、修正版より前のGemini CLIのGitHub Actionはすべて影響を受けたとした[4]。Novee Securityが8月6日の報告で数えた同じパターンのリポジトリは、114だった[5]。
悪用の状況
CVEレコードに付いたCISAのADP(Vulnrichment)のSSVCでは、悪用(Exploitation)がnone、自動化可能(Automatable)がyes、技術的影響(Technical Impact)がtotalだった[1]。Daily CyberSecurityは6月29日の記事で、ベンダーは実際の悪用を確認しておらず、公開の概念実証コードも無いと報じた[11]。
The Hacker Newsの8月7日の記事は、確かめた資料に標的への悪用を示すものは無いと書いた[12]。
修正と回避策
CVEレコードによると、対策は最新版のGemini CLIを使い、run-gemini-cliのベストプラクティスの文書(trust-guidance.md)に従うことである[1]。
The Hacker Newsが引用したアドバイザリで、Googleは、フォルダの信頼なしにヘッドレスモードでGemini CLIを使う場合は、信頼の仕組みを設定するために手動の見直しが要るとした[9]。安定版の修正版ではポリシーエンジンが--yoloモードでもツールの許可リストを評価するため、この挙動に頼っていたワークフローは、許可リストを作業に合わせて直さないと黙って失敗しうる[9]。
- 信頼できる入力(信頼できる共同作業者のプルリクエストのレビューなど)で動くワークフローでは、信頼の環境変数を'true'に設定する〔注2〕[9]。
- 信頼できない入力で動くワークフローでは、google-github-actions/run-gemini-cliにあるGoogleの手引きでワークフローを強化してから、この環境変数を設定する[9]。
Novee Securityの技術詳細の報告では、Googleの修正で、ワークスペースの設定には明示的な信頼が要るようになり、CIでの自動の信頼は無くなった[6]。設定はチェックアウトしたワークスペースから引き継がず、Actionに意図して渡す形になり、生の環境変数で展開する回避経路も修正された[6]。Novee Securityはこの更新を、脆弱性のページで互換性を壊す変更と書いた[3]。
Pillar Securityは報告で、Googleがコマンドの無害化を足し、ベストプラクティスと例のワークフローも改めたと説明した[7]。
Gemini CLIの文書によると、信頼されていないフォルダでは、プロジェクトの.envファイルとワークスペースの設定(.gemini/settings.json)を読み込まない[16]。ヘッドレス環境では信頼の確認を表示できず、フォルダが信頼されていなければFatalUntrustedWorkspaceErrorで終了する[16]。回避するには、--skip-trustを付けて実行するか、信頼の環境変数を設定する[16]。
Daily CyberSecurityは4月28日の記事で、run-gemini-cliは通常、既定で最新版を実行すると報じた[8]。
未公表の事項
- Pillar Securityが報告したツール許可リストの回避に割り当てたCVEの有無
- Googleのリポジトリの秘密情報が第三者に渡ったかどうかについてのGoogleの説明
- CVEレコードに報告者として載ったもう1名の所属と報告の内容
注
出典
公的機関
- [1]The MITRE Corporation『CVE-2026-12537: Unauthenticated Remote Code Execution in Gemini CLI CI/CD Workflows』(2026年6月24日公開)
- [2]National Institute of Standards and Technology『CVE-2026-12537』(2026年6月24日公開、2026年7月2日更新)
調査・観測
- [3]Novee Security『CVE-2026-12537 - Update to Gemini CLI and run-gemini-cli Trust Model』(2026年4月28日公開、2026年8月26日更新)
- [4]Novee Security『A CVSS 10.0 in Gemini CLI: How Agentic Workflows Are Reshaping Supply Chain Risk』(2026年4月29日公開、2026年10月6日更新)
- [5]Novee Security『Black Hat 2026: If You Run These Automations, You're Exposed Too: Critical Flaws in Anthropic, Google, and OpenAI's Coding Agents』(2026年8月6日公開、2026年10月6日更新)
- [6]Novee Security『DefCon 2026: No Prompt Required: Pre-Task RCE in Google Gemini CLI』(2026年9月8日公開、2026年10月6日更新)
- [7]Pillar Security『My Agentic Trust Issues: From Prompt Injection to Supply-Chain Compromise on gemini-cli』(2026年5月5日公開)
報道機関
- [8]SecurityOnline.info『Patching the CVSS 10 RCE Hole in Gemini CLI』(2026年4月28日公開)
- [9]The Hacker News『Google Fixes CVSS 10 Gemini CLI CI RCE and Cursor Flaws Enable Code Execution』(2026年4月30日公開)
- [11]SecurityOnline.info『Gemini CLI Vulnerability Hits Maximum CVSS 10 Score』(2026年6月29日公開)
- [12]The Hacker News『Claude Code and Gemini CLI Flaws Let a GitHub Issue Reach CI Workflow Secrets』(2026年8月7日公開)
背景資料
- [16]Google LLC『Trusted Folders』(2026年4月23日公開)
- [18]Google LLC『Google announces Gemini CLI: your open-source AI agent』(2025年6月25日公開)
- [19]Google LLC『Meet your new AI coding teammate: Gemini CLI GitHub Actions』(2025年8月6日公開)
更新記録
- 2026年7月1日:公開した。
- 2026年7月2日:NVDの7月2日の更新(出典2)で付いたCVSS v3.1の評価とCWE-78の分類、構成情報を「脆弱性の内容」「時系列」「対象の製品と版」に加えた。
- 2026年8月6日:Novee Securityの8月6日の報告(出典5)が示したgemini-cliリポジトリのワークフローと同じパターンのリポジトリの数を「脆弱性の内容」「対象の製品と版」に加えた。
- 2026年8月7日:The Hacker Newsの8月7日の記事(出典12)が伝えたBlack Hat USAでの発表、アドバイザリとCVEの関係、KEVのカタログへの不掲載を「時系列」「脆弱性の内容」「悪用の状況」に加え、リードの最後の文を改めた。
- 2026年8月26日:Novee Securityの脆弱性のページの8月26日の更新(出典3)を「出典」に記した。
- 2026年9月8日:Novee Securityの9月8日の報告(出典6)が示した信頼の判定とプロキシの起動処理の仕組みを「脆弱性の内容」に、修正の内容を「修正と回避策」に加えた。
- 2026年10月6日:Novee Securityの報告3本(出典4、5、6)の10月6日の更新を「出典」に記した。
