
भेद्यता शीर्षक: कमांड इंजेक्शन
लेखक: Erick Duarte
संस्करण: < 3.2.5-2
यह भेद्यता तब उत्पन्न होती है जब कार्य प्रबंधक मॉड्यूल का उपयोग क्रोन प्रोफ़ाइल के साथ किया जाता है। इस भेद्यता का शोषण करने के लिए, हमें OS के एक विशिष्ट फ़ोल्डर में एक स्क्रिप्ट रखनी होगी। वह फ़ोल्डर "/var/lib/vitalpbx/scripts" है।
तो, जिज्ञासावश, मैंने Burp का उपयोग करके यह विश्लेषण करना शुरू किया कि सर्वर को क्या भेजा जा रहा था। ऐसा करने के लिए, मैंने हर मिनट निष्पादित करने के लिए एक क्रोन प्रोफ़ाइल बनाई।

इसके बाद, मैंने कार्य प्रबंधक बनाने के लिए आगे बढ़ा।

स्क्रिप्ट फ़ील्ड में, मैंने देखा कि यह फ़ाइल नाम पास कर रहा था। इसलिए, मैंने एक base64-एन्कोडेड रिवर्स शेल पेलोड (सिर्फ विशेष वर्णों के साथ त्रुटियों से बचने के लिए) डालने का निर्णय लिया और इसे भेज दिया।

फिर, मैंने सेटिंग्स लागू करने के लिए POST अनुरोध भेजा।

और यह रहा, हमें शेल मिल गया।

मैं समझता हूँ कि अपेक्षाकृत उच्च स्तर का विशेषाधिकार आवश्यक है, और यह एक विशिष्ट निर्देशिका में स्क्रिप्ट होने पर भी निर्भर करता है। VitalPBX में, कई उपयोगकर्ता बनाना और विभिन्न प्रकार की अनुमतियाँ प्रदान करना संभव है। यदि ये अनुमतियाँ गलत तरीके से कॉन्फ़िगर की गईं तो क्या होगा? इसके अतिरिक्त, एक Tenant बनाने का विकल्प भी है। यदि इनमें से कोई Tenant इस भेद्यता का शोषण करने में सफल हो जाता है, तो वे संभावित रूप से सर्वर तक पूर्ण पहुँच प्राप्त कर सकते हैं, जिसमें अन्य Tenant भी शामिल हैं।
मुझे आशा है कि मेरे निष्कर्ष सुरक्षा समुदाय में योगदान देंगे, और मुझे विश्वास है कि VitalPBX आवश्यक सुधार करेगा।