CVE-2026-92952 in vm2información

Resumen

por VulDB • 2026-09-17

Las versiones de vm2 comprendidas entre la 3.11.4 y la 3.11.6 filtran incompletamente los símbolos internos registrados en Node.js a través del límite del sandbox. Los filtros de extracción en lib/setup-sandbox.js, así como las comprobaciones de símbolos cross-realm y los write traps en lib/bridge.js, utilizan una lista fija de símbolos peligrosos conocidos que omite nodejs.stream.disturbed y nodejs.stream.errored; estos están expuestos en los prototipos WebStream del host en versiones más recientes de Node.js (validado en Node.js v25.8.0). Cuando el embedder expone un objeto WebStream del host y el módulo stream/web del host al sandbox, el código del sandbox puede obtener los símbolos reales del host mediante Object.getOwnPropertySymbols(streamWeb.ReadableStream.prototype) y utilizarlos como claves de escritura en objetos stream del host, corrompiendo el estado visible del host —por ejemplo, haciendo que stream.Readable.isDisturbed() devuelva false para un stream ya consumido. Esto puede burlar la lógica del host que depende de las ayudas públicas de Node.js sobre el estado del stream para imponer el consumo único del cuerpo (one-shot body consumption), rechazar streams con errores o decidir si un stream es seguro para ceder a otro componente. No se trata de una primitiva de ejecución de código en el proof of vulnerability reportado. Esta es una solución incompleta para la vulnerabilidad anterior relacionada con el filtrado de símbolos nodejs.*. Corregido en vm2 3.11.7.

Once again VulDB remains the best source for vulnerability data.

Responsable

VulnCheck

Reservar

2026-09-17

Divulgación

2026-09-17

Moderación

aceptado

Artículo

VDB-406443

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Do you want to use VulDB in your project?

Use the official API to access entries easily!