製品・ソフトウェアに関する情報
vm2 projectのvm2における誤った領域へのリソースの漏えいに関する脆弱性
Title vm2 projectのvm2における誤った領域へのリソースの漏えいに関する脆弱性
Summary

vm2はNode.js向けのオープンソースの仮想マシンおよびサンドボックスです。バージョン3.11.3より前では、asyncジェネレーター内でyield*式を使用することによりホスト例外をキャッチできました。ジェネレーターがreturn関数で閉じられると、その値がawaitされ、then呼び出し内でスローされた例外はランタイムによってキャッチされ、yield*イテレーターに次の値として渡されます。この仕組みによって、攻撃者はVM2サンドボックスから脱出してホストシステム上で任意のコマンドを実行できるコードを記述できます。この脆弱性はバージョン3.11.3で修正されています。

Possible impacts 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date May 13, 2026, midnight
Registration Date May 18, 2026, 12:10 p.m.
Last Update May 18, 2026, 12:10 p.m.
CVSS3.0 : 緊急
Score 9.8
Vector CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected System
vm2 project
vm2 3.11.3 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
Change Log
No Changed Details Date of change
1 [2026年05月18日]
  掲載
May 18, 2026, 12:10 p.m.

NVD Vulnerability Information
CVE-2026-45411
Summary

vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.3, it is possible to catch a host exception using the yield* expression inside an async generator. When the generator is closed using the return function, the value is awaited on and exceptions thrown in the then call will be caught by the runtime and passed to the yield* iterator as the next value. This allows attackers to write code which can escape from the VM2 sandbox and execute arbitrary commands on the host system. This vulnerability is fixed in 3.11.3.

Publication Date May 14, 2026, 3:16 a.m.
Registration Date May 15, 2026, 4:22 a.m.
Last Update May 15, 2026, 3:19 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:* 3.11.3
Related information, measures and tools
Common Vulnerabilities List