CVE-2026-33532
yaml es vulnerable a Stack Overflow mediante colecciones YAML profundamente anidadas
- Publicado
- 26 mar 2026
- Actualizado
- 30 mar 2026
- Asignación de CNA
- GitHub_M
- Evidencia observada
- 25 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:LBajo · próximos 30 días
- Percentil
- 39,7 %
- Fecha del modelo
- 21 sept 2026
EPSS es una estimación estadística, no una certeza o una medida de impacto. Combínelo con CVSS, estado KEV, exposición y su entorno.
Resumen
`yaml` es un analizador y serializador YAML para JavaScript. Analizar un documento YAML con una versión de `yaml` en la rama 1.x anterior a la 1.10.3 o en la rama 2.x anterior a la 2.8.3 puede lanzar un RangeError debido a un desbordamiento de pila. La fase de resolución/composición de nodos utiliza llamadas a funciones recursivas sin un límite de profundidad. Un atacante que puede proporcionar YAML para el análisis puede desencadenar un 'RangeError: Maximum call stack size exceeded' con una pequeña carga útil (~2–10 KB). El `RangeError` no es un `YAMLParseError`, por lo que las aplicaciones que solo capturan errores específicos de YAML encontrarán un tipo de excepción inesperado. Dependiendo del manejo de excepciones de la aplicación anfitriona, esto puede hacer que fallen las solicitudes o terminar el proceso de Node.js. Las secuencias de flujo permiten un anidamiento profundo con bytes mínimos (2 bytes por nivel: uno '[' y uno ']'). En la pila predeterminada de Node.js, aproximadamente 1,000–5,000 niveles de anidamiento (entrada de 2–10 KB) agotan la pila de llamadas. El umbral exacto depende del entorno (versión de Node.js, tamaño de la pila, profundidad de la pila de llamadas en la invocación). Nota: el `Parser` de la biblioteca (fase CST) utiliza un enfoque iterativo basado en pila y no se ve afectado. Solo la fase de composición/resolución utiliza recursión real de la pila de llamadas. Las tres API de análisis públicas se ven afectadas: `YAML.parse()`, `YAML.parseDocument()` y `YAML.parseAllDocuments()`. Las versiones 1.10.3 y 2.8.3 contienen un parche.
Fuentes
1Repositorio dedicado a CVE-2026-33532, que proporciona análisis y una posible prueba de concepto para una vulnerabilidad web.
Uso responsable
Utilice información sobre vulnerabilidades solo en sistemas de su propiedad o que esté autorizado a probar. Kitploit enlaza con metadatos de investigación pública y no almacena código de explotación ni cargas útiles maliciosas.