Cohere AIのサンドボックス「Terrarium」CVE-2026-5752:JavaScriptプロトタイプチェーン走査でコンテナ内root権限奪取、パッチ未提供

この記事は約8分で読めます。

2026年4月21日、CERT/CC(Carnegie Mellon University Software Engineering Institute)がCohere AIのオープンソースサンドボックス実行基盤「Terrarium」に存在するサンドボックスエスケープ脆弱性 CVE-2026-5752 のアドバイザリ(VU#414811)を公開しました。CVSSスコアは9.3(Critical)で、攻撃者はサンドボックス内でJavaScriptのプロトタイプチェーンを走査することにより、ホストのNode.jsプロセス上でroot権限の任意コード実行が可能になります。

CERT/CCによれば、ベンダーであるCohereとの修正調整は成立しておらず、現時点でパッチは提供されていません。本記事では、CERT/CCアドバイザリとTerrariumの公開ソースコードに基づいて根本原因と影響範囲を整理し、AIサンドボックスのセキュリティ設計上の構造的な課題を実務視点から解説します。

脆弱性の基本情報

項目 内容
CVE CVE-2026-5752
CERT/CC VU#414811
CVSS 9.3(Critical)
影響製品 Terrarium(cohere-ai/cohere-terrarium)— LLMエージェント向けPythonサンドボックス実行基盤
脆弱性種別 サンドボックスエスケープ(JavaScriptプロトタイプチェーン走査)
影響 コンテナ内でのroot権限任意コード実行、機密ファイルアクセス、ネットワーク上の内部サービスへの到達、コンテナエスケープの可能性
パッチ 未提供(CERT/CCがベンダーとの修正調整に失敗)
ベンダー通知日 2026年2月19日
公開日 2026年4月21日
発見者 Jeremy Brown氏(AI支援脆弱性調査により発見)

Terrariumとは何か

Terrariumは、Cohereが開発・公開しているオープンソースのコード実行サンドボックスです。LLMエージェントが生成したPythonコードを安全に実行するための環境として設計されています。GitHubリポジトリ(cohere-ai/cohere-terrarium)で公開されており、内部的には以下の構成を取ります。

  • PythonコードはPyodide(CPythonをWebAssemblyにコンパイルしたもの)を通じて、Node.jsプロセス上で実行される
  • サンドボックスはファイルシステムへの直接アクセスを遮断し、ネットワークアクセスも設計上無効化されている
  • 呼び出しごとにPyodide環境全体がリサイクルされ、状態は持ち越されない
  • GCP Cloud Runコンテナとしてデプロイされることが想定されている

README上でCohereは「サンドボックスの完全性について保証を提供しない(Cohere does not give any guarantees for the sandbox integrity)」と明記しています。もっとも、TerrariumはLLMエージェント向けのコード実行基盤として公開されている以上、この免責が脆弱性の深刻さを打ち消すわけではありません。

根本原因:Object.prototypeからのエスケープ

CERT/CCのアドバイザリによると、根本原因は service.ts における jsglobals オブジェクトの構成にあります。公開ソースコード上では、Pyodide WebAssembly環境に公開されるモック document オブジェクトが標準的なJavaScriptオブジェクトリテラル({})で作成されており、Object.prototype のプロパティを継承しています。

この継承チェーンが存在するため、サンドボックス内のコードは以下のステップでエスケープが可能です。

  1. モック document オブジェクトのプロトタイプチェーンを上方に走査し、Function コンストラクタに到達する
  2. Function コンストラクタを使って globalThis を返す関数を生成する
  3. globalThis からNode.jsの内部API(require())にアクセスする
  4. require('child_process') 等を通じて、任意のシステムコマンドをroot権限で実行する

このエスケープパスは、JavaScriptサンドボックス設計における古典的な問題パターンです。ホストオブジェクトをサンドボックスに公開する際に、Object.create(null)(プロトタイプチェーンを持たないオブジェクト)を使用するか、プロトタイプチェーンの走査を明示的に遮断する必要がありますが、Terrariumの実装ではこの対策が欠落していました。

影響範囲

CERT/CCは、Terrariumをサンドボックス付きコード実行に使用しているアプリケーションが侵害される可能性があるとして、以下の影響を列挙しています。

  • コンテナ内でのroot権限コマンド実行
  • 機密ファイルへのアクセス・改ざん/etc/passwd、環境変数等
  • コンテナネットワーク上の他サービスへの到達:データベース、内部API等
  • コンテナエスケープとさらなる権限昇格の可能性

Terrariumは元々、LLMエージェントが生成したコードを「安全に」実行するための基盤として使用されます。つまり、LLMへの入力を攻撃者が制御できる構成では、プロンプトインジェクションを足掛かりに生成コードを通じてサンドボックスエスケープが誘発され、ホスト側リソースへのアクセスに至る攻撃パスが成立し得ます。

パッチ未提供:ベンダー調整の失敗

CERT/CCのアドバイザリには「残念ながら、ベンダーとパッチまたは修正の調整を行うことができませんでした(Unfortunately, we were unable to coordinate with the vendor to obtain a patch or fix for this vulnerability)」と明記されています。Cohereへの通知は2026年2月19日に行われていますが、2026年4月21日のアドバイザリ公開時点でベンダーステートメントは提供されておらず、ステータスは「Unknown」のままです。

つまり、2ヶ月以上の調整期間を経ても修正が提供されないまま公開に至っています。

暫定対策

CERT/CCはパッチが存在しない現状で、以下の暫定対策を推奨しています。

  • コード提出機能の無効化:可能であれば、ユーザーがサンドボックスにコードを送信できる機能を無効にする
  • ネットワークセグメンテーション:コンテナのネットワークを分離し、攻撃面と横展開の可能性を制限する
  • WAFの導入:脆弱性の悪用を試みる不審なトラフィックを検出・遮断する
  • コンテナアクティビティの監視:不審な挙動(予期しないプロセス起動、ファイルアクセス等)を検出する
  • アクセス制御の強化:コンテナとそのリソースへのアクセスを承認された担当者に限定する
  • 依存関係の定期更新:関連する依存関係を最新の状態に保つ

発見手法:AI支援脆弱性調査

CERT/CCのアドバイザリでは、本脆弱性がJeremy Brown氏によって「AI支援脆弱性調査(AI-assisted vulnerability research)」を用いて発見されたことが記載されています。AI向けサンドボックスの脆弱性が、AI支援の脆弱性調査によって発見されたという構図は、AIセキュリティ研究の現在地を示す興味深い事例です。

実務への含意:LLMコード実行サンドボックスの設計負債

TKC Tech Labでは本年、AIエージェント基盤の脆弱性を継続的に追跡してきました。OpenClaw(CVE-2026-33579、認可バイパス)、Flowise(CVE-2025-59528、RCE)、Marimo(CVE-2026-39987、Pre-Auth RCE)、nginx-ui(CVE-2026-33032、MCP認証欠落)はいずれも「AIエージェント実行基盤の脆弱性」でしたが、今回のTerrariumは「LLMエージェント向けコード実行サンドボックスそのもの」のエスケープです。

サンドボックスは、LLMが生成した信頼できないコードと、ホストインフラの間の最後の防御ラインです。その防御ラインが破られた場合の影響は、通常のWebアプリケーション脆弱性よりも広範です。LLMエージェントは多くの場合、データベース接続、APIキー、クラウド認証情報といった機密リソースにアクセスできる環境で動作するためです。

本件から得られる実務的な教訓は以下の通りです。

  • ホストオブジェクトのサンドボックス公開時にプロトタイプチェーンを遮断するObject.create(null) の使用、Proxy によるアクセス制御、またはプロトタイプフリーズが有効
  • コンテナをセキュリティ境界として過信しない:Dockerコンテナはホストカーネルを共有しており、コンテナエスケープのリスクは常に存在する。gVisorやFirecrackerのようなマイクロVM方式を検討する
  • サンドボックスの「保証なし」宣言は免責にならない:README上の免責事項に関わらず、実運用でLLMエージェント基盤に採用されているコンポーネントの脆弱性は実害をもたらしうる
  • プロンプトインジェクション → サンドボックスエスケープ → ホストアクセスという攻撃パスを想定する:LLMの入力を制御できる攻撃者が、生成されたコードを通じてサンドボックスを越える可能性を、脅威モデルに組み込む

ソース

一次ソース

  • CERT/CC VU#414811「Terrarium contains a vulnerability that allows arbitrary code execution」(2026-04-21公開)
  • CVE-2026-5752(CVSS 9.3)
  • GitHub: cohere-ai/cohere-terrarium(Terrarium公開リポジトリ)

参考情報

  • The Hacker News(2026-04-22)
  • TheHackerWire(2026-04-14)

コメント

タイトルとURLをコピーしました