QloApps 1.7.0 और उससे पहले के संस्करणों में होटल समीक्षा सुविधा में अप्रतिबंधित फ़ाइल अपलोड दूरस्थ अनधिकृत हमलावरों को रिमोट कोड निष्पादन प्राप्त करने की अनुमति देता है।
🎯 प्रभावित एंडपॉइंट
/module/qlohotelreview/default
⚠️ मूल कारण
भेद्यता निम्न कारणों से मौजूद है:
फ़ाइल एक्सटेंशन सत्यापन का अभाव।
अपलोड की गई फ़ाइलों को सर्वर द्वारा सीधे निष्पादित किया जाना।
एंडपॉइंट पर कोई प्रमाणीकरण या प्राधिकरण जाँच लागू न होना।
🔥 प्रभाव
एक सफल शोषण हमलावर को निम्न की अनुमति देता है:
मनमाने OS कमांड निष्पादित करना।
संवेदनशील सर्वर फ़ाइलों को पढ़ना/लिखना/हटाना।
डेटाबेस क्रेडेंशियल तक पहुँच प्राप्त करना।
आंतरिक नेटवर्क सेवाओं की ओर विस्तार (pivot) करना।
होस्टिंग सर्वर से पूरी तरह समझौता करना।
यह भेद्यता गोपनीयता, अखंडता और उपलब्धता (CIA Triad) के पूर्ण नुकसान की ओर ले जाती है।
🛠️ प्रूफ ऑफ कॉन्सेप्ट (PoC) QloApps संस्करण 1.7.0 पर
हमें भेद्य एंडपॉइंट पर अनुरोध करने के लिए एक मान्य id_order और Ajax टोकन की आवश्यकता होती है। id_order के लिए हम 1 से शुरू करके इसे मैन्युअल रूप से ब्रूटफोर्स करते हैं, या हम एक अतिथि खाता बनाकर कमरा बुक करते हैं ताकि यह id_order प्राप्त हो सके। Ajax टोकन हम किसी भी होटल रूम पेज से प्राप्त कर सकते हैं।
1. Ajax टोकन प्राप्त करना
2. होटल की समीक्षा करें और अपना निर्मित image+php वेब शेल अपलोड करें।
3. रिमोट कोड निष्पादन ट्रिगर करना
हम अपना अपलोड किया गया वेब शेल https://target.com/modules/qlohotelreview/views/img/review/<id_order>/1.php पर पा सकते हैं।