Elementor Pro 4.2.1 और उससे पुराने वर्ज़न Forms widget के file-upload field में एक unauthenticated remote-code-execution (RCE) खामी के कारण खतरे में पड़ सकते हैं; इस समस्या को version 4.2.2 में ठीक (patch) कर दिया गया है, इसलिए पुराने कोड का उपयोग करने वाली साइटों को तुरंत अपग्रेड कर लेना चाहिए।

यह बग क्या करता है

इस भेद्यता (vulnerability) की CVSS रेटिंग 9.0 है, जिसका अर्थ है कि एक हमलावर जो असुरक्षित साइट तक पहुँच सकता है, वह बिना लॉग इन किए या कोई क्रेडेंशियल दिए सर्वर पर मनमाना (arbitrary) PHP कोड चला सकता है। समस्या Elementor Pro द्वारा अपने Forms widget में file uploads को प्रोसेस करने के तरीके में निहित है। प्लगइन दो अलग-अलग लूप चलाता है: एक जो प्रत्येक अपलोड की गई फ़ाइल को वैलिडेट करता है, और दूसरा जो फ़ाइल को वेब-एक्सेसिबल अपलोड्स डायरेक्टरी में सेव करता है।

एक हमलावर एक सिंगल रिक्वेस्ट तैयार कर सकता है जिसमें दो फ़ाइलें हों। पहली फ़ाइल को एक खाली नाम दिया जाता है, जिससे वैलिडेशन लूप उसकी जाँच करना छोड़ देता है। दूसरी फ़ाइल, जो एक दुर्भावनापूर्ण (malicious) PHP स्क्रिप्ट है, दूसरे लूप से गुजर जाती है और एक पब्लिक फ़ोल्डर में लिख दी जाती है। चूंकि Elementor Pro अपलोड की गई फ़ाइलों के नाम के लिए टाइमस्टैम्प (timestamp) का उपयोग करता है, इसलिए हमलावर फ़ाइल के नाम का अनुमान लगा सकता है और बाद में कोड चलाने के लिए उसे सीधे रिक्वेस्ट कर सकता है।

यह खामी कैसे उत्पन्न हुई

ड्यूल-लूप डिज़ाइन का उद्देश्य वैलिडेशन और स्टोरेज को स्वतंत्र रखना था, लेकिन एक साझा सैनिटी चेक (sanity check) की कमी के कारण खाली नाम वाली ट्रिक का इस्तेमाल करना संभव हो गया। यह बग हर उस इंस्टॉलेशन को प्रभावित करता है जो Forms widget के file-upload field का उपयोग करता है, चाहे साइट मालिक ने आगंतुकों (visitors) के लिए वह फीचर इनेबल किया हो या नहीं।

किसे खतरा है

कोई भी WordPress साइट जिसमें Elementor Pro 4.2.1 या उससे पहले का कोई वर्ज़न इंस्टॉल है, वह खतरे में है। चूंकि इस एक्सप्लॉइट (exploit) के लिए ऑथेंटिकेशन की आवश्यकता नहीं होती है, इसलिए वे साइटें भी असुरक्षित हैं जो एडमिन एक्सेस को प्रतिबंधित करती हैं। सफल शोषण (exploitation) हमलावर को होस्टिंग एनवायरनमेंट पर पूरा नियंत्रण दे देता है, जिससे डेटा चोरी, साइट डिफेसमेंट (defacement), या रैनसमवेयर (ransomware) फैलाने का रास्ता खुल जाता है।

अब क्या करें

  • WordPress CLI कमांड के साथ इंस्टॉल किए गए वर्ज़न को सत्यापित करें:

    wp plugin list --name=elementor-pro --field=version
    
  • यदि आउटपुट 4.2.1 या उससे कम दिखाता है, तो तुरंत 4.2.2 या उसके बाद के वर्ज़न पर अपडेट करें। यह अपडेट दोषपूर्ण अपलोड लॉजिक को एक सिंगल, एटॉमिक वैलिडेशन-एंड-सेव रूटीन से बदल देता है जो खाली नाम वाले बाईपास को रोकता है।

  • अपग्रेड करने के बाद, अपलोड्स डायरेक्टरी में किसी भी ऐसी PHP फ़ाइल की जाँच करें जो प्लगइन द्वारा उपयोग किए जाने वाले टाइमस्टैम्प पैटर्न से मेल खाती हो और उन्हें हटा दें।

  • जब तक पैच लागू नहीं हो जाता, तब तक सार्वजनिक फ़ॉर्म पर file-upload field को डिसेबल करने पर विचार करें, विशेष रूप से हाई-ट्रैफ़िक वाली साइटों पर।

प्रतिवाद (Counterpoint)

कुछ डेवलपर्स का तर्क है कि जोखिम सीमित है क्योंकि इस एक्सप्लॉइट के लिए Forms widget को एक ऐसे file-upload field के साथ कॉन्फ़िगर करना आवश्यक है जो सार्वजनिक रूप से सुलभ हो। हालांकि, कई Elementor-आधारित साइटें संपर्क, नौकरी के आवेदन, या यूजर-जेनरेटेड कंटेंट के लिए ऐसे फ़ॉर्म का उपयोग करती हैं, जिससे यह स्थिति इतनी सामान्य हो जाती है कि इस भेद्यता को गंभीर (critical) माना जाता है।

आगे क्या देखें

सुरक्षा शोधकर्ताओं को उम्मीद है कि जैसे-जैसे अधिक साइटें शोषण के प्रयासों की रिपोर्ट करेंगी, अतिरिक्त एडवाइजरी नोट्स सामने आएंगे। किसी भी फॉलो-अप पैच या शमन (mitigation) के लिए आधिकारिक Elementor संचार और प्रतिष्ठित भेद्यता डेटाबेस पर नज़र रखें।

निष्कर्ष: Elementor Pro 4.2.1 और उससे पुराने वर्ज़न में RCE खामी एक हाई-सेवेरिटी, नो-लॉगिन अटैक वेक्टर है। 4.2.2 पर अपडेट करना ही एकमात्र विश्वसनीय बचाव है; इसमें देरी करना आपके सर्वर और डेटा को गंभीर जोखिम में डालता है।