p PatchFirst

PatchFirst · Vulnérabilités récentes

vm2 3.11.3 : vulnérabilités connues · Page n° 2

Vulnérabilités connues concernant vm2 3.11.3 : 42. Comparez les versions corrigées ci-dessous avec celle que vous utilisez.

Filtrer les vulnérabilités
Effacer les filtres

Vulnérabilités : 42

  1. CVE-2026-92945

    Faible · CVSS 2.3EPSS 0,28%Correctif disponible

    vm2 before 3.11.7 Module Allowlist Bypass via Prefix Matching

    vm2 before 3.11.7 contains a module allowlist bypass vulnerability in isPathAllowedForModule that uses raw string prefix matching instead of boundary-anchored comparison. Attackers can reach non-allowlisted packages sharing a prefix with allowlisted modules by performing relative requires from allowlisted packages when transitive loading is disabled.

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  2. CVE-2026-92944

    Critique · CVSS 9.3EPSS 0,84%Code d’exploitation publicCorrectif disponible

    vm2 3.10.2 through 3.11.6 Sandbox Escape via Promise Protector

    vm2 versions 3.10.2 through 3.11.6 contain a sandbox escape vulnerability on Node.js 26 where Promise.prototype.finally() bypasses vm2's wrapper protections due to a stale PromiseThenLookupChain protector in V8 14.6. Attackers can exploit this by creating an async function that returns a Promise with an attacker-controlled constructor Symbol.species, allowing them to reach the host Function constructor and process object for arbitrary code execution.

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  3. CVE-2026-92942

    Élevée · CVSS 8.7EPSS 0,49%Code d’exploitation publicCorrectif disponible

    vm2 before 3.11.7 Timeout Bypass via FinalizationRegistry

    vm2 before 3.11.7 (affected versions <= 3.11.6) does not enforce the VM({ timeout }) option on code executed outside the synchronous VM#run() call. The timeout only wraps the single call to _runScript() via doWithTimeout() in lib/vm.js, and FinalizationRegistry and WeakRef are exposed to sandboxed code unmodified (they are not among the hardened globals in lib/setup-sandbox.js). Sandboxed code can register a FinalizationRegistry cleanup callback against an object and then drop the only strong reference to it; vm.run() returns within the configured timeout, but when the V8 garbage collector later reclaims the object it invokes the sandboxed cl

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  4. CVE-2026-92941

    Critique · CVSS 10.0EPSS 0,29%Code d’exploitation publicCorrectif disponible

    vm2 3.11.3 before 3.11.7 TLS Trust Store Manipulation

    vm2 versions from 3.11.3 before 3.11.7 expose the host tls module to NodeVM sandbox code, allowing attackers to call tls.setDefaultCACertificates() and replace process-wide certificate authorities. Attackers with access to allowed tls and url builtins can use URLSearchParams to create host-realm arrays and manipulate the TLS trust store, enabling subsequent host HTTPS clients to accept attacker-controlled certificates.

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  5. CVE-2026-92940

    Critique · CVSS 10.0EPSS 0,47%Code d’exploitation publicCorrectif disponible

    vm2 3.11.3 through 3.11.6 HTTPS Credential Exposure via globalAgent

    vm2 versions 3.11.3 through 3.11.6 expose the host process's real https.globalAgent to sandboxed code when a NodeVM is explicitly configured to allow require('https'). The builtin loader wraps host modules in a read-only proxy, but method calls such as Agent.prototype.on() are forwarded to the underlying host object, so sandbox code can register a listener for the agent's 'free' event. When an unrelated host HTTPS request releases a pooled connection, the listener receives the live host request options and the host TLSSocket, allowing sandboxed code to read the host's Authorization header and private destination host/port, attach a data liste

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  6. CVE-2026-92939

    Critique · CVSS 9.4EPSS 0,62%Code d’exploitation publicCorrectif disponible

    vm2 3.11.3 through 3.11.6 Native Code Execution via crypto.setEngine

    vm2 3.11.3 through 3.11.6 exposes the host Node.js crypto module to a NodeVM sandbox when the crypto builtin is allowed. The module is presented via a recursive read-only proxy, but its callable exports still execute with host-process authority. Sandboxed JavaScript can therefore call crypto.setEngine() with a filesystem path to an attacker-supplied native library (for example, one bundled in an untrusted plugin package already written to disk); OpenSSL asks the operating-system dynamic loader to load the file, and the library's constructor executes native code in the host process before engine-symbol validation rejects it. Exploitation requi

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  7. CVE-2026-92938

    Critique · CVSS 9.4EPSS 0,62%Code d’exploitation publicCorrectif disponible

    vm2 3.11.3 through 3.11.6 Remote Code Execution via node:sqlite

    vm2 versions 3.11.3 through 3.11.6 expose Node.js's host node:sqlite module to code running in NodeVM when that builtin is permitted, either explicitly or through builtin: ['*']. The module is wrapped with vm.readonly(), which prevents property assignment but leaves host-authority callables reachable; in addition, the resolver treats any request starting with 'node:' as a core-module request and the runtime strips only one 'node:' prefix, so a sandbox request for 'node:node:sqlite' resolves to the configured node:sqlite entry. Sandboxed code can therefore create an in-memory DatabaseSync with extension loading enabled and call DatabaseSync.lo

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  8. CVE-2026-92936

    Moyenne · CVSS 6.9EPSS 0,46%Code d’exploitation publicCorrectif disponible

    vm2 3.11.0 before 3.11.7 Information Disclosure via Error Stack

    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 (for example by calling eval with malformed source) and then read the error's .stack property; the bridge forwards the .stack read to the host-realm formatter, bypassing the sandbox-side host-path redaction introduced for GHSA-v27g-jcqj-v8rw. The returned stack string discloses absolute paths from vm2, Node.js internals, and the embedding application's own source tree, along with host function names. Default new VM() and new NodeVM() c

    • Mettez à jour vers 3.11.7
    Publication Mise à jour
  9. CVE-2026-92934

    Critique · CVSS 9.5EPSS 0,76%Correctif disponible

    vm2 before 3.11.8 Sandbox Escape RCE via AggregateError

    vm2 before 3.11.8 contains an incomplete fix for Error.cause sanitization that allows sandbox escape when revisited host-wrapped AggregateError objects are caught within a single exception handler traversal. Attackers can exploit cycle detection bypass in handleException to access unsanitized host proxies embedded in the errors array, enabling full remote code execution and process information disclosure from the sandbox.

    • Mettez à jour vers 3.11.8
    Publication Mise à jour
  10. CVE-2026-92933

    Moyenne · CVSS 6.9EPSS 0,37%Code d’exploitation publicCorrectif disponible

    vm2 before 3.11.8 Information Disclosure via util.getCallSites

    vm2 is a sandbox for running untrusted Node.js code. In versions <= 3.11.7, NodeVM exposes the host `util` module to the sandbox as an unfiltered shallow copy (`Object.assign({}, util)` in `defaultBuiltinLoaderUtil`), and the deprecated `sys` builtin (an alias of host `util`) is exposed through the generic builtin loader. On Node.js >= 22.9 this hands sandboxed code `util.getCallSites()`, a programmatic stack-introspection API that returns the host process's full call stack, including absolute file paths, function names, and line numbers for vm2 bridge internals and the embedding application's entrypoint. This bypasses the host-frame redactio

    • Mettez à jour vers 3.11.8
    Publication Mise à jour
  11. CVE-2026-47683

    Élevée · CVSS 8.7EPSS 0,54%Correctif disponible

    vm2: bufferAllocLimit cap bypassed by Buffer.concat and Buffer.from arrayLike

    vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.6, the bufferAllocLimit enforcement in lib/setup-sandbox.js does not cover Buffer.concat(list, totalLength) or Buffer.from(arrayLike) with an attacker-controlled length, allowing sandbox code to perform large synchronous host external-memory allocations that bypass the configured cap and can exhaust the host process. This issue is fixed in version 3.11.6.

    • Mettez à jour vers 3.11.6
    Publication Mise à jour
  12. CVE-2026-47686

    Critique · CVSS 9.9EPSS 0,58%Correctif disponible

    vm2: Missing Error.cause Sanitization Enables VM2 Sandbox Escape to RCE

    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.

    • Mettez à jour vers 3.11.6
    Publication Mise à jour
  13. CVE-2026-47698

    Critique · CVSS 9.8EPSS 0,97%Correctif disponible

    vm2: Sandbox Breakout Using Dangerous Host Proto Mutators

    vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.6, lib/bridge.js and lib/setup-sandbox.js fail to block stacked indirection through Function.prototype.call around dangerous host prototype getter and setter mutators, allowing sandbox code to sever a host intrinsic's prototype chain and reach e.constructor.constructor for arbitrary host command execution. This issue is fixed in version 3.11.6.

    • Mettez à jour vers 3.11.6
    Publication Mise à jour
  14. CVE-2026-47141

    Moyenne · CVSS 6.9EPSS 0,38%Correctif disponible

    vm2: NodeVM observability builtins leak host process and HTTP request data

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, NodeVM exposes some process-wide observability builtins when they are allowed through require.builtin. The diagnostics_channel, async_hooks, and perf_hooks builtins are not blocked by the dangerous builtin denylist. These modules are process-wide, not sandbox-local. Sandboxed code can use them to observe host application data across the vm2 boundary. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  15. CVE-2026-47210

    Critique · CVSS 9.8EPSS 1,72%Correctif disponible

    vm2 sandbox escape via JSPI-backed Promise `.finally()` species bypass

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, a sandbox escape vulnerability in vm2 allows arbitrary code execution in the host process when untrusted code is executed with async support on runtimes exposing WebAssembly JSPI (WebAssembly.promising / WebAssembly.Suspending). In the tested configuration, a JSPI-backed Promise can reach Promise.prototype.finally() in a way that bypasses the expected Promise-species hardening and exposes a host-originated rejection object to attacker-controlled species logic, breaking the sandbox boundary. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  16. CVE-2026-47208

    Critique · CVSS 10.0EPSS 1,04%Correctif disponible

    vm2: Sandbox Breakout Using Promise Species

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, VM2 suffers from a sandbox breakout vulnerability. This allows attackers to write code which can escape from the VM2 sandbox and execute arbitrary commands on the host system. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  17. CVE-2026-47140

    Critique · CVSS 10.0EPSS 0,98%Correctif disponible

    vm2: NodeVM builtin denylist bypass via process and inspector/promises allows host code execution

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, NodeVM blocks several dangerous Node.js builtins such as module, worker_threads, cluster, vm, repl, and inspector. However, the denylist misses process and inspector/promises. Both can be used from sandboxed code to reach host-side execution primitives. This allows sandboxed code to bypass the intended builtin restrictions and execute code in the host process. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  18. CVE-2026-47139

    Élevée · CVSS 8.6EPSS 0,36%Correctif disponible

    vm2: NodeVM network builtin exclusions bypass via internal _http_client and _http_server

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, NodeVM supports excluding public network builtins from the wildcard builtin option. With this configuration direct access to http, https, http2, net, dgram, tls, dns, and dns/promises is blocked. However, Node.js also exposes underscored internal HTTP builtins such as _http_client and _http_server. These are not blocked when the public modules are excluded. Sandboxed code can use these internal builtins to make outbound HTTP requests and open listening HTTP sockets even though the public network modules are denied. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  19. CVE-2026-47137

    Critique · CVSS 10.0EPSS 0,38%Correctif disponible

    vm2: GHSA-8hg8-63c5-gwmx patch bypass: nesting:true without explicit require still allows full RCE

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, the fix for GHSA-8hg8-63c5-gwmx (CVE-2023-37903) introduced a check in nodevm.js line 263 that blocks the combination nesting: true + require: false. However, the check uses strict equality (options.require === false), which is trivially bypassed by omitting the require option entirely. When require is not specified, options.require is undefined, not false. The strict equality check fails, so the security guard is skipped. Immediately after (line 280), the destructuring default require: requireOpts = false assigns requireOpts = false, producing the exact configuration the

    • Mettez à jour vers 3.11.4
    Publication Mise à jour
  20. CVE-2026-47135

    Élevée · CVSS 8.7EPSS 0,27%Correctif disponible

    vm2: Sandbox escape via unblocked cross-realm Symbol.for keys + missing bridge write-trap symbol checks

    vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, Symbol.for override in setup-sandbox.js only intercepts 2 of 9 dangerous Node.js cross-realm symbols. Combined with the bridge's set/defineProperty/deleteProperty traps having no isDangerousCrossRealmSymbol key check, sandbox code can obtain real cross-realm symbols, write them to host objects, and control host-side behavior — verified with a full util.promisify hijack chain. This issue has been patched in version 3.11.4.

    • Mettez à jour vers 3.11.4
    Publication Mise à jour

Vérifiez votre serveur

Comparez votre pile et les versions installées aux bases de vulnérabilités actuelles.

Vérifiez votre serveur →