
Python-эксплойт для Jenkins CVE-2024-23897: произвольное чтение файлов через разбор CLI args4j, позволяющее RCE. Сканирует хосты и извлекает конфиденциальные файлы с контроллеров Jenkins.
Jenkins CVE-2024-23897: уязвимость чтения произвольных файлов, ведущая к RCE
Jenkins использует библиотеку args4j для разбора аргументов команд и параметров на контроллере Jenkins при обработке CLI-команд. Этот парсер команд имеет функцию, которая заменяет символ @, за которым следует путь к файлу в аргументе, содержимым файла (expandAtFiles). Эта функция включена по умолчанию, и Jenkins 2.441 и более ранние версии, LTS 2.426.2 и более ранние версии не отключают её.
Это позволяет злоумышленникам читать произвольные файлы в файловой системе контроллера Jenkins, используя кодировку символов по умолчанию процесса контроллера Jenkins.
Злоумышленники с разрешением Overall/Read могут читать файлы целиком.
Злоумышленники без разрешения Overall/Read могут читать первые несколько строк файлов. Количество строк, которые можно прочитать, зависит от доступных CLI-команд. На момент публикации данного уведомления команда безопасности Jenkins нашла способы чтения первых трёх строк файлов в последних выпусках Jenkins без установленных плагинов и не выявила ни одного плагина, который мог бы увеличить это количество строк.
Дополнительная информация : https://www.jenkins.io/security/advisory/2024-01-24/
запуск : python CVE-2024-23897.py -l host.txt -f /etc/passwd
