つみかさね

CVE-2026-30887

Critical(9.9)

CVE-2026-30887 — OneUptime Synthetic Monitor サンドボックスエスケープ RCE

公開日: 2026-03-13データソース: NVD, GitHub Advisory

影響を受けるソフトウェア

製品ベンダー影響バージョン
OneUptimeOneUptime< 10.0.18
CVEOneUptimeRCEサンドボックスエスケープNode.js

概要

サービス 監視 プラットフォーム OneUptime の Synthetic Monitor 機能 に リモート コード 実行 脆弱性 が 発見 されました。ユーザー が 入力 した Playwright / JavaScript コード を Node.js の vm モジュール 内 で 実行 しますが、vm モジュール の サンドボックス は セキュリティ 境界 として 不十分 です。

標準的 な プロトタイプ チェーン エスケープ(this.constructor.constructor)を 使用 して サンドボックス を 突破 し、Node.js プロセス オブジェクト へ の アクセス を 取得、任意 の システム コマンド を 実行 できます。probe コンテナ の 環境変数 に DB / クラスタ 認証情報 が 含まれる ため、完全 な クラスタ 侵害 に つながります。

技術的 な 背景

Node.js の vm モジュール は コード の 分離 を 提供 しますが、公式 ドキュメント でも セキュリティ メカニズム として 使用 すべき でない と 明記 されています。this.constructor.constructor('return process')() の ような プロトタイプ チェーン エスケープ は 広く 知られた 手法 であり、vm を サンドボックス として 信頼 する 設計 は 根本的 に 安全 では ありません。

OneUptime の Synthetic Monitor は プロジェクト メンバー が Playwright / JavaScript コード を 投稿 して Web サイト の 動作 を テスト する 機能 です。この 信頼 できない ユーザー コード が vm 内 で 実行 される ため、低権限 の プロジェクト メンバー でも RCE を 達成 できます。

想定 される 影響

  • oneuptime-probe コンテナ 上 での 任意 の システム コマンド 実行
  • 環境 変数 に 含まれる データベース および クラスタ 認証 情報 の 漏洩
  • クラスタ 全体 の 侵害 に 発展 する 可能性
  • 同一 クラスタ 内 の 他 の サービス へ の 横展開

CVSS ベクトル

項目
CVSSスコア9.9 (Critical)
攻撃元区分ネットワーク
攻撃条件の複雑さ
必要な特権レベル低(プロジェクト メンバー)
ユーザ関与なし
CWECWE-94 (コード インジェクション)

影響 を 受ける ソフトウェア

製品ベンダー影響バージョン
OneUptimeOneUptime10.0.18 未満

修正 バージョン と 回避策

  • バージョン 10.0.18 以降 に アップデート して ください
  • 同種 の 脆弱性 として CVE-2026-30921(10.0.20 で 修正)、CVE-2026-30957(10.0.21 で 修正)も 報告 されて いる ため、10.0.21 以降 へ の アップデート を 推奨 します
  • Synthetic Monitor 機能 を 使用 していない 場合 は、機能 を 無効化 する こと も 検討 して ください

関連リンク


データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。

Xでシェアはてブ
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database, JVN iPedia (IPA/JPCERT/CC)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。