vm2
vm2 is a Node.js library that runs untrusted JavaScript in a separate V8 context with restricted host access. Embedders use it for plugins, user scripts, and agent-style eval workflows. Sandbox escape CVEs score critical because a breakout is host process code execution. NVD tracks the package as cpe:2.3:a:vm2_project:vm2.
Querying vm2
vm23.9.10, 3.11.3curl "https://api.attestd.io/v1/check?product=vm2&version=3.9.10" \
-H "Authorization: Bearer $ATTESTD_KEY"vm2 3.9.10 is affected by CVE-2022-36067 (CVSS 10.0) and later sandbox escape CVEs in the 3.9.x line. The response aggregates the worst case across matching CVEs, which yields risk_state: "critical".
{
"product": "vm2",
"version": "3.9.10",
"supported": true,
"risk_state": "critical",
"risk_factors": [
"remote_code_execution",
"no_authentication_required",
"internet_exposed_service",
"patch_available"
],
"actively_exploited": false,
"remote_exploitable": true,
"authentication_required": false,
"patch_available": true,
"fixed_version": "3.11.3",
"confidence": 0.5,
"cve_ids": [
"CVE-2022-36067",
"CVE-2023-29017",
"CVE-2023-29199",
"CVE-2023-30547",
"CVE-2023-32313",
"CVE-2023-32314",
"CVE-2023-37466",
"CVE-2023-37903",
"CVE-2026-22709",
"CVE-2026-24118",
"CVE-2026-24120",
"CVE-2026-24781",
"CVE-2026-26332",
"CVE-2026-26956",
"CVE-2026-43997",
"CVE-2026-43999",
"CVE-2026-44000",
"CVE-2026-44001",
"CVE-2026-44002",
"CVE-2026-44003",
"CVE-2026-44004",
"CVE-2026-44005",
"CVE-2026-44006",
"CVE-2026-44007",
"CVE-2026-44008",
"CVE-2026-44009",
"CVE-2026-45411"
],
"cves": null,
"max_epss": 0.72087,
"last_updated": "2026-08-16T11:18:08.825063Z",
"supply_chain": {
"compromised": false,
"sources": [],
"malware_type": null,
"description": null,
"advisory_url": null,
"compromised_at": null,
"removed_at": null,
"source_published_at": null,
"observed_at": null,
"ingested_at": null,
"first_served_at": null,
"provenance": false
},
"supply_chain_monitored": true,
"typosquat": null
}vm2 3.11.3 is the final published 3.9.x release. CVE-2023-37466 still applies through that version, and the advisory recommends migrating off vm2 rather than treating any release as a durable fix.
curl "https://api.attestd.io/v1/check?product=vm2&version=3.11.3" \
-H "Authorization: Bearer $ATTESTD_KEY"CVE history
vm2's NVD record is a sequence of CVSS 10.0 sandbox escapes in 2022 and 2023. Each patch closed one isolation gap; later advisories found new host-object and Promise paths. After CVE-2023-37466, the project advised users to stop using vm2.
| CVE | Description | Affects | CVSS |
|---|---|---|---|
CVE-2022-36067 | Sandbox bypass gains host RCE via insufficient isolation of Node builtins. | <3.9.11 | 10.0 |
CVE-2023-32314 | Unexpected host-object creation escapes the sandbox to host RCE. | <3.9.18 | 10.0 |
CVE-2023-30547 | Exception sanitization failure raises unsanitized host exceptions leading to sandbox escape. | ≤3.9.16 | 10.0 |
CVE-2023-37466 | Promise inspect handling escapes the sandbox; advisory says stop using vm2. | ≤3.9.19 | 10.0 |
KEV = CISA Known Exploited Vulnerabilities catalog. Active exploitation confirmed.
Single CPE namespace
NVD files vm2 CVEs under one CPE product identifier:
cpe:2.3:a:vm2_project:vm2All published sandbox escape CVEsAttestd maps the vm2 slug to this namespace and matches npm-style semver against the NVD ranges.