Los responsables del mantenimiento del software de integración continua/despliegue continuo (CI/CD) de código abierto, Jenkins, han solucionado nueve fallos de seguridad, entre ellos un error crítico que, si se aprovecha con éxito, podría resultar en la ejecución remota de código (RCE).
El problema, identificado con el identificador CVE CVE-2024-23897, se describe como una vulnerabilidad de lectura de archivos arbitrarios a través de la interfaz de línea de comandos (CLI) integrada.
“Jenkins utiliza la biblioteca args4j para analizar argumentos y opciones de comandos en el controlador Jenkins cuando procesa comandos CLI”, explicaron los responsables en un aviso publicado el miércoles.
“Este analizador de comandos cuenta con una función que reemplaza un carácter @ seguido de una ruta de archivo en un argumento con el contenido del archivo (expandAtFiles). Esta función está habilitada de forma predeterminada y Jenkins 2.441 y versiones anteriores, LTS 2.426.2 y versiones anteriores no la desactivan.
“Es probable que esto cause que algunos bytes no se lean correctamente y se sustituyan por un valor de marcador de posición. Cuáles bytes pueden leerse o no depende de esta codificación de caracteres”.
El investigador de seguridad Yaniv Nizry se le atribuye el mérito de descubrir e informar sobre la falla, la cual se solucionó en Jenkins 2.442 y LTS 2.426.3 al desactivar la función del analizador de comandos.
Como solución provisional hasta que se pueda aplicar el parche, se recomienda desactivar el acceso a la interfaz de línea de comandos (CLI).
Este desarrollo ocurre casi un año después de que Jenkins abordara un par de vulnerabilidades graves de seguridad llamadas CorePlague (CVE-2023-27898 y CVE-2023-27905) que podrían resultar en la ejecución de código en sistemas específicos.