CVE-2026-43998
📛 CVE Title
vm2: NodeVM require.root bypass via symlink traversal allows sandbox escape
Description
vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0.
Overview
- State
- PUBLISHED
- Assigner (CNA)
- GitHub_M
- CVSS severity
- HIGH
- CVSS score
- 8.5 / 10
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H- Effective score
- 8.5 / 10 HIGH source: CNA overview
- CWE(s)
-
CWE-59 - Reserved
- 2026-05-04
- Published
- 2026-05-13 19:19 UTC
- Last updated
- 2026-05-15 05:55 UTC
- Source
- https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/43xxx/CVE-2026-43998.json
- Linked Threat
- CVE-2026-43998 — vm2: NodeVM require.root bypass via symlink traversal allows sandbox escape
NVD triage scoring NVD CVE 2.0
Layer NVD adds on top of the CNA's CVE record — published / last-modified timestamps, exploitability / impact subscores, and the FIRST.org EPSS probability that this CVE will be exploited in the wild in the next 30 days.
- NVD published
- 2026-05-13 18:16:16 UTC
- NVD last modified
- 2026-05-14 15:36:55 UTC
- NVD CVSS v3.1
- 8.5 / 10 HIGH source: security-advisories@github.com
- NVD CVSS vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H- Exploitability subscore
- 1.8 / 10
- Impact subscore
- 6.0 / 10
- EPSS score
- 0.0028 (probability of exploitation in next 30 days)
- EPSS percentile
- 51.83% vs all CVEs — higher = more likely to be exploited, as of 2026-05-24
NVD / KEV / EPSS data refreshed 2026-05-25 08:45 UTC. Re-run the 🛰 Backfill from NVD button above to refresh.
European Union Vulnerability Database ENISA EUVD
ENISA's official EU repository for curated vulnerability intelligence. Carries a separate identifier (EUVD-YYYY-NNNN) and frequently exposes an earlier-published description + CVSS than NVD does.
- EUVD ID
-
EUVD-2026-30068 - Assigner
- GitHub_M
- Published
- May 13, 2026, 5:19:44 PM
- Updated
- May 15, 2026, 3:55:52 AM
- EUVD base score (CVSS 3.1)
-
8.5 / 10
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H - EUVD-reported EPSS
- 0.2800
- Vendors
- patriksimek
- Products
-
vm2 (3.10.5)
- Aliases
-
GHSA-cp6g-6699-wx9c
ENISA description: vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0.
EUVD references (1)
Affected products (1)
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| patriksimek | vm2 |
3.10.5 (affected)
|
— |
Affected products — CPE 2.3 (1) NVD
NVD's normalized CPE 2.3 matchers, used by vendor tools (vulnerability scanners, asset managers) for automated detection. Compare with the CNA's free-text "Affected products" section above.
cpe:2.3:a:vm2_project:vm2:3.10.5:*:*:*:*:node.js:*:*
Vendor references (1)
References embedded in the original CVE record by the assigning CNA.
- https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c x_refsource_CONFIRM
MITRE references (1) cveawg.mitre.org
Pulled from MITRE's CVE Services API by the 🛰 Backfill from MITRE button.
- https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c x_refsource_CONFIRM
Web references (3)
DuckDuckGo results ranked by threat-intel / vendor advisory domains. Generated by the 🔎 Find references (web) button above — same flow as the Remediations search.
- https://nvd.nist.gov/vuln/detail/CVE-2026-43998 tenable:nvd.nist.gov
- https://www.cve.org/CVERecord?id=CVE-2026-43998 tenable:www.cve.org
- https://www.first.org/epss/ tenable:www.first.org
NVD-tagged references (2)
Reference list NVD curates from the CNA record, vendor advisories, and third-party reports. The tag chips below are NVD's analyst-assigned categories.
- https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c security-advisories@github.com ExploitMitigationVendor Advisory
- https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c 134c704f-9b21-4f2e-91b3-4a467353bcc0 ExploitMitigationVendor Advisory
Indicators (3)
IOCs linked to the auto-promoted Threat row.
| Type | Value | VirusTotal | Attached |
|---|---|---|---|
| domain |
node.js
|
no local data | 2026-05-18 21:18 UTC |
| domain |
require.root
|
no local data | 2026-05-18 21:18 UTC |
| domain |
path.resolve
|
no local data | 2026-05-18 21:18 UTC |
Remediations (14)
Remediations are stored against the linked Threat row; the list below is deduplicated across both pages.
-
web:www.grammarly.com
Grammarly makes AI writing convenient. Work smarter with personalized AI guidance and text generation on any app or website.
2026-05-22 17:21 UTC -
web:www.virustotal.com
VirusTotal is a platform for scanning files and URLs for viruses, malware, and other threats using multiple antivirus engines.
2026-05-22 17:21 UTC -
web:portal.msrc.microsoft.com
The Security Update Guide provides information on the latest Microsoft security updates, helping users understand and address potential vulnerabilities effectively.
2026-05-22 17:21 UTC -
web:www.crowdstrike.com
Microsoft's April 2026 Patch Tuesday addresses 164 CVEs , featuring 8 Critical vulnerabilities, one exploited zero-day, and one disclosed zero-day.
2026-05-22 17:21 UTC -
web:securityvulnerability.io
What is CVE-2026-43998 ? The vm2 library, a popular open-source sandboxing solution for Node.js, is susceptible to a path traversal vulnerability in version 3.10.5.
2026-05-22 03:50 UTC -
web:www.helpnetsecurity.com
Microsoft has marked May 2026 Patch Tuesday by releasing fixes for 120+ CVE -numbered vulnerabilities, none of which are actively exploited.
2026-05-22 03:50 UTC -
web:www.microsoft.com
Security Update Guide Notifications Microsoft's free Security Update Guide Notifications provide links to security-related software updates and notification of re-released security updates. These notifications are sent via email throughout the month as needed.
2026-05-22 03:50 UTC -
web:www.oracle.com
This Critical Patch Update contains 481 new security patches across the product families listed below. Please note that an MOS note summarizing the content of this Critical Patch Update and other Oracle Software Security Assurance activities is located at April 2026 Critical Patch Update: Executive Summary and Analysis.
2026-05-22 03:50 UTC -
web:www.windowslatest.com
Windows 11 April 2026 update adds Narrator Copilot support, faster Settings, File Explorer fixes, and key security improvements.
2026-05-22 03:50 UTC -
web:cybersecuritynews.com
Microsoft's May 2026 Patch Tuesday lands with a heavy enterprise focus, fixing 120 vulnerabilities across Windows, Office, Azure, developer tools, and Microsoft 365 apps, including 29 remote code execution (RCE) flaws rated Critical.
2026-05-22 03:50 UTC -
web:zecurit.com
Get the complete breakdown of Microsoft's May 2026 Patch Tuesday. We analyze the latest security updates and all critical CVEs .
2026-05-22 03:50 UTC -
web:integsec.com
CVE‑2026‑43997 was disclosed on May 13, 2026 , through the National Vulnerability Database and is tracked against the open‑source vm2 library, a virtual‑machine sandbox used to run untrusted JavaScript inside Node.js applications. The vulnerability allows attackers to obtain the host object and escape the sandbox, enabling remote code execution on the server hosting the Node.js process.
2026-05-22 03:50 UTC -
web:krebsonsecurity.com
Microsoft expects that exploitation is more likely. May's Patch Tuesday is a welcome respite from April, which saw Microsoft fix a near-record 167 security flaws.
2026-05-22 03:50 UTC -
web:nvd.nist.gov
An official website of the United States government Here's how you know
2026-05-22 03:50 UTC
AI Forensic Analysis
Only Available for Registered Users. Sign in to view.
Raw JSON
The full cvelistV5 record. Download as CVE-2026-43998.json.
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-43998",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-05-14T00:00:00+00:00",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-05-15T03:55:52.827Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "vm2",
"vendor": "patriksimek",
"versions": [
{
"status": "affected",
"version": "3.10.5"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "HIGH",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 8.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-59",
"description": "CWE-59: Improper Link Resolution Before File Access ('Link Following')",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-05-13T17:19:44.406Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/patriksimek/vm2/security/advisories/GHSA-cp6g-6699-wx9c"
}
],
"source": {
"advisory": "GHSA-cp6g-6699-wx9c",
"discovery": "UNKNOWN"
},
"title": "vm2: NodeVM require.root bypass via symlink traversal allows sandbox escape"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-43998",
"datePublished": "2026-05-13T17:19:44.406Z",
"dateReserved": "2026-05-04T20:24:31.917Z",
"dateUpdated": "2026-05-15T03:55:52.827Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}