वेबसाइटों और ऐप्स को अपना पूरा उद्देश्य पूरा करने के लिए अक्सर उपयोगकर्ता इनपुट की आवश्यकता होती है। यदि कोई वेबसाइट उपयोगकर्ताओं को सदस्यता लेने की अनुमति देती है, तो उपयोगकर्ताओं को अपना ईमेल पता प्रदान करने में सक्षम होना चाहिए। और ऑनलाइन खरीदारी के लिए स्पष्ट रूप से भुगतान विवरण के इनपुट की आवश्यकता होती है।
हालाँकि, उपयोगकर्ता इनपुट के साथ समस्या यह है कि यह किसी हैकर को वेबसाइट या ऐप को गलत व्यवहार करने के प्रयास में कुछ दुर्भावनापूर्ण दर्ज करने की अनुमति देता है। इससे बचाव के लिए, कोई भी सिस्टम जो उपयोगकर्ता इनपुट प्रदान करता है, उसे इनपुट सत्यापन की आवश्यकता होती है।
तो इनपुट सत्यापन क्या है और यह कैसे काम करता है?
इनपुट सत्यापन क्या है?
इनपुट सत्यापन इनपुट का विश्लेषण करने और अनुपयुक्त माने जाने वाले को अस्वीकार करने की प्रक्रिया है। इनपुट सत्यापन के पीछे विचार यह है कि केवल विशिष्ट मानदंडों को पूरा करने वाले इनपुट की अनुमति देकर, किसी हमलावर के लिए सिस्टम को नुकसान पहुंचाने के लिए डिज़ाइन किए गए इनपुट में प्रवेश करना असंभव हो जाता है।
इनपुट सत्यापन का उपयोग किसी भी वेबसाइट या एप्लिकेशन पर किया जाना चाहिए जो उपयोगकर्ता इनपुट की अनुमति देता है। यहां तक कि अगर कोई वेबसाइट या ऐप कोई गोपनीय जानकारी संग्रहीत नहीं करता है, तो अमान्य इनपुट की अनुमति देने से भी उपयोगकर्ता अनुभव संबंधी समस्याएं हो सकती हैं।
इनपुट सत्यापन क्यों महत्वपूर्ण है?
इनपुट सत्यापन दो कारणों से महत्वपूर्ण है, अर्थात् उपयोगकर्ता अनुभव और सुरक्षा।
प्रयोगकर्ता का अनुभव
उपयोगकर्ता अक्सर अमान्य इनपुट दर्ज करते हैं, इसलिए नहीं कि वे किसी वेबसाइट या ऐप पर हमला करने की कोशिश कर रहे हैं, बल्कि इसलिए कि उन्होंने गलती की है। कोई उपयोगकर्ता किसी शब्द की गलत वर्तनी कर सकता है, या गलत जानकारी प्रदान कर सकता है, जैसे गलत बॉक्स में अपना उपयोगकर्ता नाम दर्ज करना या पुराना पासवर्ड आज़माना। जब ऐसा होता है, तो इनपुट सत्यापन का उपयोग उपयोगकर्ता को उनकी त्रुटि के बारे में सूचित करने के लिए किया जा सकता है, जिससे वे इसे जल्दी से ठीक कर सकें।
इनपुट सत्यापन उन परिदृश्यों को भी रोकता है जहां साइन-अप और बिक्री खो जाती है क्योंकि एक उपयोगकर्ता को सूचित नहीं किया जाता है और इसलिए यह मानता है कि सही इनपुट प्रदान किया गया है जब यह नहीं दिया गया है।
सुरक्षा
इनपुट सत्यापन एक वेबसाइट या एप्लिकेशन के खिलाफ किए जा सकने वाले हमलों की एक विस्तृत श्रृंखला को रोकता है। ये साइबर हमले व्यक्तिगत जानकारी की चोरी का कारण बन सकते हैं, अन्य घटकों तक अनधिकृत पहुंच की अनुमति दे सकते हैं, और/या किसी वेबसाइट/एप्लिकेशन को कार्य करने से रोक सकते हैं।
इनपुट सत्यापन की चूक का पता लगाना भी आसान है। हमलावर बड़ी मात्रा में वेबसाइटों पर अमान्य इनपुट दर्ज करने के लिए स्वचालित प्रोग्राम का उपयोग कर सकते हैं और यह निर्धारित कर सकते हैं कि वेबसाइटें कैसे प्रतिक्रिया देंगी। इसके बाद वे किसी भी ऐसी वेबसाइट पर मैन्युअल हमले कर सकते हैं जो सुरक्षित नहीं हैं।
इसका मतलब यह है कि इनपुट सत्यापन की कमी न केवल एक महत्वपूर्ण भेद्यता है; यह एक भेद्यता है जो अक्सर पाई जाएगी और इसलिए अक्सर हैक कर सकती है।
इनपुट सत्यापन हमले क्या हैं?
एक इनपुट सत्यापन हमला कोई भी हमला होता है जिसमें उपयोगकर्ता इनपुट फ़ील्ड में दुर्भावनापूर्ण इनपुट जोड़ना शामिल होता है। कई अलग-अलग प्रकार के इनपुट सत्यापन हमले हैं जो अलग-अलग काम करने का प्रयास करते हैं।
बफ़र अधिकता
बफर ओवरफ्लो तब होता है जब सिस्टम में बहुत अधिक जानकारी जोड़ी जाती है। यदि इनपुट सत्यापन का उपयोग नहीं किया जाता है, तो हमलावर को जितनी चाहें उतनी जानकारी जोड़ने से रोक नहीं सकता है। इसे ए कहा जाता है बफर अतिप्रवाह हमला. यह सिस्टम को काम करना बंद कर सकता है और/या वर्तमान में संग्रहीत जानकारी को हटा सकता है।
एसक्यूएल इंजेक्षन
SQL इंजेक्शन इनपुट फ़ील्ड में SQL क्वेरी जोड़ने की प्रक्रिया है. यह किसी वेब फ़ॉर्म में SQL क्वेरी जोड़ने या URL में SQL क्वेरी जोड़ने का रूप ले सकता है। लक्ष्य सिस्टम को क्वेरी निष्पादित करने में धोखा देना है। SQL इंजेक्शन का उपयोग सुरक्षित डेटा तक पहुँचने और डेटा को संशोधित करने या हटाने के लिए किया जा सकता है। इसका मतलब है कि इनपुट सत्यापन किसी भी वेबसाइट या ऐप के लिए विशेष रूप से महत्वपूर्ण है जो महत्वपूर्ण जानकारी संग्रहीत करता है।
क्रॉस साइट स्क्रिप्टिंग
क्रॉस-साइट स्क्रिप्टिंग शामिल है उपयोगकर्ता इनपुट फ़ील्ड में कोड जोड़ना। यह अक्सर एक प्रतिष्ठित वेबसाइट से संबंधित URL के अंत में कोड जोड़कर किया जाता है। URL को फ़ोरम या सोशल मीडिया के माध्यम से साझा किया जा सकता है और जब कोई पीड़ित उस पर क्लिक करता है तो कोड निष्पादित हो जाता है। यह एक दुर्भावनापूर्ण वेबपेज बनाता है जो प्रतिष्ठित वेबसाइट पर होस्ट किया गया प्रतीत होता है।
विचार यह है कि यदि कोई पीड़ित लक्षित वेबसाइट पर विश्वास करता है, तो उसे उस दुर्भावनापूर्ण वेबपेज पर भी भरोसा करना चाहिए जो उससे संबंधित प्रतीत होता है। दुर्भावनापूर्ण वेबपेज को कीस्ट्रोक्स चुराने, अन्य पेजों पर रीडायरेक्ट करने और/या स्वचालित डाउनलोड शुरू करने के लिए डिज़ाइन किया जा सकता है।
इनपुट सत्यापन कैसे लागू करें
इनपुट सत्यापन को लागू करना मुश्किल नहीं है। आपको केवल यह पता लगाने की आवश्यकता है कि अमान्य इनपुट को रोकने के लिए कौन से नियम आवश्यक हैं और फिर उन्हें सिस्टम में जोड़ें।
सभी डेटा इनपुट लिखें
सभी संभावित उपयोगकर्ता इनपुट की सूची बनाएं। इसके लिए आपको सभी उपयोगकर्ता रूपों को देखने और अन्य प्रकार के इनपुट जैसे यूआरएल पैरामीटर पर विचार करने की आवश्यकता होगी।
नियम बनाएँ
एक बार आपके पास सभी डेटा इनपुट की एक सूची हो जाने के बाद, आपको ऐसे नियम बनाने चाहिए जो तय करें कि कौन से इनपुट स्वीकार्य हैं। लागू करने के लिए यहां कुछ सामान्य नियम दिए गए हैं।
- श्वेतसूचीकरण: केवल विशिष्ट वर्णों को इनपुट करने की अनुमति दें।
- ब्लैकलिस्टिंग: विशिष्ट वर्णों को इनपुट होने से रोकें।
- प्रारूप: केवल उन इनपुटों को अनुमति दें जो किसी विशेष प्रारूप का पालन करते हैं, यानी केवल ईमेल पतों को अनुमति दें।
- लंबाई: केवल एक निश्चित लंबाई तक के इनपुट की अनुमति दें।
नियम लागू करें
नियमों को लागू करने के लिए, आपको वेबसाइट या एप्लिकेशन में कोड जोड़ना होगा जो किसी भी इनपुट को अस्वीकार करता है जो उनका पालन नहीं करता है। अमान्य इनपुट से उत्पन्न खतरे के कारण, लाइव होने से पहले सिस्टम का परीक्षण किया जाना चाहिए।
प्रतिक्रियाएँ बनाएँ
यह मानते हुए कि आप इनपुट सत्यापन चाहते हैं ताकि उपयोगकर्ताओं को भी मदद मिल सके, आपको उन संदेशों को जोड़ना चाहिए जो बताते हैं कि इनपुट गलत क्यों है और इसके बजाय क्या जोड़ा जाना चाहिए।
अधिकांश प्रणालियों के लिए इनपुट सत्यापन एक आवश्यकता है
उपयोगकर्ता इनपुट की अनुमति देने वाली किसी भी वेबसाइट या ऐप के लिए इनपुट सत्यापन एक महत्वपूर्ण आवश्यकता है। किसी सिस्टम में कौन सा इनपुट जोड़ा जाता है, इस पर नियंत्रण के बिना, एक हमलावर के पास कई तरह की तकनीकें होती हैं जिनका उपयोग हैकिंग उद्देश्यों के लिए किया जा सकता है।
ये तकनीकें सिस्टम को क्रैश कर सकती हैं, इसे बदल सकती हैं, और/या निजी जानकारी तक पहुंचने की अनुमति दे सकती हैं। इनपुट सत्यापन के बिना सिस्टम हैकर्स के लिए लोकप्रिय लक्ष्य बन जाते हैं और इंटरनेट पर उन्हें लगातार खोजा जा रहा है।
जबकि इनपुट सत्यापन मुख्य रूप से सुरक्षा उद्देश्यों के लिए उपयोग किया जाता है, यह उपयोगकर्ताओं को यह बताने में भी महत्वपूर्ण भूमिका निभाता है कि जब वे कुछ गलत जोड़ते हैं।