402685 matches found
CVE-2026-92955
vm2 before 3.11.8 contains a sandbox escape in its NodeVM component. Attackers can reach the host __proto__ getter/setter via console._stdout and console._stderr, then overwrite EventEmitter.prototype.emit and trigger process events to execute code with process context , bypassing code generation...
CVE-2026-92954
vm2 is a Node.js sandbox library for running untrusted JavaScript. In versions 3.10.0 through 3.11.7 , Promises returned from the host realm into the sandbox are not marked as handled at the bridge boundary. Only sandbox-created Promises receive a rejection-swallowing wrapper, and host-side rejec...
CVE-2026-92953
vm2 (a Node.js sandboxing library) versions 3.11.0 through 3.11.7 fail to protect host TypedArray and ArrayBuffer prototypes from sandbox mutation. An attacker inside the sandbox can use prototype-walking primitives to reach and modify Uint8Array.prototype , %TypedArray%.prototype , and ArrayBuff...
CVE-2026-92952
vm2 (Node.js sandboxing library) versions 3.11.4 through 3.11.6 incompletely filter Node.js registered internal symbols across the sandbox boundary. The fixed symbol lists in lib/setup-sandbox.js and lib/bridge.js omit nodejs.stream.disturbed and nodejs.stream.errored , exposed on host WebStream ...
CVE-2026-92951
vm2 prior to version 3.11.7 is affected by an incorrect authorization flaw in its external package allowlist mechanism. The root cause is the use of non-exact substring matching instead of full package-name boundary validation, allowing an attacker to require a colliding package name that merely ...
CVE-2026-92950
vm2 before 3.11.7 contains a sandbox escape in its CLI tool . By supplying a malicious script file that calls require(__filename), an attacker re-executes the script in the host Node.js realm , breaking sandbox isolation and gaining access to host modules such as fs and child_process . This yield...
CVE-2026-92949
vm2 versions from 3.9.6 before 3.11.7 fail to properly restrict access to accessor properties on frozen objects, allowing sandboxed scripts to bypass vm.freeze() and vm.readonly() protections. An attacker can use Object.getOwnPropertyDescriptor() or __lookupSetter__() to extract and invoke host o...
CVE-2026-92948
vm2 (a Node.js sandboxing library) versions 3.9.6 through 3.11.6 are vulnerable to a sandbox escape on Node.js 24+ when the embedder explicitly allows the node:test builtin. On Node.js 24, module.builtinModules exposes the scheme-only key node:test, which bypasses vm2's DANGEROUS_BUILTINS family-...
CVE-2026-92947
CVE-2026-92947 affects the vm2 Node.js sandboxing library prior to version 3.11.7 . The vulnerability arises because Node's shared Buffer pool is exposed to sandboxed code: sandboxed scripts can acquire ArrayBuffers from small allocations (e.g., Buffer.from, Buffer.concat), gaining read and write...
CVE-2026-92946
vm2 before 3.11.7 contains a remote code execution vulnerability triggered when require.external is enabled without an explicit require.root that excludes node_modules. Under these conditions, sandboxed code can require vm2's own package, instantiate an unrestricted NodeVM instance , and execute ...
CVE-2026-92944
vm2 versions 3.10.2 through 3.11.6 contain a sandbox escape vulnerability on Node.js 26 (V8 14.6). The root cause is a stale PromiseThenLookupChain protector: Promise.prototype.finally() bypasses vm2's wrapper protections. An attacker can exploit this by creating an async function that returns a ...
CVE-2026-92945
vm2 before 3.11.7 contains a module allowlist bypass in the isPathAllowedForModule function. The root cause is the use of raw string prefix matching instead of a boundary-anchored comparison, allowing attackers to reach non-allowlisted packages that share a name prefix with an allowlisted module....
CVE-2026-92942
vm2 before 3.11.7 (versions ≤ 3.11.6) contains a timeout bypass that allows sandboxed code to trigger denial of service. The VM({ timeout }) option only wraps the synchronous VM#run() call, while FinalizationRegistry and WeakRef are exposed to sandboxed code unmodified. An attacker can register a...
CVE-2026-92941
vm2 (Node.js sandboxing library) versions 3.11.3 through 3.11.6 expose the host tls module to NodeVM sandbox code. An attacker with access to the allowed tls and url builtins can use URLSearchParams to construct host-realm arrays and invoke tls.setDefaultCACertificates() , replacing the process-w...
CVE-2026-92940
vm2 versions 3.11.3 through 3.11.6 expose the host process's real https.globalAgent to sandboxed code when a NodeVM is configured to allow require('https'). Although the builtin loader wraps host modules in a read-only proxy, method calls such as Agent.prototype.on() are forwarded to the underlyi...
CVE-2026-92939
CVE-2026-92939 affects the vm2 Node.js sandboxing library (versions 3.11.3 through 3.11.6 ). When the crypto builtin is permitted, the host Node.js crypto module is exposed to the sandbox via a recursive read-only proxy, but its callable exports still execute with host-process authority . Sandbox...
CVE-2026-92937
vm2 3.11.6 (a Node.js sandboxing library) is vulnerable to a sandbox escape resulting in remote code execution in the host process. The root cause is an incomplete fix for a prior advisory (GHSA-m283-3h24-438v): the bridge gate at lib/bridge.js:1624 only identity-checks the direct call target, so...
CVE-2026-92938
vm2 (a Node.js sandboxing library) versions 3.11.3 through 3.11.6 are vulnerable to Remote Code Execution via the node:sqlite module. When the module is permitted (explicitly or via builtin: ['*']), it is wrapped with vm.readonly(), which prevents property assignment but leaves host-authority cal...
CVE-2026-92936
vm2 versions 3.11.0 through 3.11.6 leak absolute host filesystem paths to sandboxed code through error stack formatting . Attacker-supplied code can force the host-realm source transformer to throw a SyntaxError (e.g., via eval with malformed source) and then read the error's .stack property; the...
CVE-2026-92935
vm2 is a sandbox for running untrusted Node.js code. In versions 3.11.4 through 3.11.6 , a flaw in the NodeVM constructor's guard (typeof requireOpts === 'object' && requireOpts !== null) allows an array-shaped require value (e.g., require: []) to pass, producing a resolver with only NESTING_OVER...