Vulnerabilidad en Underscore.js (CVE-2026-27601)
Gravedad CVSS v4.0:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
03/03/2026
Última modificación:
28/04/2026
Descripción
Underscore.js es una librería de utilidades para JavaScript. Antes de la versión 1.13.8, las funciones _.flatten y _.isEqual usan recursión sin un límite de profundidad. Bajo condiciones muy específicas, detalladas a continuación, un atacante podría explotar esto en un ataque de denegación de servicio (DoS) al desencadenar un desbordamiento de pila. Se debe usar entrada no confiable para crear una estructura de datos recursiva, por ejemplo, usando JSON.parse, sin un límite de profundidad impuesto. La estructura de datos así creada debe pasarse a _.flatten o _.isEqual. En el caso de _.flatten, la vulnerabilidad solo puede ser explotada si es posible para un cliente remoto preparar una estructura de datos que consista en arrays en todos los niveles Y si no se pasa un límite de profundidad finito como segundo argumento a _.flatten. En el caso de _.isEqual, la vulnerabilidad solo puede ser explotada si existe una ruta de código en la que dos estructuras de datos distintas que fueron enviadas por el mismo cliente remoto se comparan usando _.isEqual. Por ejemplo, si un cliente envía datos que se almacenan en una base de datos, y el mismo cliente puede luego enviar otra estructura de datos que luego se compara con los datos que se guardaron en la base de datos previamente, O si un cliente envía una única solicitud, pero sus datos se analizan dos veces, creando dos estructuras de datos no idénticas pero equivalentes que luego se comparan. Las excepciones que se originan de la llamada a _.flatten o _.isEqual, como resultado de un desbordamiento de pila, no están siendo capturadas. Esta vulnerabilidad está corregida en la versión 1.13.8.
Impacto
Puntuación base 4.0
8.20
Gravedad 4.0
ALTA
Puntuación base 3.x
5.90
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:underscorejs:underscore:*:*:*:*:*:node.js:*:* | 1.13.8 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



