製品・ソフトウェアに関する情報
vm2 projectのvm2における制限またはスロットリング無しのリソースの割り当てに関する脆弱性
Title vm2 projectのvm2における制限またはスロットリング無しのリソースの割り当てに関する脆弱性
Summary

vm2はNode.jsのためのオープンソースの仮想マシン/サンドボックスです。3.11.0より前のバージョンでは、サンドボックス内のコードが任意のサイズでBuffer.alloc()を呼び出し、ホストのヒープ上に直接メモリを割り当てることが可能でした。Buffer.allocは同期的なC++ネイティブ呼び出しであるため、vm2のtimeoutオプションではこれを中断できません。その結果、単一のリクエストでホストのメモリを使い果たし、プロセスが「FATAL ERROR: Reached heap limit」というエラーでクラッシュする恐れがあります。この脆弱性は3.11.0で修正されました。

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

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

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

NVD Vulnerability Information
CVE-2026-44004
Summary

vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, sandboxed code can call Buffer.alloc() with an arbitrary size to allocate memory directly on the host heap. Because Buffer.alloc is a synchronous C++ native call, vm2's timeout option cannot interrupt it. A single request can exhaust host memory and crash the process with a FATAL ERROR: Reached heap limit. This vulnerability is fixed in 3.11.0.

Publication Date May 14, 2026, 3:16 a.m.
Registration Date May 15, 2026, 4:21 a.m.
Last Update May 15, 2026, 12:22 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.0
Related information, measures and tools
Common Vulnerabilities List