Description (CNA)
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.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| patriksimek / vm2 | affected < 3.11.0 |
CWE
CWE-770
References
ADP enrichment
No English description supplied.
A flaw was found in vm2 (before 3.11.0). Sandboxed code can call Buffer.alloc() with arbitrary size to allocate on the host heap synchronously; vm2 timeout cannot interrupt the native C++ call, allowing a single request to exhaust host memory and crash the process. Fixed in 3.11.0.