p PatchFirst

PatchFirst · Vulnerabilidades recientes

vm2 3.11.6: vulnerabilidades conocidas · Página 2

Vulnerabilidades conocidas que afectan a vm2 3.11.6: 30. Compara las versiones corregidas de abajo con la que tienes instalada.

Filtrar vulnerabilidades
Borrar filtros

Vulnerabilidades: 30

  1. CVE-2026-92942

    Alta · CVSS 8.7EPSS 0,49%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.7
    Publicación Actualización
  2. CVE-2026-92941

    Crítica · CVSS 10.0EPSS 0,29%Código de explotación públicoCorrección 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.

    • Actualiza a 3.11.7
    Publicación Actualización
  3. CVE-2026-92940

    Crítica · CVSS 10.0EPSS 0,47%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.7
    Publicación Actualización
  4. CVE-2026-92939

    Crítica · CVSS 9.4EPSS 0,62%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.7
    Publicación Actualización
  5. CVE-2026-92938

    Crítica · CVSS 9.4EPSS 0,62%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.7
    Publicación Actualización
  6. CVE-2026-92937

    Crítica · CVSS 10.0EPSS 1,03%Código de explotación públicoCorrección disponible

    vm2 3.11.6 Remote Code Execution via Promise call/apply

    vm2 3.11.6 is vulnerable to a sandbox escape leading to remote code execution in the host Node.js process. The fix for GHSA-m283-3h24-438v is incomplete: the bridge gate at lib/bridge.js:1624 identity-checks only the direct call target when deciding whether to rebuild/sanitise a rejected host Promise value. Registering the rejection handler through Function.prototype.call or .apply indirection (e.g., p.then.call(p, undefined, cb)) makes the intercepted target host Function.prototype.call, so the sanitiser never runs and the raw host error reaches sandbox code with its own properties intact. If an embedder exposes a host-realm Promise to the s

    • Actualiza a 3.11.7
    Publicación Actualización
  7. CVE-2026-92936

    Media · CVSS 6.9EPSS 0,46%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.7
    Publicación Actualización
  8. CVE-2026-92935

    Crítica · CVSS 9.5EPSS 0,67%Código de explotación públicoCorrección disponible

    vm2 NodeVM Remote Code Execution via Array-Shaped Require

    vm2 is a sandbox for running untrusted Node.js code. In versions >= 3.11.4 and <= 3.11.6, the NodeVM constructor computes `hasRealRequireConfig` with `typeof requireOpts === 'object' && requireOpts !== null`, so an array-shaped `require` value (for example `require: []`) satisfies the guard that is meant to reject nesting without an explicit require configuration. `makeResolverFromLegacyOptions()` then destructures the array into undefined option fields and returns a resolver containing only `NESTING_OVERRIDE.vm2`. As a result, an attacker who can supply JavaScript executed by a NodeVM configured with truthy `nesting` and an array-shaped `req

    • Actualiza a 3.11.7
    Publicación Actualización
  9. CVE-2026-92934

    Crítica · CVSS 9.5EPSS 0,76%Corrección 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.

    • Actualiza a 3.11.8
    Publicación Actualización
  10. CVE-2026-92933

    Media · CVSS 6.9EPSS 0,37%Código de explotación públicoCorrección 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

    • Actualiza a 3.11.8
    Publicación Actualización

Comprueba tu servidor

Compara tu pila y las versiones instaladas con las bases actuales de vulnerabilidades.

Comprueba tu servidor →