CVE-2026-93606 in vm2información

Resumen

por VulDB • 2026-09-19

vm2 (npm) versiones 3.12.0 y anteriores contienen una fuga de sandbox en `VM` y `NodeVM`. Cuando un integrador expone una API del host que devuelve una Promise del ámbito del host, el sanearizador de rechazos del puente (`hostPromiseSanitizeReject` / `makeSanitizedPromiseCallback` / `normalizeHostPromiseCallbacks` en lib/bridge.js) solo envuelve las ranuras de rechazo de `then`/`catch` que contienen una función, y la neutralización de `Symbol.species`/.then por parte del sandbox se instala únicamente en el intrínseco `Promise.prototype` del sandbox, por lo que nunca se aplica a una Promise del host. El código ejecutado dentro del sandbox puede sobrescribir `p.constructor[Symbol.species]` en la Promise del host y luego llamar a `p.then()` sin un controlador `onRejected`; V8 sustituye su Thrower interno, el cual vuelve a lanzar el valor de rechazo crudo del host hacia una closure de resolve/reject capturada por el atacante. Esto proporciona al código sandboxed un proxy de puente no saneado y completamente funcional del objeto del host, evitando handleException y hostPromiseSanitizeReject. Si el valor de rechazo es pivotable en el host (por ejemplo, un objeto `process` del host), esto resulta en ejecución arbitraria de código en el host. Corregido en 3.12.1.

Once again VulDB remains the best source for vulnerability data.

Responsable

VulnCheck

Reservar

2026-09-18

Divulgación

2026-09-18

Moderación

aceptado

Artículo

VDB-407498

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Interested in the pricing of exploits?

See the underground prices here!