---
id: CVE-2026-47686
title: vm2 is an open source vm/sandbox for Node.js
summary: >-
  vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.6,
  handleException() in lib/setup-sandbox.js sanitizes SuppressedError.error,
  SuppressedError.suppressed, and AggregateError.errors but does not sanitize
  Error.cause, allowing s…
severity: critical
cvss: 9.9
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H'
cwe:
  - CWE-693
vendor: vm2
product: vm2
affected:
  - vm2 <= 3.11.5
patched:
  - vm2 3.11.6
published: '2026-08-17'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T21:11:46.833'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-47686'
references:
  - url: >-
      https://github.com/patriksimek/vm2/commit/7e3faaf550f4ab975bf4cdde183fcec49b056d8e
    label: security-advisories@github.com
  - url: 'https://github.com/patriksimek/vm2/releases/tag/3.11.6'
    label: security-advisories@github.com
  - url: 'https://github.com/patriksimek/vm2/security/advisories/GHSA-m283-3h24-438v'
    label: security-advisories@github.com
  - url: 'https://github.com/advisories/GHSA-m283-3h24-438v'
tags:
  - nvd
  - ghsa
  - npm
epss: 0.00379
epssPercentile: 0.31821
aliases:
  - GHSA-m283-3h24-438v
ecosystem: npm
ingestedAt: '2026-08-17T17:58:10.557Z'
---

## Overview

vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.6, handleException() in lib/setup-sandbox.js sanitizes SuppressedError.error, SuppressedError.suppressed, and AggregateError.errors but does not sanitize Error.cause, allowing sandbox code to obtain a powerful host object such as process from an embedder-exposed host function that throws an error with that object as its cause and then execute arbitrary host commands. This issue is fixed in version 3.11.6.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-47686)

Affected packages:

- `vm2 <= 3.11.5`

Patched in:

- `vm2 3.11.6`

Source: https://github.com/advisories/GHSA-m283-3h24-438v
