Jenkins ha lanzado un aviso de seguridad donde informa la corrección de 5 vulnerabilidades de riesgo alto, 5 de riesgo medio y 2 de riesgo bajo. A continuación se detallan las 10 vulnerabilidades de riesgo alto y medio que han sido identificadas como:
El CVE-2020-2160, se da debido a que el software vulnerable utiliza diferentes representaciones de rutas de solicitudes URL, lo que permitiría a un atacante remoto crear una URL especialmente diseñada para deshabilitar la protección contra ataques CSRF (Cross-site request forgery).
Por otro lado los CVE-2020-2166, CVE-2020-2167 y CVE-2020-2168, se dan debido a una configuración incorrecta en el analizador YAML para evitar la creación de instancias maliciosas. La explotación exitosa de esta vulnerabilidad, permitiría a un atacante la ejecución remota de código malicioso.
Mientras que el CVE-2020-2171, es debido a una configuración incorrecta del analizador XML, lo que permitiría a un atacante remoto realizar ataques del tipo XXE (XML External Entity), obteniendo así acceso a información confidencial o la posibilidad de realizar ataques DoS (Denial-of-Service).
En cuanto al CVE-2020-2161, se da debido a un control insuficiente en las etiquetas de nodo que se muestran en la validación del formulario para las expresiones de etiqueta en las páginas de configuración del trabajo, dando lugar a una vulnerabilidad conocida como XSS (Cross-site scripting) almacenado, que puede permitir a un atacante remoto inyectar código JavaScript malicioso en páginas web vulnerables, quedando almacenado en el servidor.
El CVE-2020-2162, es debido a que no se establecen encabezados del tipo Content-Security-Policy para los archivos que son cargados como parámetros de archivo en una compilación, lo que da lugar a la vulnerabilidad conocida como XSS (Cross-site scripting) almacenado.
Por otro lado el CVE-2020-2163, da lugar a la vulnerabilidad conocida como XSS (Cross-site scripting) almacenado y es debido a que se procesa de manera incorrecta el contenido HTML de los encabezados de columna de la lista de vista.
En cuanto al CVE-2020-2169, se da debido a que no se escapa correctamente los parámetros de la consulta que se muestra en un mensaje de error, dando lugar a la vulnerabilidad conocida como XSS (Cross-site scripting) reflexivo, lo que permitiría a un atacante manipular el navegador web de la víctima, cambiar la apariencia del sitio web o redirigir a una víctima a sitios de malware entre otros ataques.
Por último el CVE-2020-2170, se da debido a que no se escapa correctamente los nombres de paquetes en la tabla de paquetes obtenidos desde un servidor remoto, dando lugar a la vulnerabilidad conocida como XSS (Cross-site scripting) almacenado.
Recomendaciones:
Actualizar Jenkins Core y los plugins afectados a la última versión disponible, en este caso:
- Jenkins LTS 2.204.6 o 2.222.1;
- Jenkins weekly 2.228;
- AWS Steps Plugin 1.41;
- OpenShift Pipeline Plugin 1.0.57;
- Azure Container Service Plugin 1.0.2;
- RapidDeploy Plugin 4.2.1 y
- Queue cleanup Plugin 1.4.
Referencias: