
Python exploit para Jenkins CVE-2024-23897: lectura arbitraria de archivos mediante el análisis de args4j en CLI, lo que permite RCE. Escanea hosts y extrae archivos sensibles de los controladores de Jenkins.
Jenkins CVE-2024-23897: Vulnerabilidad de Lectura Arbitraria de Archivos que Conduce a RCE
Jenkins utiliza la librería args4j para analizar argumentos y opciones de comandos en el controlador de Jenkins al procesar comandos CLI. Este analizador de comandos tiene 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 por defecto y Jenkins 2.441 y anteriores, LTS 2.426.2 y anteriores no la deshabilitan.
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.
Los atacantes con permiso Overall/Read pueden leer archivos completos.
Los atacantes sin permiso Overall/Read pueden leer las primeras líneas de los archivos. El número de líneas que se pueden leer depende de los comandos CLI disponibles. A la fecha de publicación de este aviso, el equipo de seguridad de Jenkins ha encontrado formas de leer las primeras tres líneas de archivos en versiones recientes de Jenkins sin tener ningún complemento (plugin) instalado, y no ha identificado ningún complemento que aumente este número de líneas.
Más información: https://www.jenkins.io/security/advisory/2024-01-24/
ejecutar : python CVE-2024-23897.py -l host.txt -f /etc/passwd
