30秒で判断
- 対応すべき人:
vm2(npm)で信頼できないコードを隔離実行しているアプリ・サービスの運用者(3.11.3 未満) - 対応不要な人: vm2 を使用していない / すでに 3.11.3 以降を使用中 / vm2 に信頼済みコードしか渡していない
- 確認方法:
npm ls vm2で依存ツリー内のバージョンを確認し、3.11.3 未満なら対象
概要
vm2 は Node.js 用のサンドボックスライブラリです。本脆弱性(CVE-2026-45411)は、非同期ジェネレータ内の yield* 式を使ってホスト側の例外を捕捉できてしまう点に起因します。ジェネレータが return で閉じられる際に値が await され、then 呼び出しで投げられた例外がランタイムに捕捉されて yield* のイテレータに次の値として渡されます。
この挙動を悪用すると、サンドボックスの外へ脱出してホストシステム上で任意コマンドを実行できます。深刻度は CVSS 9.8 と評価されており、vm2 の一連の脱出系脆弱性のうち最新の修正(3.11.3)で解消されています。
CVSSベクトル
| 指標 | 値 |
|---|---|
| CVSSスコア | 9.8 |
| 深刻度 | Critical |
| CWE | CWE-668(不正な領域へのリソース公開) / CWE-237(不適切な入れ子構造の扱い) |
| 攻撃元区分 | ネットワーク |
| 攻撃条件の複雑さ | 低 |
| 想定される影響 | 機密性・完全性・可用性の広範な侵害(ホスト側RCE) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| vm2 | patriksimek (npm) | < 3.11.3 |
修正バージョンと回避策
vm23.11.3 以降へアップデートしてください。- 信頼できないコードの実行では、
isolated-vmやコンテナ・別プロセスなどプロセス/VMレベルの隔離の併用を検討してください。 npm ls vm2で推移的依存を含む依存ツリー全体を確認してください。
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
