Vulnerabilidad en XStream (CVE-2022-41966)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-120
Copia de búfer sin comprobación del tamaño de entrada (Desbordamiento de búfer clásico)
Fecha de publicación:
28/12/2022
Última modificación:
23/05/2025
Descripción
XStream serializa objetos Java a XML y viceversa. Las versiones anteriores a la 1.4.20 pueden permitir que un atacante remoto finalice la aplicación con un error de desbordamiento de pila, lo que resulta en una denegación de servicio únicamente mediante la manipulación del flujo de entrada procesado. El ataque utiliza la implementación del código hash para colecciones y mapas para forzar el cálculo hash recursivo provocando un desbordamiento de la pila. Este problema se solucionó en la versión 1.4.20, que maneja el desbordamiento de la pila y genera una excepción InputManipulationException. Una posible solución para los usuarios que solo usan HashMap o HashSet y cuyo XML los refiere solo como mapa o conjunto predeterminado, es cambiar la implementación predeterminada de java.util.Map y java.util según el ejemplo de código en el aviso al que se hace referencia. Sin embargo, esto implica que a su aplicación no le importa la implementación del mapa y todos los elementos son comparables.
Impacto
Puntuación base 3.x
8.20
Gravedad 3.x
ALTA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:xstream:xstream:*:*:*:*:*:*:*:* | 1.4.20 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/x-stream/xstream/security/advisories/GHSA-j563-grx4-pjpv
- https://x-stream.github.io/CVE-2022-41966.html
- https://github.com/x-stream/xstream/security/advisories/GHSA-j563-grx4-pjpv
- https://security.netapp.com/advisory/ntap-20230216-0005/
- https://x-stream.github.io/CVE-2022-41966.html