what is cross site scripting attack

what is cross site scripting attack

 इन दिनों, वेबसाइटों के बारे में सोचना अधिक सटीक है, क्योंकि ऑनलाइन आवेदन ऐसे हैं जो पुराने के स्थैतिक पृष्ठों के बजाय कई कार्यों को निष्पादित करते हैं। इस मजबूत कार्यक्षमता का अधिकांश जावास्क्रिप्ट प्रोग्रामिंग भाषा के व्यापक उपयोग के कारण है। जबकि जावास्क्रिप्ट वेबसाइटों को कुछ बहुत अच्छा करने की अनुमति देता है, यह नई और अनूठी कमजोरियों को भी प्रस्तुत करता है - क्रॉस-साइट स्क्रिप्टिंग (XSS) सबसे महत्वपूर्ण खतरों में से एक है।



क्रॉस-साइट स्क्रिप्टिंग (XSS) क्या है?

क्रॉस-साइट स्क्रिप्टिंग, जिसे आमतौर पर XSS के रूप में जाना जाता है, तब होता है जब हैकर्स पीड़ित के ब्राउज़र के भीतर दुर्भावनापूर्ण जावास्क्रिप्ट निष्पादित करते हैं।


दूरस्थ कोड निष्पादन (RCE) हमलों के विपरीत, कोड उपयोगकर्ता के ब्राउज़र में चलाया जाता है। प्रारंभिक इंजेक्शन पर, साइट आमतौर पर हमलावर द्वारा पूरी तरह से नियंत्रित नहीं होती है। इसके बजाय, बुरा अभिनेता एक वैध वेबसाइट के शीर्ष पर अपने दुर्भावनापूर्ण कोड को संलग्न करता है, अनिवार्य रूप से ब्राउज़रों को अपने मालवेयर को निष्पादित करने में जब भी साइट लोड होती है।


क्रॉस-साइट स्क्रिप्टिंग में जावास्क्रिप्ट का उपयोग

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


सर्वर-साइड भाषाओं जैसे कि PHP, आपके ब्राउज़र के अंदर जावास्क्रिप्ट कोड अन्य आगंतुकों के लिए वेबसाइट को प्रभावित नहीं कर सकता है। यह आपके अपने नेविगेटर के लिए सैंडबॉक्स किया गया है और केवल आपके ब्राउज़र विंडो के भीतर ही कार्य कर सकता है।


जबकि जावास्क्रिप्ट क्लाइंट साइड है और सर्वर पर नहीं चलता है, इसका उपयोग बैकग्राउंड रिक्वेस्ट को सर्वर से इंटरैक्ट करने के लिए किया जा सकता है। हमलावर इन पृष्ठभूमि अनुरोधों का उपयोग बिना ताज़ा किए वेब पेज पर अवांछित स्पैम सामग्री जोड़ने के लिए कर सकते हैं, क्लाइंट के ब्राउज़र के बारे में एनालिटिक्स एकत्र कर सकते हैं या असिंक्रोनस तरीके से कार्य कर सकते हैं।


क्रॉस-साइट स्क्रिप्टिंग अटैक कैसे काम करते हैं?

जब हमलावर अपने स्वयं के कोड को एक वेब पेज में इंजेक्ट करते हैं, आमतौर पर वेबसाइट के सॉफ़्टवेयर पर भेद्यता का दोहन करके पूरा किया जाता है, तो वे अपनी स्वयं की स्क्रिप्ट को इंजेक्ट कर सकते हैं, जिसे पीड़ित के ब्राउज़र द्वारा निष्पादित किया जाता है।





चूंकि पीड़ित के ब्राउज़र पेज पर जावास्क्रिप्ट चलता है, इसलिए प्रमाणित उपयोगकर्ता के बारे में संवेदनशील विवरण सत्र से चुराया जा सकता है, अनिवार्य रूप से एक बुरे अभिनेता को साइट प्रशासकों को लक्षित करने और एक वेबसाइट से पूरी तरह से समझौता करने की अनुमति देता है।


क्रॉस-साइट स्क्रिप्टिंग हमलों का एक अन्य लोकप्रिय उपयोग तब होता है जब किसी वेबसाइट के अधिकांश सार्वजनिक रूप से उपलब्ध पृष्ठों पर भेद्यता उपलब्ध होती है। इस मामले में, हमलावर अपने विज्ञापनों को फ़िशिंग प्रॉम्प्ट, या अन्य दुर्भावनापूर्ण सामग्री जोड़कर वेबसाइट के आगंतुकों को लक्षित करने के लिए अपने कोड को इंजेक्ट कर सकते हैं।


क्रॉस-साइट स्क्रिप्टिंग हमलों के प्रकार क्या हैं?

अब जब हमने मूल बातें कवर कर ली हैं, तो थोड़ा और गहरा होने दें। अपने लक्ष्यों के आधार पर, बुरे कलाकार कई तरीकों से क्रॉस-साइट स्क्रिप्टिंग का उपयोग कर सकते हैं। आइए कुछ सबसे आम प्रकार के हमलों को देखें।


1.Stored (लगातार) क्रॉस-साइट स्क्रिप्टिंग

संग्रहीत क्रॉस-साइट स्क्रिप्टिंग हमले तब होते हैं जब हमलावर एक समझौता सर्वर पर अपने पेलोड को स्टोर करते हैं, जिससे वेबसाइट अन्य आगंतुकों को दुर्भावनापूर्ण कोड वितरित करती है।


चूंकि इस पद्धति में केवल हमलावर से प्रारंभिक कार्रवाई की आवश्यकता होती है और बाद में कई आगंतुकों से समझौता कर सकते हैं, यह क्रॉस-साइट स्क्रिप्टिंग का सबसे खतरनाक और सबसे अधिक नियोजित प्रकार है।


संग्रहित क्रॉस-साइट स्क्रिप्टिंग हमलों के उदाहरणों में आपके उपयोगकर्ता नाम या ईमेल जैसे प्रोफ़ाइल फ़ील्ड शामिल हैं, जो सर्वर पर सहेजे जाते हैं और आपके खाता पृष्ठ पर प्रदर्शित होते हैं।


2.Reflected क्रॉस-साइट स्क्रिप्टिंग

रिफ्लेक्टेड क्रॉस-साइट स्क्रिप्टिंग हमले तब होते हैं जब पेलोड को ब्राउज़र से सर्वर पर भेजे गए डेटा में संग्रहीत किया जाता है।


परिलक्षित क्रॉस-साइट स्क्रिप्टिंग हमलों के उदाहरणों में शामिल हैं, जब एक हमलावर वेबसाइट की खोज या संपर्क फ़ॉर्म से भेजे गए डेटा में दुर्भावनापूर्ण स्क्रिप्ट संग्रहीत करता है।


परिलक्षित क्रॉस-साइट स्क्रिप्टिंग का एक विशिष्ट उदाहरण एक खोज फ़ॉर्म है, जहां आगंतुक सर्वर पर अपनी खोज क्वेरी भेजते हैं, और केवल वे परिणाम देखते हैं।


हमलावर आम तौर पर पीड़ितों को कस्टम लिंक भेजते हैं जो उपयोगकर्ताओं को असुरक्षित पृष्ठ की ओर निर्देशित करते हैं। इस पृष्ठ से, वे अक्सर अवधारणा के प्रमाण को ट्रिगर करने के लिए कई तरह के तरीके अपनाते हैं।




3.Self क्रॉस-साइट स्क्रिप्टिंग

स्व-क्रॉस-साइट स्क्रिप्टिंग तब होती है जब हमलावर एक भेद्यता का शोषण करते हैं जिसके लिए अत्यंत विशिष्ट संदर्भ और मैन्युअल परिवर्तनों की आवश्यकता होती है। केवल एक ही जो शिकार हो सकता है वह खुद है।


इन विशिष्ट परिवर्तनों में कुकी मान जैसी चीजें शामिल हो सकती हैं या आपकी जानकारी को एक पेलोड में सेट किया जा सकता है।


4.Blind क्रॉस-साइट स्क्रिप्टिंग

ब्लाइंड क्रॉस-साइट स्क्रिप्टिंग हमले तब होते हैं जब कोई हमलावर किसी हमले का परिणाम नहीं देख सकता है। इन हमलों में, भेद्यता आमतौर पर एक पृष्ठ पर होती है, जहां केवल अधिकृत उपयोगकर्ता ही पहुंच सकते हैं।


इस पद्धति को एक हमले को सफलतापूर्वक लॉन्च करने के लिए अधिक तैयारी की आवश्यकता होती है; यदि पेलोड विफल रहता है, तो हमलावर को सूचित नहीं किया जाएगा।


इन हमलों की सफलता दर को बढ़ाने के लिए, हैकर्स अक्सर पॉलीग्लॉट्स का उपयोग करेंगे, जो कि कई अलग-अलग परिदृश्यों में काम करने के लिए डिज़ाइन किए गए हैं, जैसे कि एक विशेषता में, सादे पाठ के रूप में, या एक स्क्रिप्ट टैग में।


एक अंधा क्रॉस-साइट स्क्रिप्टिंग अटैक wo का एक उदाहरण uld तब होगा जब एक उपयोगकर्ता नाम XSS के लिए असुरक्षित है, लेकिन केवल एक प्रशासनिक पृष्ठ से जो उपयोगकर्ताओं को प्रशासित करने के लिए प्रतिबंधित है।


5.DOM- आधारित क्रॉस-साइट स्क्रिप्टिंग

DOM- आधारित क्रॉस-साइट स्क्रिप्टिंग हमले तब होते हैं जब सर्वर स्वयं XSS के लिए असुरक्षित नहीं होता है, बल्कि पृष्ठ पर जावास्क्रिप्ट है।


चूँकि जावास्क्रिप्ट का उपयोग पृष्ठ में अन्तरक्रियाशीलता जोड़ने के लिए किया जाता है, URL में तर्क लोड किए जाने के बाद पृष्ठ को संशोधित करने के लिए उपयोग किया जा सकता है। DOM को संशोधित करके जब यह उपयोगकर्ता से प्राप्त मानों को साफ नहीं करता है, तो हमलावर पृष्ठ पर दुर्भावनापूर्ण कोड जोड़ सकते हैं।


DOM- आधारित क्रॉस-साइट स्क्रिप्टिंग हमले का एक उदाहरण होगा जब वेबसाइट URL में दिए गए डिफ़ॉल्ट एक से भाषा चयन को बदल देती है।


क्रॉस-साइट स्क्रिप्टिंग हमलों को कैसे रोकें?

हमलावर वेबसाइट की कमज़ोरियों का फायदा उठाने के लिए कई तरीके अपनाते हैं। परिणामस्वरूप, क्रॉस-साइट स्क्रिप्टिंग हमले के जोखिम को कम करने के लिए कोई एकल रणनीति नहीं है।

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


अपनी वेबसाइट की सुरक्षा के लिए, हम आपको निम्नलिखित सुरक्षात्मक उपायों के साथ अपने वेब अनुप्रयोगों को सख्त करने के लिए प्रोत्साहित करते हैं।


1.Whitelist मान

एक विशिष्ट श्वेतसूची में उपयोगकर्ता इनपुट को प्रतिबंधित करें। यह अभ्यास सुनिश्चित करता है कि केवल ज्ञात और सुरक्षित मान सर्वर पर भेजे जाएं। उपयोगकर्ता इनपुट को प्रतिबंधित करना केवल तभी काम करता है जब आप जानते हैं कि आपको कौन सा डेटा प्राप्त होगा, जैसे ड्रॉप-डाउन मेनू की सामग्री, और कस्टम उपयोगकर्ता सामग्री के लिए व्यावहारिक नहीं है।


2.Avoid और इनपुट्स में HTML प्रतिबंधित करें

जबकि HTML को समृद्ध सामग्री की आवश्यकता हो सकती है, यह विश्वसनीय उपयोगकर्ताओं तक सीमित होनी चाहिए। यदि आप इनपुट पर स्टाइलिंग और फ़ॉर्मेटिंग की अनुमति देते हैं, तो आपको मार्कडाउन जैसी सामग्री को उत्पन्न करने के लिए वैकल्पिक तरीकों का उपयोग करने पर विचार करना चाहिए।


अंत में, यदि आप HTML का उपयोग करते हैं, तो सभी असुरक्षित कोड को हटाने के लिए DOMPurify जैसे मजबूत सैनिटाइज़र का उपयोग करके इसे साफ करना सुनिश्चित करें।


3. मानों को अलग करें

जब आप किसी पृष्ठ पर उपयोगकर्ता-जनरेट की गई सामग्री का उपयोग कर रहे हों, तो यह सुनिश्चित करें कि यह उनके संबंधित संस्थाओं के साथ असुरक्षित वर्णों को प्रतिस्थापित करके HTML सामग्री में परिणाम नहीं देगा। एक नियमित चरित्र के रूप में संस्थाओं की उपस्थिति समान है, लेकिन इसका उपयोग HTML उत्पन्न करने के लिए नहीं किया जा सकता है।


4.कुकीज़ पर Use HTTP flag Only

सत्र कुकीज़ एक तंत्र है जो एक वेबसाइट को अनुरोधों के बीच एक उपयोगकर्ता को पहचानने की अनुमति देता है, और हमलावर अक्सर आपकी कुकीज़ को हटाकर व्यवस्थापक सत्र चुराते हैं। एक बार एक कुकी चोरी हो जाने के बाद, हमलावर फिर क्रेडेंशियल या अधिकृत एक्सेस के बिना अपने खाते में लॉग इन कर सकते हैं।


जावास्क्रिप्ट को कुकी की सामग्री को पढ़ने से रोकने के लिए HttpOnly कुकीज़ का उपयोग करें, इससे सत्र को चुराने के लिए हमलावर के लिए कठिन हो जाता है।


नोट: यह विधि केवल हमलावरों को कुकी पढ़ने से रोकती है। व्यवस्थापक उपयोगकर्ता के रूप में कार्य करते हुए अनुरोध भेजने के लिए हमलावर अभी भी सक्रिय ब्राउज़र सत्र का उपयोग कर सकते हैं। यह विधि केवल मुख्य पहचान तंत्र के रूप में कुकीज़ पर निर्भर होने पर भी उपयोगी है।


Use a WAF to Protect against Cross-Site Scripting Attacks

आप अपनी वेबसाइट के खिलाफ लगभग पैच हमलों के लिए एक फ़ायरवॉल का उपयोग कर सकते हैं। यह विधि दुर्भावनापूर्ण अनुरोधों से पहले कभी भी आपकी वेबसाइट तक पहुँचने से पहले XSS, RCE, या SQLi जैसे हमलों को स्वीकार करती है। डीडीओएस जैसे बड़े पैमाने पर हमलों से बचाने का भी इसका लाभ है।


हैक के बाद की कार्रवाई

क्रॉस-साइट स्क्रिप्टिंग की स्थिति में, आपकी वेबसाइट को ठीक करने के लिए कई कदम हो सकते हैं।



1 .लूप वल्नरेबल कोड

क्रॉस-साइट स्क्रिप्टिंग से उबरने में पहला कदम यह पहचानना है कि भेद्यता कहाँ स्थित है। आप विस्तृत चरणों के लिए हमारी मदद की हैक की गई वेबसाइट गाइड का उल्लेख कर सकते हैं।


2.Remove दुर्भावनापूर्ण सामग्री और बैकडोर

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


3. भेद्यता का परीक्षण करें

डेटाबेस, एप्लिकेशन और तृतीय-पक्ष घटकों में कमजोरियों का अक्सर हैकर्स द्वारा शोषण किया जाता है। एक बार जब आप कमजोर सॉफ़्टवेयर की पहचान कर लेते हैं, तो किसी अन्य आउट-ऑफ-डेट घटकों के साथ असुरक्षित कोड पर पैच और अपडेट लागू करें।


4 .अपने क्रेडेंशियल्स का उपयोग करें

जब कोई समझौता होता है, तो जैसे ही भेद्यता पैच होती है, आपके सभी पासवर्ड और एप्लिकेशन रहस्यों को बदलना महत्वपूर्ण है। यह सुनिश्चित करने के लिए अपने डेटा को साफ करके कि आप किसी डेटाबेस में कोई बदमाश व्यवस्थापक उपयोगकर्ता या बैकडोर मौजूद नहीं हैं, पुनर्निरीक्षण रोकें।


5. setएक WAF

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

conclusion

यदि आपको लगता है कि आपकी वेबसाइट क्रॉस-साइट स्क्रिप्टिंग हमले से प्रभावित हुई है और मदद की ज़रूरत है, तो हमारी वेबसाइट मालवेयर हटाने और सुरक्षा सेवाओं को आपकी हैक की गई वेबसाइट की मरम्मत और पुनर्स्थापित कर सकती है।


हमारी समर्पित घटना प्रतिक्रिया टीम और वेबसाइट फ़ायरवॉल दुर्भावनापूर्ण कॉड को सुरक्षित रूप से निकाल सकते हैं

Ankit raj

helo my name is ankit.

Post a Comment (0)
Previous Post Next Post