भेद्यता auuth |. आपल्या वेब अनुप्रयोगात सुरक्षित अधिकृतता कशी अंमलबजावणी कशी करावी

Anonim
भेद्यता auuth |. आपल्या वेब अनुप्रयोगात सुरक्षित अधिकृतता कशी अंमलबजावणी कशी करावी 2740_1

हा लेख सुप्रसिद्ध ओथ भेद्यावर हाताळेल. वेब अनुप्रयोगामध्ये सुरक्षित आणि सुरक्षित अधिकृतता कशी अंमलबजावणी कशी करावी हे वाचक देखील शिकतील.

ओथ एक विश्वासार्ह प्रोटोकॉल आहे, परंतु अधिकृततेचे अंमलबजावणी करताना वेब विकासकांच्या जागरुकतेवर मोठ्या प्रमाणावर सुरक्षिततेवर अवलंबून असते. यामुळे ही विषय माहिती सुरक्षा सुरक्षा व्यावसायिकांसाठी अत्यंत महत्वाची आहे. त्यांना त्यांच्या वापरकर्त्यांच्या खात्यांचे उच्च स्तर प्रदान करणे आवश्यक आहे. प्रभावी प्रॅक्टिशनर्सशी परिचित होण्यासाठी वेळ आहे जो गरीब विक्रीच्या धोक्यात मदत करेल.

परिचय

Oauth 2.0 प्रोटोकॉल सध्या विविध अनुप्रयोगांमध्ये मोठ्या प्रमाणावर वापरले जाते. वापरणे, एक सोयीस्कर वापरकर्ता इंटरफेस उपलब्ध होते, वापरकर्तानाव आणि संकेतशब्द प्रविष्ट करण्यासाठी पारंपारिक पद्धतींच्या तुलनेत सोपे प्रमाणीकरण आणि अधिकृतता. योग्य आणि विचारशील अंमलबजावणीसह, ओहथ प्रोटोकॉल पारंपारिक प्राधिकरणापेक्षा सुरक्षित असेल, कारण वापरकर्त्यांना विशिष्ट संसाधनांमध्ये प्रवेश करण्यासाठी त्यांच्या लेखा डेटा तृतीय-पक्ष अर्जासह सामायिक करण्याची आवश्यकता नाही. प्रत्येक वेळी काही वेबसाइटवर नोंदणी करणे आवश्यक असेल तेव्हा नवीन खाते तयार करण्याऐवजी वापरकर्ते Google खाती, फेसबुक किंवा लिंक्डिन वापरून लॉग इन करण्यास प्राधान्य देतात. अशा प्रकारे, Oauth प्रोटोकॉल खूप आपले जीवन सरळ सरळ करते.

सर्वसाधारणपणे, लोकप्रिय ओयूथ सेवा प्रदाते खूप विश्वासार्ह आहेत. Google किंवा फेसबुक खात्यासह लॉग इन करा सुरक्षिततेची विशिष्ट भावना प्रेरणा देते आणि ते बरोबर आहे. प्रोटोकॉल काळजीपूर्वक तज्ञांनी चाचणी केली आहे. विकसक कार्यसंघाद्वारे सर्व उपलब्ध असुरक्षितता नेहमीच त्वरीत दुरुस्त केली जातात. तथापि, पूर्ण सुरक्षेची भावना चुकीची असू शकते हे लक्षात घेण्यासारखे आहे.

ओयूथ सर्व्हिस प्रदाते आपल्या प्रोग्रामच्या सुरक्षिततेचा सामना करण्याचे बरेच कारण सोडले. खरं तर, सुरुवातीला संरक्षित OUUTH सर्व्हिस, त्याच्या स्थापनेच्या प्रक्रियेत चुकीचे अंमलबजावणी केली जाते, घुसखोरांसाठी एक सोपा लक्ष्य बनू शकते. अशा proccuccy वापरकर्त्यांच्या वैयक्तिक डेटाचा चोरी होऊ शकते.

पुढे, आपण त्यांच्या वापरकर्त्यांना अधिकृत करण्यासाठी ओथ प्रोटोकॉल अंमलबजावणी करणार्या तृतीय पक्ष अनुप्रयोगांमध्ये सर्वात सामान्य भेद्यता विचारात घेतल्या पाहिजेत. हे लक्षात ठेवणे आवश्यक आहे की प्रोटोकॉल स्वतः सुरक्षित आणि विश्वासार्ह आहे. चुकीच्या अंमलबजावणीनंतरच, हे हॅकर अटॅकसाठी असुरक्षित होते.

रेफरर्स शीर्षलेख वापरुन ओथ टुकी चोरी

जेव्हा OUUTH सर्व्हरवर वापरकर्त्याच्या वतीने अधिकृततेची विनंती करते तेव्हा एक व्यक्ती त्याच्या नंतरच्या चेकसाठी सर्व्हरवर प्रवेश करण्यासाठी आणि पाठविण्यासाठी कोड प्राप्त करते. कामाच्या दरम्यान वापरकर्त्यास दुसर्या पृष्ठावर पुनर्निर्देशित केले जाईल, तर कोड HTTP विनंतीच्या "संदर्भ" शीर्षलेखमध्ये पाहिली जाईल. अशा प्रकारे, कोड बाह्य वेबसाइटवर पडेल, जे OAUTH सर्व्हरवर नोंदणीकृत वापरकर्ता डेटा धमकी देईल.

टीप: रेफरर्स हेडर HTTP क्वेरी शीर्षलेख आहे, ते URL होस्ट ज्यापासून विनंती पाठविली जाते.

या भेद्यतेच्या परिणामांचे सौम्य करण्यासाठी, विकसकाने याची खात्री करून घ्यावी की त्याच्या वेब अनुप्रयोगामध्ये कोणतेही HTML इंजेक्शन नसतात. जर इंजेक्शन सापडला, तर आक्रमणकर्ता सहजपणे प्रतिमा टॅगला त्याच्या वेब सर्व्हरवर सेट करू शकतो आणि त्यावर वापरकर्त्यास पुनर्निर्देशित करण्याचा मार्ग शोधू शकतो. अशा प्रकारे, त्याला HTTP विनंतीच्या "रेफर्टर" हे शीर्षलेखमधून कोड चोरण्याची संधी मिळेल.

Redirect_URI पॅरामीटर वापरून ओथ टुकी चोरी

OAUTH सर्व्हरवर विनंती पाठविण्याद्वारे अनुप्रयोग अधिकृतता प्रक्रियेस प्रारंभ करतो:

https://www.example.com/signin/AnGignIn / authorize? * .. *

वापरकर्त्याने आपल्या संमती दिल्यानंतर OAUTH सर्व्हरद्वारे वापरल्या जाणार्या "Redirect_URI" पॅरामीटरचा वापर केला जातो. जर या पॅरामीटर्सचे मूल्य नियंत्रित केले गेले नाही किंवा तपासले गेले नाही तर आक्रमणकर्ता सहजपणे बदलू शकतो आणि विनंती त्याच्या वेबसाइटवर पुनर्निर्देशित करू शकतो, जेथे तो टोकन प्रक्रियेसाठी एक विशेष प्रोग्राम वापरतो आणि मर्यादित संसाधनात प्रवेश मिळवतो.

https://www.example.com/signin/AnignIn / authorize? *

कधीकधी समान URL अवरोधित केले जातात. आक्रमणकर्ता यासारखे उघडलेल्या URL वर प्राप्त डेटा पुनर्निर्देशित करू शकतो:

https://www.example.com/oauth20_authorize.srf?

किंवा हे:

https://www.example.com/oauth2/Authorize? [...]% irct_uri = https% 3 ए% 2 एफ% 2fappsbook.com% 2fattacker% 2f.

OUUTH लागू करताना, आपण कधीही श्वेत सूचीमध्ये संपूर्ण डोमेन समाविष्ट करू शकत नाही. "Redirect_URI" मध्ये फक्त काही URL जोडल्या पाहिजेत. पुनर्निर्देशन उघडण्याची विनंती पुनर्निर्देशित केलेली नाही.

क्रॉस-लाइन विनंत्यांची फसवणूक

एंटस्पेइट विनंतीची फसवणूक होऊ शकते जेव्हा आक्रमणकर्ता पीडित व्यक्तीला त्याच्या दुव्यावर क्लिक करण्यास आणि अशा प्रकारे तयार होणार नाही की तो तयार होणार नाही अशी विनंती तयार करते. क्रॉस-लाइन विनंत्यांची फसवणूक सामान्यतः वापरकर्ता सत्राशी संबंधित असलेल्या सीएसआरएफ टोकनसह मऊ केली जाते. हे विनंती पाठविणार्या व्यक्तीचे व्यक्ती तपासण्यासाठी अनुप्रयोगास मदत करते. ओथ प्रोटोकॉल मधील "राज्य" पॅरामीटर सीएसआरएफ टोकन म्हणून कार्य करते.

OUUTH वर सीएसआरएफ हल्ला कसा केला जातो हे पाहण्यासारखे आहे आणि भेद्यतेच्या प्रभाव कमी करण्यासाठी "राज्य" पॅरामीटरचा वापर केला जाऊ शकतो.

हॅकरने वेब अनुप्रयोग उघडतो आणि ओथ वापरुन सेवा प्रदात्यामध्ये प्रवेश करण्यासाठी अधिकृतता प्रक्रिया सुरू केली. अनुप्रयोग प्रदान करण्यासाठी सेवा प्रदात्यास प्रदान करणे आवश्यक आहे. हॅकरला सेवा प्रदात्या वेबसाइटवर पुनर्निर्देशित केले जाईल, जेथे आपल्याला प्रवेश अधिकृत करण्यासाठी आपले वापरकर्तानाव आणि संकेतशब्द प्रविष्ट करणे आवश्यक आहे. त्याऐवजी, हॅकरने या विनंतीस पकडले आणि प्रतिबंधित केले आणि त्याचे URL जतन केले. हॅकर कसा तरी हा URL उघडण्यासाठी बळी पडतो. पीडित व्यक्तीने त्याच्या खात्याचा वापर करून सेवा प्रदात्याच्या प्रणालीमध्ये प्रवेश केला असेल तर त्याचे प्रमाणपत्रे अधिकृतता कोड जारी करण्यासाठी वापरली जाईल. अधिकृतता कोड प्रवेश टोकनमध्ये प्रवेश करतो. आता अनुप्रयोगातील हॅकर खाते अधिकृत आहे. ते पीडित खात्यात प्रवेश करू शकते.

तर, मी या परिस्थितीस "राज्य" पॅरामीटरचा वापर कसा करू शकतो?

अनुप्रयोगाने स्त्रोत खात्याच्या आधारावर एक मूल्य तयार करणे आवश्यक आहे (उदाहरणार्थ, वापरकर्ता सत्र हॅश की वापरा). हे इतके महत्त्वपूर्ण नाही की, मुख्य गोष्ट अशी आहे की मूल मूळ वापरकर्त्याबद्दल खाजगी माहिती वापरून अद्वितीय आणि व्युत्पन्न आहे. हे "राज्य" पॅरामीटरला नियुक्त केले जाते.

पुनर्निर्देशित करताना हे मूल्य सेवा प्रदात्यास प्रसारित केले जाते. आता हॅकरने पीडितांना यूआरएल उघडण्यास आमंत्रित केले आहे, जे त्याने कायम ठेवले आहे.

अधिकृतता कोड जारी केला जातो आणि "राज्य" पॅरामीटरसह सत्रात क्लायंटला परत पाठविला जातो.

क्लाएंट सत्र माहितीवर आधारित एक पॅरामीटर मूल्य व्युत्पन्न करते आणि "राज्य" मूल्यासह तुलना करते, जे सेवा प्रदात्याकडे अधिकृतता विनंतीवरून परत पाठविली गेली. हे मूल्य क्वेरीमध्ये "राज्य" पॅरामीटरशी जुळत नाही, कारण ते वर्तमान सत्राच्या माहितीच्या आधारेच व्युत्पन्न केले गेले आहे. परिणामी, प्राप्त मूल्य प्रणालीद्वारे स्वीकारले जात नाही.

OUUT च्या अंमलबजावणी करताना इतर कमकुवतता आढळली आहे जेव्हा "Redirect_URI" पॅरामीटर, OAUTH खाजगी की सेटिंग वापरून XSS (क्रॉस-साइट स्क्रिप्टिंग) करण्याची क्षमता समाविष्ट करते (मोबाइल ऍप्लिकेशन विघटित केल्यावर की की प्राप्त होऊ शकते) आणि अधिकृतता कोड नियम उल्लंघन (जेव्हा एकाधिक प्रवेश टोकन जारी करण्यासाठी अधिकृतता कोड एकापेक्षा जास्त वेळा वापरला जाऊ शकतो). वर वर्णन केलेल्या लोकांपेक्षा हे भेद्यता कमी सामान्य आहेत, परंतु ते त्यांना कमी धोकादायक बनवत नाही. त्याच्या वेब अनुप्रयोगाचे विश्वसनीय ऑपरेशन सुनिश्चित करण्यासाठी विकसकाने सर्व आवश्यक पद्धती जाणून घ्याव्या.

अनुवादित लेख लेखक: सायमन दीबा.

महत्वाचे! माहिती पूर्णपणे शैक्षणिक उद्देशांसाठी. कृपया कायद्याचे पालन करा आणि बेकायदेशीर हेतूंसाठी ही माहिती लागू करू नका.

Cisoclub.ru वर अधिक मनोरंजक सामग्री. आमच्या सदस्यता घ्या: फेसबुक | व्हीके | ट्विटर | Instagram | टेलीग्राम | झेन | मेसेंजर |. आयसीक्यू नवीन | YouTube | पल्स.

पुढे वाचा