Si usas Zod para validar datos en tu aplicación, conviene prestar atención: un aviso de seguridad publicado el 1 de octubre de 2026 describe una falla que puede agotar la memoria del servidor cuando se valida un array muy grande sin límite de tamaño.
¿Qué es la vulnerabilidad en Zod?
La falla se registró como CVE-2023-54404 y afecta a Zod hasta la versión 4.6.5, según la descripción del aviso. Cuando un schema de array no tiene límite de tamaño, la lógica handleArrayResult de $ZodArray guarda un error de validación por cada elemento que falla, sin tope y sin detenerse antes. Si alguien envía un array enorme e inválido, esos errores se acumulan hasta agotar la memoria, y el proceso puede caerse.
¿Por qué es importante?
El aviso clasifica la falla como de severidad alta, con una puntuación de 8,2 en CVSS 4.0. El ataque puede hacerse por la red, sin iniciar sesión y sin ninguna acción del usuario. El impacto está en la disponibilidad: la aplicación puede quedar fuera de servicio, lo que se conoce como denegación de servicio. No se menciona fuga ni alteración de datos.
Un detalle: hasta la fecha de este artículo, el aviso figura como aún no revisado por GitHub y no indica una versión corregida.
¿Cómo proteger tus aplicaciones?
Mientras el aviso no anuncie una corrección oficial, la medida más directa es no dejar arrays sin límite en los datos que llegan desde fuera de la aplicación:
- Define un tamaño máximo en los schemas de array que reciben datos de usuarios o de otras APIs, con el método .max() de Zod y un valor que tenga sentido para tu caso.
- Limita el tamaño del cuerpo de las solicitudes en tu servidor o API, para que un payload gigante ni siquiera llegue a la validación.
- Monitorea el uso de memoria de los servicios que validan datos externos.
- Sigue el aviso en GitHub y las nuevas versiones de Zod para actualizar en cuanto se anuncie una corrección.
Preguntas frecuentes
¿Mi aplicación está en riesgo?
El mayor riesgo está en servicios que validan con Zod datos enviados por terceros, como el cuerpo de las solicitudes de una API, usando arrays sin tamaño máximo. Revisa tus schemas y la versión de Zod instalada en el proyecto.
¿Ya existe una versión corregida?
El aviso consultado no indica una versión corregida. Sigue la página del aviso y el repositorio de Zod para saber cuándo haya una.
¿Qué tan grave es la falla?
Alta, con una puntuación de 8,2 en CVSS 4.0, y el impacto está en la disponibilidad del sistema.
¿Dónde encuentro más detalles?
En GitHub Advisory Database y en la base del NVD, con el identificador CVE-2023-54404.
Próximos pasos
Abre los schemas de tu proyecto, busca arrays que reciben datos externos y verifica que todos tengan un límite de tamaño. Si quieres profundizar en validación de datos y seguridad en el desarrollo web, la plataforma de cursos de Hcode tiene contenidos para estudiar a tu ritmo.
Fuente
Zod can exhaust memory while validating oversized constrained collections, GitHub Advisory Database (en inglés), 1 de octubre de 2026.
