AWS WAF के साथ वेब एप्लिकेशन कैसे सुरक्षित करें?



यह लेख आपको बताएगा कि आप AWS WAF के साथ वेब एप्लिकेशन को कैसे सुरक्षित कर सकते हैं और एक व्यावहारिक प्रदर्शन के साथ इसका पालन कर सकते हैं।

यह लेख आपको बताएगा कि कैसे आप वेब एप्लिकेशन को सुरक्षित कर सकते हैं WAF और एक व्यावहारिक प्रदर्शन के साथ इसका पालन करें। इस लेख में निम्नलिखित बिंदुओं को शामिल किया जाएगा,

तो चलिए हम शुरू करते हैं,





इस लेख के साथ F AWS WAF के साथ वेब एप्लिकेशन को कैसे सुरक्षित करें? '

कुछ बुनियादी बातों के साथ शुरुआत करना

AWS EC2, ELB (इलास्टिक लोड बैलेंसर), S3 (सिंपल स्टोरेज सर्विस), EBS (इलास्टिक ब्लॉक स्टोरेज) जैसी सेवाएँ प्रदान करता है ताकि जल्दी और कम CAPEX (CAPital EXpenditure) के साथ उपयोगी और फैंसी एप्लिकेशन बना सकें। इन एप्लिकेशन को बनाते समय, एप्लिकेशन को सुरक्षित करना और डेटा को सुरक्षित रखना भी उतना ही महत्वपूर्ण है। यदि ठीक से सुरक्षित नहीं है, तो हाल के मामले में एप्लिकेशन डेटा गलत हाथों में पड़ सकता है राजधानी एक घटना



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

कैपिटल वन का इस्तेमाल किया एडब्ल्यूएस WAF (वेब ​​अनुप्रयोग फ़ायरवॉल) वेब एप्लिकेशन को सुरक्षित रखने के लिए, लेकिन इसे ठीक से कॉन्फ़िगर नहीं किया गया था, जिसके कारण हैकर एस 3 में डेटा तक पहुंच प्राप्त करने और इसे डाउनलोड करने में सक्षम था। इस लेख में हम यह पता लगाएंगे कि SQL इंजेक्शन, XSS (क्रॉस साइट स्क्रिप्टिंग) आदि जैसे आम वेब हमलों से बचाने के लिए AWS WAF का उपयोग और कॉन्फ़िगर कैसे किया जाए। आवेदन लोड Balancer , CloudFront या API गेटवे। इस परिदृश्य में, हम एप्लिकेशन लोड बैलेंसर का उपयोग करेंगे। ब्राउज़र के माध्यम से ग्राहक से कोई भी अनुरोध एडब्ल्यूएस डब्ल्यूएएफ और फिर एप्लिकेशन लोड बैलेंसर और आखिरकार ईसी 2 पर वेब एप्लिकेशन के माध्यम से जाएगा। AWS WAF का उपयोग किया जा सकता है दुर्भावनापूर्ण अनुरोध को रोकें नियम और शर्तों के एक सेट का उपयोग करके हैकर्स से।

छवि - AWS WAF - Edureka के साथ सुरक्षित वेब अनुप्रयोग

इस लेख के साथ F AWS WAF के साथ वेब एप्लिकेशन को कैसे सुरक्षित करें? '



AWS WAF के साथ आरंभ करने के लिए चरणों की अनुक्रम

स्टेप 1: एक कमजोर वेब एप्लिकेशन बनाना,

पहला कदम एक वेब एप्लिकेशन बनाना है जो SSRF (सर्वर साइड रिक्वेस्ट फॉरगेरी) हमलों के प्रति संवेदनशील है जैसा कि इस में वर्णित है ब्लॉग कैपिटल वन हमला कैसे हुआ। इस ब्लॉग में चरणों का क्रम है:

  1. EC2 बनाएं
  2. SSRF भेद्यता के साथ वेब एप्लिकेशन बनाने के लिए आवश्यक सॉफ़्टवेयर स्थापित करें
  3. S3 रीड ओनली परमिशन के साथ IAM भूमिका बनाएं और बनाएं
  4. EC2 में IAM भूमिका संलग्न करें
  5. अंत में, IAM भूमिका से संबंधित सुरक्षा क्रेडेंशियल प्राप्त करने के लिए SSRF भेद्यता का फायदा उठाएं।

एक बार जब चरणों का अनुक्रम उल्लिखित ब्लॉग में पूरा हो जाता है, तो 5.62.8 को नीचे के URL में EC2 के सार्वजनिक आईपी पते के साथ बदलें और इसे ब्राउज़र में खोलें। IAM भूमिका से जुड़े सुरक्षा क्रेडेंशियल्स को नीचे दिखाए गए ब्राउज़र में प्रदर्शित किया जाना चाहिए। इस तरह मूल रूप से कैपिटल वन को हैक किया गया था। हाथ में सुरक्षा क्रेडेंशियल के साथ, हैकर डेटा डाउनलोड करने के लिए S3 जैसी अन्य AWS सेवाओं तक पहुंचने में सक्षम था।

http://5.6.7.8:80?url=http://169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

चरण 2: एप्लिकेशन लोड बैलेंसर बनाना

AWS WAF को सीधे वेब एप्लिकेशन से संबद्ध नहीं किया जा सकता है। लेकिन, केवल एप्लिकेशन लोड बैलेंसर, क्लाउडफ्रंट और एपीआई गेटवे के साथ जुड़ा हो सकता है। इस ट्यूटोरियल में, हम निर्माण करेंगे एप्लिकेशन लोड बैलेंसर और AWS WAF को संबद्ध करना उसी के साथ।

चरण 2a: एक लक्ष्य समूह EC2 उदाहरणों का एक संग्रह है और एप्लिकेशन लोड बैलेंसर बनाने से पहले बनाया जाना चाहिए। EC2 प्रबंधन कंसोल में, बाएँ फलक में लक्ष्य समूह पर क्लिक करें और 'लक्ष्य समूह बनाएँ' पर क्लिक करें।

चरण 2 बी: लक्ष्य समूह नाम दर्ज करें और 'बनाएँ' पर क्लिक करें। लक्ष्य समूह सफलतापूर्वक बनाया जाएगा।

चरण 2 सी: सुनिश्चित करें कि लक्ष्य समूह चयनित है और लक्ष्य टैब पर क्लिक करें और लक्ष्य समूह के साथ EC2 उदाहरणों को पंजीकृत करने के लिए संपादन पर क्लिक करें।

चरण 2d: EC2 उदाहरण का चयन करें और 'पंजीकृत में जोड़ें' पर क्लिक करें और 'सहेजें' पर क्लिक करें।

उदाहरणों को पंजीकृत किया जाना चाहिए जैसा कि लक्ष्य समूह के लिए नीचे दिखाया गया है।

चरण 2e: एप्लिकेशन लोड बैलेंसर बनाने का समय। EC2 प्रबंधन कंसोल के बाएं फलक में लोड बैलेंसर पर क्लिक करें और 'क्रिएट लोड बैलेंसर' पर क्लिक करें।

'एप्लिकेशन लोड बैलेंसर' के लिए 'बनाएं' पर क्लिक करें।

इस लेख के साथ F AWS WAF के साथ वेब एप्लिकेशन को कैसे सुरक्षित करें? '

चरण 2f: एप्लिकेशन लोड बैलेंसर का नाम दर्ज करें। और सुनिश्चित करें कि सभी उपलब्धता क्षेत्र चयनित हैं और Next पर क्लिक करें।

चरण 2 जी: 'सुरक्षा सेटिंग्स कॉन्फ़िगर करें' में अगला पर क्लिक करें।

'सुरक्षा समूह कॉन्फ़िगर करें' में एक नया सुरक्षा समूह बनाएं या मौजूदा सुरक्षा समूह में से एक का चयन करें। सुनिश्चित करें कि EC2 पर वेब पेज तक पहुंचने के लिए पोर्ट 80 खुला है। Next पर क्लिक करे।

चरण 2h: 'कॉन्फ़िगर रूटिंग' में 'मौजूदा लक्ष्य समूह' चुनें और पहले चरण में जो बनाया गया है उसे चुनें। Next पर क्लिक करे।

चरण 2i: लक्ष्य EC2 उदाहरण पहले ही लक्ष्य समूहों के भाग के रूप में पंजीकृत हो चुके हैं। इसलिए, 'रजिस्टर टारगेट' टैब में, बिना किसी बदलाव के नेक्स्ट पर क्लिक करें।

चरण 2j: अंत में, एप्लिकेशन लोड बैलेंसर के सभी विवरणों की समीक्षा करें और क्रिएट पर क्लिक करें। एप्लिकेशन लोड बैलेंसर बनाया जाएगा जैसा कि नीचे दिखाया गया है।

चरण 2k: एप्लिकेशन लोड बैलेंसर का डोमेन नाम प्राप्त करें और हाइलाइट किए गए टेक्स्ट को नीचे के URL में बदलें और ब्राउज़र में समान खोलें। ध्यान दें कि हम वेब एप्लिकेशन को एप्लिकेशन लोड बैलेंसर के माध्यम से एक्सेस कर रहे हैं और सिक्योरिटी क्रेडेंशियल नीचे दिखाए गए हैं। सुरक्षा क्रेडेंशियल के रिसाव को रोकने के लिए बाद के चरणों में दिखाए गए अनुसार एडब्ल्यूएस डब्ल्यूएएफ का उपयोग करके नीचे दिए गए URL को अवरुद्ध किया जा सकता है।

MyALB-1929899948.us-east-1.elb.amazonaws.com ? url = http: //169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

चरण 3: AWS WAF (वेब ​​एप्लिकेशन फ़ायरवॉल) बनाना

चरण 3 ए: AWS WAF मैनेजमेंट कंसोल पर जाएं और “कॉन्फ़िगर वेब एसीएल” पर क्लिक करें। AWS WAF अवलोकन दिखाया गया है। यहाँ AWS WAF का पदानुक्रम है। वेब एसीएल के पास नियमों का एक समूह है और नियमों में शर्तों का एक समूह है जो हम बाद के चरणों में बना रहे हैं। Next पर क्लिक करे।

चरण 3 बी: वेब ACL नाम दर्ज करें, उत्तर वर्जीनिया (या जहां EC2 बनाया गया था) के रूप में क्षेत्र, 'एप्लिकेशन लोड बैलेंसर' के रूप में संसाधन प्रकार और अंत में एप्लिकेशन लोड बैलेंसर का चयन करें जो पहले चरण में बनाया गया था। Next पर क्लिक करे।

चरण 3 सी: यहां एक एक विशिष्ट वेब अनुप्रयोग अनुरोध को ब्लॉक करने की शर्त बनाया जाना चाहिए। नीचे स्क्रॉल करें और 'स्ट्रिंग और regex मैच की स्थिति' के लिए 'स्थिति बनाएं' पर क्लिक करें।

चरण 3 डी: शर्त का नाम दर्ज करें, 'स्ट्रिंग मिलान' के रूप में टाइप करें, 'सभी क्वेरी मापदंडों' पर फ़िल्टर करें और बाकी मापदंडों को बिल्कुल नीचे दिखाए गए अनुसार। और “Add filter” पर क्लिक करें और फिर Create पर। यहां हम एक ऐसी स्थिति बनाने की कोशिश कर रहे हैं जो क्वेरी पैरामीटर के मान से मेल खाता है जो 169.254.169.254 है। यह IP पता किससे संबंधित है EC2 मेटाडेटा

चरण 3e: अब एक नियम बनाने का समय है जो शर्तों का एक संग्रह है। 'नियम बनाएं' पर क्लिक करें और नीचे दिखाए अनुसार मापदंडों को निर्दिष्ट करें। 'स्थिति जोड़ें' पर क्लिक करें, बनाएं और 'समीक्षा करें और बनाएं'।

इस लेख के साथ F AWS WAF के साथ वेब एप्लिकेशन को कैसे सुरक्षित करें? '

चरण 3f: अंत में सभी विवरणों की समीक्षा करें और 'पुष्टि करें और बनाएं' पर क्लिक करें। वेब एसीएल (एक्सेस कंट्रोल लिस्ट) बनाई जाएगी और नीचे दिखाए गए अनुसार एप्लिकेशन लोड बैलेंसर से जुड़ी होगी।

चरण 3 जी: अब प्रदर्शन के अनुसार ब्राउज़र के माध्यम से एप्लिकेशन लोड बैलेंसर URL तक पहुंचने का प्रयास करें चरण 2k । इस बार हमें '403 निषिद्ध' मिल रहा है क्योंकि हमारा URL वेब ACL स्थिति से मेल खाता है और हम इसे रोक रहे हैं। अनुरोध EC2 पर एप्लिकेशन लोड बैलेंसर या वेब एप्लिकेशन तक कभी नहीं पहुंचता है। यहां हम ध्यान देते हैं कि यद्यपि एप्लिकेशन सुरक्षा क्रेडेंशियल्स तक पहुंचने की अनुमति दे रहा है, लेकिन WAF वही रोक रहा है।

चरण 4: इस ट्यूटोरियल में निर्मित AWS संसाधनों की सफाई। साफ-सफाई ठीक उसी क्रम में की जानी चाहिए जैसा कि नीचे बताया गया है। यह सुनिश्चित करना है कि AWS इस ट्यूटोरियल के हिस्से के रूप में संबंधित संसाधनों के लिए बिलिंग रोक देता है।

एक रिश्ता जावा है
  • नियम में शर्त हटाएं
  • WebACL में नियम हटाएं
  • WebACL में ALB को अलग करें
  • WebACL हटाएं
  • नियम हटाएँ
  • शर्त में फ़िल्टर हटाएं
  • दशा हटाओ
  • ALB और लक्ष्य समूह को हटाएँ
  • EC2 को समाप्त करें
  • IAM भूमिका हटाएँ

निष्कर्ष

जैसा कि पहले उल्लेख किया गया है, एडब्ल्यूएस का उपयोग करके एक वेब एप्लिकेशन बनाना बहुत आसान और दिलचस्प है। लेकिन हमें यह भी सुनिश्चित करना होगा कि एप्लिकेशन सुरक्षित है और डेटा गलत हाथों में लीक नहीं हुआ है। सुरक्षा को कई परतों पर लागू किया जा सकता है। इस ट्यूटोरियल में हमने देखा है कि EC2 मेटाडेटा के IP पते के साथ मेल खाने जैसे हमलों के खिलाफ वेब एप्लिकेशन की सुरक्षा के लिए AWS WAF (वेब ​​एप्लिकेशन फ़ायरवॉल) का उपयोग कैसे करें। हम SQL इंजेक्शन और XSS (क्रॉस साइट स्क्रिप्टिंग) जैसे आम हमलों से बचाने के लिए WAF का भी इस्तेमाल कर सकते थे।

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

यह हमें इस लेख के अंत में AWS WAF के साथ वेब एप्लिकेशन को सुरक्षित करने के लिए लाता है। हम एक पाठ्यक्रम भी लेकर आए हैं, जिसमें समाधान आर्किटेक्ट परीक्षा को क्रैक करने की आवश्यकता होती है; आप पाठ्यक्रम के विवरण पर एक नज़र डाल सकते हैं प्रशिक्षण।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इसका उल्लेख व्हाट्सऐप ब्लॉग के कमेंट सेक्शन में करें और हम आपको वापस मिल जाएंगे।