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

Vulnerabilidad en el análisis de YAML con SnakeYaml en OneDev (CVE-2021-21249)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-502 Deserialización de datos no confiables
Fecha de publicación:
15/01/2021
Última modificación:
26/04/2022

Descripción

OneDev es una plataforma devops todo en uno. En OneDev versiones anteriores a 4.0.3, Se presenta un problema relacionado con el análisis de YAML que puede conllevar a una ejecución de código remota posterior a la autenticación. Para analizar y procesar archivos YAML, OneDev usa SnakeYaml que por defecto (cuando no usa "SafeConstructor") permite la instanciación de clases arbitrarias. Podemos aprovechar eso para ejecutar código arbitrario creando instancias de clases como "javax.script.ScriptEngineManager" y usando "URLClassLoader" para cargar el proveedor del motor de script, resultando en la instanciación de una clase controlada por el usuario. Para obtener un ejemplo completo, consulte la GHSA referenciada. Este problema fue abordado en la versión 4.0.3, al permitir que determinadas clases conocidas sean deserializadas

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:onedev_project:onedev:*:*:*:*:*:*:*:* 4.0.3 (excluyendo)