p PatchFirst

PatchFirst · Aktuelle Sicherheitslücken

vm2 3.11.7: bekannte Sicherheitslücken

Bekannte Sicherheitslücken für vm2 3.11.7: 10. Vergleichen Sie die unten genannten Korrekturen mit Ihrer installierten Version.

Sicherheitslücken filtern
Filter zurücksetzen

Sicherheitslücken: 10

  1. CVE-2026-100723

    Mittel · CVSS 6.9EPSS 0,39%Öffentlicher ExploitKorrektur verfügbar

    vm2 before 3.12.2 Memory Disclosure via zlib Buffer Pool

    vm2 before 3.12.2 does not apply its Buffer backing-store ownership invariant (byteOffset === 0 and buffer.byteLength === length) to Buffers returned from host builtin modules. When an application explicitly exposes Node's zlib module through NodeVM's builtin allowlist (require: { builtin: ['zlib'] }), zlib.deflateSync can return a Buffer backed by Node's shared small-buffer pool whose .buffer is the entire pool. Untrusted guest code can construct a full-width view of that ArrayBuffer (Buffer.from(result.buffer, 0, result.buffer.byteLength)) to read and modify bytes belonging to unrelated host buffers, disclosing and corrupting host-realm mem

    • Auf 3.12.2 aktualisieren
    Veröffentlicht Aktualisiert
  2. CVE-2026-100722

    Hoch · CVSS 8.9EPSS 0,32%Öffentlicher ExploitKorrektur verfügbar

    vm2 before 3.12.2 Host Process Termination via Construct Trap

    vm2 before 3.12.2 does not apply host-side Promise rejection handling in the sandbox-to-host construct trap. In BaseHandler, the apply trap calls markHostPromiseHandled() on the returned value, but the adjacent construct path returns the result of Reflect.construct without the same sanitization. If an embedder exposes a constructable host function whose constructor returns a native rejected Promise, an untrusted script executed via VM.run can invoke it with `new` and ignore the result; the rejected host Promise crosses the bridge unhandled and, under Node's strict unhandled-rejection policy, is promoted to an uncaught exception that terminate

    • Auf 3.12.2 aktualisieren
    Veröffentlicht Aktualisiert
  3. CVE-2026-100721

    Kritisch · CVSS 9.5EPSS 0,59%Öffentlicher ExploitKorrektur verfügbar

    vm2 before 3.12.2 Authorization Bypass via Custom Resolver

    vm2 before 3.12.2 contains an authorization bypass in the NodeVM external-module resolver. When an embedder configures `require.external` with a custom resolver (and `context: 'host'`), `LegacyResolver.customResolve` in lib/resolver-compat.js records the resolved module directory in `this.externals` as `new RegExp('^' + escapeRegExp(resolvedPath))`, without requiring a path separator or end-of-string boundary. Untrusted guest code can therefore require the allowlisted module (e.g. `foo`) and then require the absolute path of a non-allowlisted sibling whose path merely shares the resolved prefix (e.g. `.../node_modules/foo2/index.js`); the sib

    • Auf 3.12.2 aktualisieren
    Veröffentlicht Aktualisiert
  4. CVE-2026-93605

    Kritisch · CVSS 10.0EPSS 0,73%Öffentlicher ExploitKorrektur verfügbar

    vm2 NodeVM before 3.12.1 Remote Code Execution via child_process

    vm2 NodeVM versions before 3.12.1 contain a sandbox escape vulnerability where the DANGEROUS_BUILTINS denylist omits child_process despite blocking other host-spawning modules. Attackers can require child_process and execute arbitrary commands on the host system when NodeVM is configured with builtin:['*'] or explicit child_process allowance.

    • Auf 3.12.1 aktualisieren
    Veröffentlicht Aktualisiert
  5. CVE-2026-92959

    Hoch · CVSS 7.1EPSS 0,45%Öffentlicher ExploitKorrektur verfügbar

    vm2 before 3.11.8 allowAsync Bypass via Promise Thenable

    vm2 before 3.11.8 does not fully enforce the allowAsync: false option in VM and NodeVM. While localPromise.prototype.then is replaced with a handler that throws 'Async not available', the sandbox's Promise static methods (Promise.resolve, Promise.all, Promise.race, Promise.any, and Promise.allSettled) still assimilate attacker-supplied thenables: native promise resolution performs PromiseResolveThenableJob and invokes the sandboxed code's then method in a microtask without passing through the patched then, so the async restriction is never applied. As a result, sandboxed script can schedule work that runs after VM.run() or NodeVM.run() has re

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert
  6. CVE-2026-92955

    Kritisch · CVSS 10.0EPSS 0,71%Öffentlicher ExploitKorrektur verfügbar

    vm2 before 3.11.8 Sandbox Escape via NodeVM

    vm2 before 3.11.8 contains a sandbox escape vulnerability in NodeVM that allows attackers to access the host __proto__ getter/setter through console._stdout and console._stderr. Attackers can overwrite EventEmitter.prototype.emit and trigger process events to execute code with process context, bypassing code generation restrictions.

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert
  7. CVE-2026-92954

    Kritisch · CVSS 9.2EPSS 0,49%Öffentlicher ExploitKorrektur verfügbar

    vm2 3.10.0 through 3.11.7 Denial of Service via Host Promise

    vm2 is a sandbox library for running untrusted JavaScript in Node.js. In versions >= 3.10.0 and <= 3.11.7, Promises returned from the host realm into the sandbox are not marked as handled at the bridge boundary; only Promises created inside the sandbox are wrapped with a rejection-swallowing handler (lib/setup-sandbox.js), and the bridge only installs host-side rejection sanitizers when sandbox code calls .then/.catch/.finally. As a result, code running in the sandbox can invoke a host function that returns a rejected Promise (for example events.once() exposed via the NodeVM events builtin, or any embedder-provided Promise-returning API) and

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert
  8. CVE-2026-92953

    Kritisch · CVSS 9.3EPSS 0,5%Öffentlicher ExploitKorrektur verfügbar

    vm2 3.11.0 through 3.11.7 Prototype Pollution via TypedArray

    vm2 versions from 3.11.0 before 3.11.8 fail to protect host TypedArray and ArrayBuffer prototypes from sandbox mutation. Attackers can use prototype-walking primitives to reach and modify host Uint8Array.prototype, %TypedArray%.prototype, and ArrayBuffer.prototype, causing host-created typed arrays to observe attacker-controlled properties after VM.run() returns.

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert
  9. CVE-2026-92934

    Kritisch · CVSS 9.5EPSS 0,76%Korrektur verfügbar

    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.

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert
  10. CVE-2026-92933

    Mittel · CVSS 6.9EPSS 0,37%Öffentlicher ExploitKorrektur verfügbar

    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

    • Auf 3.11.8 aktualisieren
    Veröffentlicht Aktualisiert

Prüfen Sie Ihren Server

Gleichen Sie Ihren installierten Stack und seine Versionen mit den aktuellen Sicherheitsmeldungen ab.

Prüfen Sie Ihren Server →