Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en MessagePack para Java (CVE-2026-21452)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-400 Consumo de recursos no controlado (Agotamiento de recursos)
Fecha de publicación:
02/01/2026
Última modificación:
05/02/2026

Descripción

MessagePack para Java es una implementación de serializador para Java. Una vulnerabilidad de denegación de servicio existe en versiones anteriores a la 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 perezosa, luego confía en la longitud de carga útil EXT declarada al materializar los datos de la extensión. Cuando se invoca ExtensionValue.getData(), la biblioteca intenta asignar una matriz de bytes de la longitud declarada sin imponer ningún límite superior. Un archivo .msgpack malicioso de solo unos pocos bytes puede, por lo tanto, desencadenar una asignación de pila ilimitada, lo que resulta en el agotamiento de la pila de la JVM, la terminación del proceso o la indisponibilidad del servicio. Esta vulnerabilidad se desencadena durante la carga / deserialización del modelo, lo que la convierte en una vulnerabilidad de formato de modelo adecuada para la explotación remota. La vulnerabilidad permite un ataque remoto de denegación de servicio contra aplicaciones que deserializan archivos de modelo .msgpack no confiables utilizando MessagePack para Java. Un archivo .msgpack especialmente diseñado pero sintácticamente válido que contiene un objeto EXT32 con una longitud de carga útil excesivamente grande y controlada por el atacante puede desencadenar una asignación de memoria ilimitada durante la deserialización. Cuando se carga el archivo del modelo, la biblioteca confía en los metadatos de longitud declarada e intenta asignar una matriz de bytes de ese tamaño, lo que lleva a un rápido agotamiento de la pila, 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 o privilegios elevados y puede explotarse de forma remota 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 recuperan 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 una indisponibilidad completa del servicio y posibles fallas en cascada en los sistemas de producción. La versión 0.9.11 corrige la vulnerabilidad.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:msgpack:messagepack:0.9.10:*:*:*:*:java:*:*