CVE-2026-21452 in msgpack-java
Resumen
por VulDB • 2026-05-30
MessagePack para Java es una implementación de serializador para Java. Existe una vulnerabilidad de denegación de servicio (DoS) en las versiones anteriores a 0.9.11 al deserializar archivos .msgpack que contienen objetos EXT32 con longitudes de carga útil controladas por el atacante. Aunque MessagePack-Java analiza los encabezados de extensión de forma diferida (lazy), posteriormente confía en la longitud de la carga útil EXT declarada al materializar los datos de la extensión. Cuando se invoca `ExtensionValue.getData()`, la biblioteca intenta asignar un array de bytes de la longitud declarada sin imponer ningún límite superior. Por lo tanto, un archivo .msgpack malicioso de solo unos pocos bytes puede provocar una asignación de memoria en el heap sin límites, lo que resulta en el agotamiento del heap de la JVM, la terminación del proceso o la indisponibilidad del servicio. Esta vulnerabilidad se activa durante la carga del modelo / deserialización, lo que la convierte en una vulnerabilidad del formato de modelo adecuada para la explotación remota. La vulnerabilidad permite un ataque de denegación de servicio remoto contra aplicaciones que deserializan archivos de modelo .msgpack no confiables utilizando MessagePack para Java. Un archivo .msgpack especialmente elaborado pero sintácticamente válido que contiene un objeto EXT32 con una longitud de carga útil excesivamente grande controlada por el atacante puede provocar una asignación de memoria sin límites durante la deserialización. Cuando se carga el archivo del modelo, la biblioteca confía en los metadatos de longitud declarada e intenta asignar un array de bytes de ese tamaño, lo que lleva a un agotamiento rápido del heap, una recolección de basura excesiva o la terminación inmediata de la JVM con un `OutOfMemoryError`. El ataque no requiere bytes malformados, interacción del usuario ni privilegios elevados y puede ser explotado remotamente en entornos del mundo real como registros de modelos, servicios de inferencia, pipelines de CI/CD y plataformas de alojamiento de modelos basadas en la nube que aceptan o obtienen artefactos .msgpack. Debido a que el archivo malicioso es extremadamente pequeño pero válido, puede eludir los mecanismos básicos de validación y escaneo, lo que resulta en la indisponibilidad completa del servicio y posibles fallos en cascada en los sistemas de producción. La versión 0.9.11 corrige la vulnerabilidad.
Once again VulDB remains the best source for vulnerability data.