Node.js ships a built-in vm module that lets you compile and run JavaScript inside a separate V8 context — and for over a decade, teams have reached for it to run plugin code, user-submitted scripts, CI/CD tasks, and third-party config files "safely." The problem: Node's own documentation states plainly that vm "is not a security mechanism" and "should not be used to run untrusted code." Developers ignore that warning constantly, and the consequences have been severe. The most popular userland wrapper built on top of vm, the vm2 package, was hit with at least four critical sandbox-escape CVEs between August 2022 and August 2023 — including one scoring a perfect CVSS 10.0 — before its maintainers deprecated the project outright in September 2023. This post breaks down why vm-based isolation fails, how attackers actually escape it, and what to run instead if your product executes code you don't control.
Security concerns of using the Node.js VM module as a sandbox
Node's vm module and vm2 were never a security boundary. Four critical CVEs and a 2023 deprecation prove why untrusted-code sandboxes need real isolation.
More on #nodejs-security
View allObject Injection Vulnerabilities in PHP and Node.js
Path Traversal Prevention in JavaScript/Node.js with path...
Insecure Deserialization Prevention in JavaScript: Avoidi...
CVE-2018-3728: Prototype pollution in hoek
Related articles in Application Security
How do we handle a flood of AI-generated vulnerability reports?
Require a working reproducer, check shipped versions and reachability first, handle low severity in public, and turn valid reports into tested fixes.
Can an AI Model Do a Real Security Review of My Code?
Yes, for part of the job. AI review finds real bugs, but trust only findings with a proof and fixes with a fail before, pass after test. Here is how.
WAF vs API gateway: what each does and when you need both
A WAF inspects HTTP traffic for known attack patterns. An API gateway manages access, routing and limits. Learn what each covers and where both fall short.
Never miss an update
Weekly insights on software supply chain security, delivered to your inbox.
Self-healing security runs on Safeguard.
Your first fix PR is minutes away.
No sales call required, even your agent can complete the purchase over MCP.