वर्डप्रेस AMP प्लगइन शोषित
यह लेख वर्डप्रेस AMP प्लगइन के पुराने संस्करणों (संस्करण 0.9.97.20 और नीचे) में कोड इंजेक्शन भेद्यता पर चर्चा करेगा। हम बताते हैं कि AMP क्या हैं और वर्डप्रेस AMP प्लगइन में एक शोषक भेद्यता कैसे है।
त्वरित मोबाइल पेज (AMP) - एक संक्षिप्त परिचय
AMP मोबाइल उपयोगकर्ताओं के लिए वेबसाइट के प्रदर्शन को नाटकीय रूप से बढ़ाने के उद्देश्य से Google की एक परियोजना वेबसाइट तकनीक है। परियोजना वेबसाइट के अनुसार, AMP एक ओपन-सोर्स लाइब्रेरी है जो वेब पेज बनाने का एक आसान तरीका प्रदान करती है जो उपयोगकर्ताओं के लिए निकट-त्वरित रूप से लोड होते हैं। AMP पेज वेब पेज की तरह काम करते हैं जिन्हें आप लिंक कर सकते हैं और आपके द्वारा नियंत्रित होते हैं।
AMP पेज 3 घटकों से बने होते हैं:
- AMP HTML: AMP पेज के लिए HTML थोड़ा अलग होता है कुछ प्रतिबंधों के साथ ताकि साइट खुलने पर सभी सुविधाओं को लोड करने की आवश्यकता न हो।
- AMP JS: यह मुख्य घटक साइट खुलने पर सभी संसाधनों को लोड करने के लिए जिम्मेदार है, सभी इनबाउंड सामग्री को अतुल्यकालिक बनाकर, ताकि पेज में कोई भी सामग्री बाहरी सामग्री को रेंडर होने से ब्लॉक न कर सके।
- AMP कैश: यह घटक सभी वैध AMP दस्तावेजों को वितरित करने के लिए एक प्रॉक्सी-आधारित कंटेंट डिलीवरी नेटवर्क है। सभी दस्तावेज, JS फ़ाइलें और छवियां उसी मूल से लोड होती हैं जो अधिकतम दक्षता सुनिश्चित करने के लिए HTTP 2.0 का उपयोग कर रहा है।
AMP for WP प्लगइन में कोड इंजेक्शन भेद्यता
प्रश्न में प्लगइन "AMP for WP - त्वरित मोबाइल पेज" है। यह प्लगइन मोबाइल प्लेटफॉर्म पर तेज लोडिंग समय के लिए हमारे पेजों को त्वरित मोबाइल पेज प्रारूप में प्रस्तुत करने में मदद करता है। प्लगइन के पुराने संस्करणों (संस्करण 0.9.97.20 और नीचे) में मूल भेद्यता टूटी हुई प्रमाणीकरण और सत्र प्रबंधन है।
ये विभिन्न शोषण जैसे फ़ाइल इंजेक्शन, बैकडोर फ़ाइल डाउनलोडिंग (wp-config.php सहित), DDoS भेद्यता, डेटाबेस अपग्रेडिंग, विकल्प और पोस्ट-मेटाडेटा ओवरराइटिंग, बैंडविड्थ शोषण (पूर्ण WP मीडिया-लाइब्रेरी डाउनलोड), और अनफ़िल्टर्ड वर्डप्रेस पोस्ट इंजेक्शन के कारण होने के लिए पाए गए हैं जो भेद्यता का लाभ उठाते हुए पाए गए हैं। कोड इंजेक्शन भेद्यता कुकीज़ और ब्राउज़र-साइड स्क्रिप्ट जैसे विभिन्न तरीकों से वेबसाइट में दुर्भावनापूर्ण कोड इंजेक्ट करती है। यह उन्हें संवेदनशील जानकारी चुराने या डेटा उल्लंघन का कारण बनने में सक्षम बनाता है।
यह क्यों होता है?
यह इसलिए होता है क्योंकि हमारे सत्र प्रबंधन संपत्ति ठीक से सुरक्षित नहीं हैं। यह तब होता है यदि:
- उपयोगकर्ता प्रमाणीकरण क्रेडेंशियल्स हैशिंग या एन्क्रिप्शन का उपयोग करके संग्रहीत करते समय सुरक्षित नहीं हैं।
- कमजोर खाता प्रबंधन कार्यों (जैसे, खाता निर्माण, पासवर्ड बदलना/पुनर्प्राप्त करना और कमजोर सत्र IDs) के माध्यम से क्रेडेंशियल्स का अनुमान लगाया या ओवरराइट किया जा सकता है।
- सत्र IDs URL में उजागर होते हैं (जैसे, URL पुनर्लेखन)।
- सत्र IDs सत्र निर्धारण हमलों के प्रति संवेदनशील हैं।
- सत्र IDs या उपयोगकर्ता सत्र या प्रमाणीकरण टोकन, विशेष रूप से सिंगल साइन-ऑन (SSO) टोकन, लॉगआउट के दौरान ठीक से अमान्य नहीं किए जाते हैं।
- सफल लॉगिन के बाद सत्र IDs घुमाए नहीं जाते हैं।
- पासवर्ड, सत्र IDs, और अन्य क्रेडेंशियल्स असुरक्षित कनेक्शन पर भेजे जाते हैं
इस भेद्यता को सामान्य कमजोरी गणना सूची में CWE-287 के रूप में वर्गीकृत किया गया है।
इस भेद्यता का संभावित परिणाम अनपेक्षित उपयोगकर्ताओं के लिए संवेदनशील संसाधनों या कार्यक्षमता का जोखिम शामिल है। इसलिए हमलावर संवेदनशील जानकारी तक पहुंच प्राप्त करते हैं और हमारी वेबसाइटों पर मनमाना कोड भी निष्पादित कर सकते हैं। साथ ही, यह विशेष प्लगइन भेद्यता उन वेबसाइटों के लिए एक महत्वपूर्ण मुद्दा है जो उपयोगकर्ता पंजीकरण की अनुमति देती हैं।
शमन रणनीति
भेद्यता से सुरक्षित रहने के लिए सबसे सरल शमन रणनीति है:
- नवीनतम वर्डप्रेस AMP प्लगइन में अपडेट करें (संस्करण 0.9.97.20 के बाद जारी)
- भेद्यता हल होने तक वर्तमान प्लगइन को अक्षम करें
अंतिम लेकिन कम नहीं, यदि आप चाहते हैं कि हम आपके AMP सक्षम साइट के लिए भेद्यता को देखें, तो हमारी वेबसाइट पर जाकर हमें बताएं।
नोट: प्रभावित प्लगइन को हाल ही में कमजोर कोड के कारण वर्डप्रेस प्लगइन लाइब्रेरी से अस्थायी रूप से हटा दिया गया था, लेकिन न तो इसके डेवलपर और न ही वर्डप्रेस टीम ने प्लगइन में सटीक मुद्दे का खुलासा किया।