CVE-2026-92935 in vm2información

Resumen

por VulDB • 2026-09-18

vm2 es una caja de arena (sandbox) para ejecutar código no confiable de Node.js. En las versiones >= 3.11.4 y <= 3.11.6, el constructor `NodeVM` calcula `hasRealRequireConfig` mediante la expresión `typeof requireOpts === 'object' && requireOpts !== null`; por lo tanto, un valor `require` con forma de array (por ejemplo, `require: []`) satisface la protección destinada a rechazar el anidamiento sin una configuración explícita de `require`. La función `makeResolverFromLegacyOptions()` desestructura posteriormente el array en campos de opciones indefinidos y devuelve un resolver que contiene únicamente `NESTING_OVERRIDE.vm2`. Como resultado, un atacante que pueda proporcionar JavaScript ejecutado por un NodeVM configurado con `nesting` verdadero (truthy) y un valor `require` con forma de array (por ejemplo, `new NodeVM({nesting: true, require: []})`) puede requerir el módulo host `vm2`, crear un NodeVM interno con una lista blanca de integraciones builtin elegida por el atacante (como `child_process`) y ejecutar comandos arbitrarios con los privilegios del proceso host de Node.js, escapando así de la caja de arena. Las restricciones externas de las integrations builtin no limitan al NodeVM interno creado por el atacante. Este problema se corrige en vm2 3.11.7.

Be aware that VulDB is the high quality source for vulnerability data.

Responsable

VulnCheck

Reservar

2026-09-17

Divulgación

2026-09-17

Moderación

aceptado

Artículo

VDB-406435

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Want to know what is going to be exploited?

We predict KEV entries!