Version 3.9.19
vm2
Advanced vm/sandbox for Node.js
Install Instructions
npm install vm2
Current Version Release Date May 16, 2023
Language JavaScript/TypeScript
Package URL (purl) pkg:npm/vm2@3.9.19
Find vm2
vulnerabilities in your supply chain.
vm2 Vulnerabilities
Sort by
CVE (Latest)
CVE | CVSS Score | CWE(s) | EPSS Score | EPSS % | Impacted Versions |
---|---|---|---|---|---|
CVE-2022-25893 | High 9.8 | CWE-94 | 0.00485 | 0.76516 |
|
CVE-2022-36067 | High 10 | CWE-913 | 0.04694 | 0.92872 |
|
CVE-2023-29017 | High 9.8 | CWE-913 | 0.01939 | 0.89044 |
|
CVE-2023-29199 | High 10 | CWE-913 | 0.01845 | 0.88693 |
|
CVE-2023-30547 | High 10 | CWE-74 | 0.00236 | 0.62179 |
|
CVE-2023-32313 | Medium 5.3 | CWE-74 | 0.00115 | 0.46183 |
|
CVE-2023-32314 | High 10 | CWE-74 | 0.01596 | 0.87782 |
|
CVE-2023-37466 | High 10 | CWE-94 | 0.01185 | 0.8559 |
|
CVE-2023-37903 | High 10 | CWE-78 | 0.00545 | 0.77891 |
|
CVE-2019-10761 | High 8.3 | CWE-265, CWE-674 | 0.00214 | 0.59934 |
|
CVE-2021-23449 | High 10 | CWE-915 | 0.00797 | 0.82118 |
|
CVE-2021-23555 | High 9.8 | 0.00253 | 0.65648 |
|
vm2 Vulnerability Remediation Guidance
CVE | Description | Full list of Impacted Versions | Fix |
---|---|---|---|
CVE-2023-37903 | vm2 is an open source vm/sandbox for Node.js. In vm2 for versions up to and including 3.9.19, Node.js custom inspect function allows attackers to escape the sandbox and run arbitrary code. This may result in Remote Code Execution, assuming the attacker has arbitrary code execution primitive inside the context of vm2 sandbox. There are no patches and no known workarounds. Users are advised to find an alternative software. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-37466 | vm2 is an advanced vm/sandbox for Node.js. The library contains critical security issues and should not be used for production. The maintenance of the project has been discontinued. In vm2 for versions up to 3.9.19, `Promise` handler sanitization can be bypassed with the `@@species` accessor property allowing attackers to escape the sandbox and run arbitrary code, potentially allowing remote code execution inside the context of vm2 sandbox. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-32314 | vm2 is a sandbox that can run untrusted code with Node's built-in modules. A sandbox escape vulnerability exists in vm2 for versions up to and including 3.9.17. It abuses an unexpected creation of a host object based on the specification of `Proxy`. As a result a threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. This vulnerability was patched in the release of version `3.9.18` of `vm2`. Users are advised to upgrade. There are no known workarounds for this vulnerability. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-32313 | vm2 is a sandbox that can run untrusted code with Node's built-in modules. In versions 3.9.17 and lower of vm2 it was possible to get a read-write reference to the node `inspect` method and edit options for `console.log`. As a result a threat actor can edit options for the `console.log` command. This vulnerability was patched in the release of version `3.9.18` of `vm2`. Users are advised to upgrade. Users unable to upgrade may make the `inspect` method readonly with `vm.readonly(inspect)` after creating a vm. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-30547 | vm2 is a sandbox that can run untrusted code with whitelisted Node's built-in modules. There exists a vulnerability in exception sanitization of vm2 for versions up to 3.9.16, allowing attackers to raise an unsanitized host exception inside `handleException()` which can be used to escape the sandbox and run arbitrary code in host context. This vulnerability was patched in the release of version `3.9.17` of `vm2`. There are no known workarounds for this vulnerability. Users are advised to upgrade. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-29199 | There exists a vulnerability in source code transformer (exception sanitization logic) of vm2 for versions up to 3.9.15, allowing attackers to bypass `handleException()` and leak unsanitized host exceptions which can be used to escape the sandbox and run arbitrary code in host context. A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. This vulnerability was patched in the release of version `3.9.16` of `vm2`. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2023-29017 | vm2 is a sandbox that can run untrusted code with whitelisted Node's built-in modules. Prior to version 3.9.15, vm2 was not properly handling host objects passed to `Error.prepareStackTrace` in case of unhandled async errors. A threat actor could bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. This vulnerability was patched in the release of version 3.9.15 of vm2. There are no known workarounds. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.9.11, 3.9.13, 3.9.14 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2022-36067 | vm2 is a sandbox that can run untrusted code with whitelisted Node's built-in modules. In versions prior to version 3.9.11, a threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. This vulnerability was patched in the release of version 3.9.11 of vm2. There are no known workarounds. | 3.9.7, 3.9.8, 3.9.10, 3.9.6, 3.9.9, 3.6.1, 3.4.3, 3.9.3 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2022-25893 | The package vm2 before 3.9.10 are vulnerable to Arbitrary Code Execution due to the usage of prototype lookup for the WeakMap.prototype.set method. Exploiting this vulnerability leads to access to a host object and a sandbox compromise. | 3.9.7, 3.9.8, 3.9.6, 3.9.9, 3.6.1, 3.4.3, 3.9.3, 3.6.11 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2021-23555 | The package vm2 before 3.9.6 are vulnerable to Sandbox Bypass via direct access to host error objects generated by node internals during generation of a stacktraces, which can lead to execution of arbitrary code on the host machine. | 3.6.1, 3.4.3, 3.9.3, 3.6.11, 3.8.2, 3.4.2, 3.3.0, 3.4.1 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2021-23449 | This affects the package vm2 before 3.9.4 via a Prototype Pollution attack vector, which can lead to execution of arbitrary code on the host machine. | 3.6.1, 3.4.3, 3.9.3, 3.6.11, 3.8.2, 3.4.2, 3.3.0, 3.4.1 (Show all) | Patch → NO_SAFE_VERSION |
CVE-2019-10761 | This affects the package vm2 before 3.6.11. It is possible to trigger a RangeError exception from the host rather than the "sandboxed" context by reaching the stack call limit with an infinite recursion. The returned object is then used to reference the mainModule property of the host code running the script allowing it to spawn a child_process and execute arbitrary code. | 3.6.1, 3.4.3, 3.4.2, 3.3.0, 3.4.1, 0.2.0, 0.2.3, 3.5.2 (Show all) | Patch → NO_SAFE_VERSION |
Instantly see if these vm2
vulnerabilities affect your code.