Grave vulnerabilidad en Jenkins expone 45,000 servidores a riesgos de ejecución remota de código

Alrededor de 45,000 servidores Jenkins expuestos en Internet permanecen sin parches contra una grave vulnerabilidad recientemente revelada que permite la lectura arbitraria de archivos, y para la cual ahora hay código de prueba de explotación disponible públicamente. CVE-2024-23897 afecta a la interfaz de línea de comandos (CLI) incorporada en Jenkins y puede conducir a la ejecución remota de código en sistemas afectados. El equipo de infraestructura de Jenkins reveló la vulnerabilidad y lanzó actualizaciones de software el 24 de enero.

Desde entonces, se ha publicado código de prueba de concepto (PoC) para la vulnerabilidad, y hay informes de atacantes que intentan explotarla activamente.

Los desarrolladores utilizan la CLI de Jenkins para acceder y gestionar Jenkins desde un script o un entorno de shell. CVE-2024-23897 está presente en una característica del analizador de comandos CLI que está habilitada de forma predeterminada en las versiones de Jenkins 2.441 y anteriores y Jenkins LTS 2.426.2 y anteriores.

“Esto permite a los atacantes leer archivos arbitrarios en el sistema de archivos del controlador de Jenkins utilizando la codificación de caracteres predeterminada del proceso del controlador de Jenkins”, dijo el equipo de Jenkins en el aviso del 24 de enero. La vulnerabilidad permite a un atacante con permisos de “Overall/Read”, algo que la mayoría de los usuarios de Jenkins requerirían, leer archivos completos. Un atacante sin ese permiso aún podría leer las primeras líneas de los archivos, según el equipo de Jenkins.

Múltiples vectores para ejecución remota de código

La vulnerabilidad también pone en riesgo archivos binarios que contienen claves criptográficas utilizadas para diversas funciones de Jenkins, como almacenamiento de credenciales, firma de artefactos, cifrado y descifrado, y comunicaciones seguras. En situaciones donde un atacante podría aprovechar la vulnerabilidad para obtener claves criptográficas de archivos binarios, se advierte que son posibles múltiples ataques, según el aviso de Jenkins. Estos incluyen ataques de ejecución remota de código (RCE) cuando está habilitada la función de URL de recurso raíz; RCE a través de la cookie “Recordarme”; RCE a través de ataques de scripting entre sitios; y ataques de ejecución remota de código que eluden las protecciones contra falsificación de solicitudes entre sitios, según el aviso.

Cuando los atacantes pueden acceder a claves criptográficas en archivos binarios a través de CVE-2024-23897, también pueden descifrar secretos almacenados en Jenkins, eliminar datos o descargar un volcado de memoria Java, dijo el equipo de Jenkins.

Investigadores de SonarSource, quienes descubrieron la vulnerabilidad y la informaron al equipo de Jenkins, describieron la vulnerabilidad como permitir que incluso usuarios no autenticados tengan al menos permisos de lectura en Jenkins bajo ciertas condiciones. Esto puede incluir tener habilitada la autorización en modo heredado o si el servidor está configurado para permitir el acceso de lectura anónima, o cuando está habilitada la función de registro. Yaniv Nizry, el investigador de seguridad de Sonar que descubrió la vulnerabilidad, confirma que otros investigadores han podido reproducir la falla y tienen un PoC funcional.

“Dado que es posible explotar la vulnerabilidad sin autenticación, hasta cierto punto, es muy fácil descubrir sistemas vulnerables”, señala Nizry. “En cuanto a la explotación, si un atacante está interesado en elevar la lectura arbitraria de archivos a la ejecución de código, requeriría un mayor conocimiento de Jenkins y de la instancia específica. La complejidad de la escalada depende del contexto”.

Las nuevas versiones de Jenkins 2.442 y la versión LTS 2.426.3 abordan la vulnerabilidad. Se recomienda encarecidamente a los administradores que no pueden actualizar de inmediato que deshabiliten el acceso CLI para evitar la explotación, según el aviso. “Hacerlo no requiere reiniciar Jenkins”.

Sarah Jones, analista de investigación de inteligencia de amenazas cibernéticas en Critical Start, dice que las organizaciones que utilizan Jenkins harían bien en no ignorar la vulnerabilidad. “Los riesgos incluyen robo de datos, compromiso del sistema, interrupción de pipelines y la posibilidad de versiones de software comprometidas”, dice Jones.

Una razón de preocupación es el hecho de que las herramientas de DevOps como Jenkins a menudo pueden contener datos críticos y sensibles que los desarrolladores pueden traer de entornos de producción al construir o desarrollar nuevas aplicaciones. Un caso ocurrió el año pasado cuando un investigador de seguridad encontró un documento con 1.5 millones de individuos en la lista de no volar de la TSA sin protección en un servidor Jenkins, perteneciente a CommuteAir en Ohio.

“La aplicación de parches inmediata es crucial; actualizar a las versiones de Jenkins 2.442 o posterior (no LTS) o 2.427 o posterior (LTS) aborda CVE-2024-23897”, dice Jones. Como práctica general, recomienda que las organizaciones de desarrollo implementen un modelo de privilegios mínimos para limitar el acceso, y también realicen escaneos de vulnerabilidades y monitoreo continuo de actividades sospechosas. Jones agrega: “Además, promover la conciencia de seguridad entre desarrolladores y administradores fortalece la postura general de seguridad”.

 

#Vulnerabilidad #Jenkins #CVE #PoC

Related Posts
Devel Group
Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.