AWS - WAF Enum
AWS - WAF Enum
AWS WAF
AWS WAF एक वेब एप्लिकेशन फ़ायरवॉल है जो वेब एप्लिकेशन या एपीआई को विभिन्न वेब धोखाधड़ीयों से बचाने के लिए डिज़ाइन किया गया है जो उनकी उपलब्धता, सुरक्षा, या संसाधन खपत पर प्रभाव डाल सकती है। यह उपयोगकर्ताओं को आने वाली ट्रैफ़िक को नियंत्रित करने की अनुमति देता है जिसे सुरक्षा नियम सेट करके जैसे SQL इन्जेक्शन या क्रॉस-साइट स्क्रिप्टिंग जैसी प्रमुख हमले वेक्टर्स को कम करते हैं और अपनी वेब अप्लिकेशन या एपीआई को सुरक्षित रखते हैं।
मुख्य अवधारणाएँ
वेब ACL (एक्सेस कंट्रोल सूची)
एक वेब ACL एक संग्रह है जिसे आप अपनी वेब एप्लिकेशन या एपीआई पर लागू कर सकते हैं। जब आप एक वेब ACL को संसाधन से जोड़ते हैं, तो AWS WAF उसमें परिभाषित नियमों के आधार पर आने वाले अनुरोधों की जांच करता है और निर्दिष्ट क्रियाएँ लेता है।
नियम समूह
एक नियम समूह एक पुनर्युक्त संग्रह है जिसे आप कई वेब ACL पर लागू कर सकते हैं। नियम समूह विभिन्न वेब एप्लिकेशन या एपीआई के बीच संरक्षित नियम सेट को प्रबंधित और बनाए रखने में मदद करते हैं।
नियम
एक नियम आने वाले वेब अनुरोधों की जांच करने के लिए AWS WAF द्वारा उपयोग किए जाने वाले शर्तों का एक सेट परिभाषित करता है। दो मुख्य प्रकार के नियम होते हैं:
नियम सामान्य: इस नियम प्रकार में निर्दिष्ट शर्तों का उपयोग करके यह निर्धारित करता है कि क्या वेब अनुरोध को अनुमति देनी चाहिए, ब्लॉक करना चाहिए, या गिनना चाहिए।
रेट-आधारित नियम: एक विशिष्ट आईपी पते से पांच मिनट की अवधि के दौरान अनुरोधों की गणना करता है। यहाँ, उपयोगकर्ता एक सीमा परिभाषित करते हैं, और यदि उस आईपी से प्राप्त अनुरोधों की संख्या पांच मिनट के भीतर इस सीमा से अधिक होती है, तो उस आईपी से आने वाले अगले अनुरोधों को ब्लॉक कर दिया जाता है जब तक अनुरोध दर सीमा से कम नहीं हो जाती। रेट-आधारित नियमों के लिए न्यूनतम सीमा 2000 अनुरोध है।
प्रबंधित नियम
AWS WAF पूर्व-कॉन्फ़िगर्ड, प्रबंधित नियम सेट प्रदान करता है जो AWS और AWS विपणन सेलर्स द्वारा बनाए रखे जाते हैं। ये नियम सेट सामान्य खतरों से सुरक्षा प्रदान करते हैं और नए सुरक्षा खामियों का समाधान करने के लिए नियमित रूप से अपडेट किए जाते हैं।
आईपी सेट
एक आईपी सेट एक सूची है जिसमें आप अनुमति देना चाहते हैं या ब्लॉक करना चाहते हैं आईपी पतों या आईपी पते श्रेणियाँ को। आईपी सेट आईपी-आधारित नियम प्रबंधित करने की प्रक्रिया को सरल बनाते हैं।
रेगेक्स पैटर्न सेट
रेगेक्स पैटर्न सेट में एक या एक से अधिक नियमित अभिव्यक्तियाँ (रेगेक्स) होती हैं जो वेब अनुरोधों में खोजने के लिए पैटर्न को परिभाषित करती हैं। यह विशेष अनुकूलन स्थितियों के लिए उपयोगी है, जैसे कि विशेष अक्षरों के श्रृंखला को फ़िल्टर करने के लिए।
ताला टोकन
ताला टोकन का उपयोग डबल्यूएएफ संसाधनों पर अपडेट करते समय समवर्तन नियंत्रण के लिए किया जाता है। यह सुनिश्चित करता है कि परिवर्तन किसी भी रिसोर्स को एक साथ अपडेट करने की कोशिश करने वाले कई उपयोगकर्ताओं या प्रक्रियाओं द्वारा अनजाने में अधिलिखित नहीं होते हैं।
एपीआई कुंजी
AWS WAF में एपीआई कुंजी का उपयोग कुछ एपीआई कार्यों के लिए अधिकृत करने के लिए किया जाता है। ये कुंजी एन्क्रिप्टेड होती हैं और सुरक्षित रूप से प्रबंधित की जाती हैं ताकि केवल अधिकृत उपयोगकर्ता WAF कॉन्फ़िगरेशन में परिवर्तन कर सकें।
उदाहरण: CAPTCHA एपीआई का एकीकरण।
अनुमति नीति
अनुमति नीति एक IAM नीति है जो स्पष्ट करती है कि AWS WAF संसाधनों पर कौन कार्रवाई कर सकता है। अनुमतियों को परिभाषित करके, आप WAF संसाधनों तक पहुंच को नियंत्रित कर सकते हैं और सुनिश्चित कर सकते हैं कि केवल अधिकृत उपयोगकर्ता विन्यास बना सकते हैं, अपडेट कर सकते हैं, या हटा सकते हैं।
दायरा
AWS WAF में दायरा पैरामीटर निर्धारित करता है कि WAF नियम और विन्यास किस विभागीय एप्लिकेशन या अमेज़न क्लाउडफ्रंट वितरण पर लागू होते हैं।
रीजनल: रीजनल सेवाओं जैसे एप्लिकेशन लोड बैलेंसर (ALB), अमेज़न एपीआई गेटवे REST एपीआई, AWS एप्सिंक्स GraphQL एपीआई, अमेज़न कोग्निटो उपयोगकर्ता पूल, AWS एप रनर सेवा और AWS सत्यापित पहुंच इंस्टेंस पर लागू होता है। आप उस AWS क्षेत्र को निर्दिष्ट करते हैं जहाँ इन संसाधनों का स्थान है।
क्लाउडफ्रंट: यह
पोस्ट एक्सप्लोइटेशन / बायपास
हमलावरों की दृष्टि से, यह सेवा हमलावर को WAF सुरक्षा और नेटवर्क अनावरणों की पहचान करने में मदद कर सकती है जो उसे अन्य वेब्स को कंप्रमाइज करने में मदद कर सकती है।
हालांकि, एक हमलावर इस सेवा को भंग करने में भी रुचि रख सकता है ताकि वेब्स को WAF द्वारा संरक्षित न किया जाए।
कई में हटाने और अपडेट कार्रवाई में लॉक टोकन प्रदान करना आवश्यक होगा। यह टोकन संसाधनों पर समवर्ती नियंत्रण के लिए उपयोग किया जाता है, सुनिश्चित करता है कि परिवर्तन गलती से किसी भी समय संख्यक उपयोगकर्ताओं या प्रक्रियाओं द्वारा एक ही संसाधन को अपडेट करने का प्रयास करने पर अधिक से अधिक अधिक नहीं हो जाते। इस टोकन को प्राप्त करने के लिए आप संबंधित संसाधन पर संबंधित सूची या प्राप्त कार्रवाई कर सकते हैं।
wafv2:CreateRuleGroup
, wafv2:UpdateRuleGroup
, wafv2:DeleteRuleGroup
wafv2:CreateRuleGroup
, wafv2:UpdateRuleGroup
, wafv2:DeleteRuleGroup
एक हमलावर प्रभावित संसाधन की सुरक्षा को कंप्रमाइज कर सकेगा द्वारा:
नियम समूह बनाना जो, उदाहरण के लिए, वैध आईपी पतों से वैध ट्रैफिक को ब्लॉक कर सकते हैं, जिससे सेवा की नकारात्मक प्रभावित हो सकती है।
नियम समूहों को अपडेट करना, उदाहरण के लिए उसके कार्रवाइयों को ब्लॉक से अनुमति में बदल सकते हैं।
महत्वपूर्ण सुरक्षा उपाय प्रदान करने वाले नियम समूहों को हटाना।
निम्नलिखित उदाहरण एक नियम समूह दिखाता है जो विशिष्ट आईपी पतों से वास्तविक ट्रैफिक को ब्लॉक करेगा:
फ़ाइल rule.json इस तरह दिखेगी:
संभावित प्रभाव: अनधिकृत पहुंच, डेटा उल्लंघन, और संभावित डीओएस हमले।
wafv2:CreateWebACL
, wafv2:UpdateWebACL
, wafv2:DeleteWebACL
wafv2:CreateWebACL
, wafv2:UpdateWebACL
, wafv2:DeleteWebACL
इन अनुमतियों के साथ, एक हमलावार को निम्नलिखित कार्रवाई करने की क्षमता होगी:
एक नया वेब ACL बनाना, नियम शामिल करना जो या तो दुर्भाग्यपूर्ण ट्रैफिक को दाखिल करने देते हैं या वास्तविक ट्रैफिक को ब्लॉक करते हैं, WAF को असक्षम बना देते हैं या एक सेवा को अस्वीकृत करने का कारण बना देते हैं।
मौजूदा वेब ACL को अपडेट करना, नियमों को संशोधित करने की क्षमता होगी ताकि पहले अवरोधित हमलों जैसे एसक्यूएल इन्जेक्शन या क्रॉस-साइट स्क्रिप्टिंग को अनुमति दी जा सके, या मान्य अनुरोधों को ब्लॉक करके सामान्य ट्रैफिक धारण को विघटित कर सकते हैं।
एक वेब ACL को हटाना, प्रभावित संसाधनों को पूरी तरह से संरक्षित छोड़ देना, इसे वेब हमलों के एक व्यापक श्रेणी के लिए उजागर करना।
आप केवल निर्दिष्ट WebACL को हटा सकते हैं अगर ManagedByFirewallManager नकारा है।
मूल वेब ACL:
कमांड वेब ACL को अपडेट करने के लिए:
फ़ाइल rule.json इस तरह दिखेगी:
संभावित प्रभाव: अनधिकृत पहुंच, डेटा उल्लंघन और संभावित डीओएस हमले।
wafv2:AssociateWebACL
, wafv2:DisassociateWebACL
wafv2:AssociateWebACL
, wafv2:DisassociateWebACL
wafv2:AssociateWebACL
अनुमति एक हमलावर को संसाधनों के साथ वेब एसीएल (एक्सेस कंट्रोल सूची) को संबद्ध करने की अनुमति देगी, सुरक्षा नियंत्रणों को छलकर सकती है, अनधिकृत ट्रैफिक को एप्लिकेशन तक पहुंचने देगी, जिससे एक्सप्लॉइट्स जैसे एसक्यूएल इन्जेक्शन या क्रॉस-साइट स्क्रिप्टिंग (एक्सएसएस) की तरह का उपयोग किया जा सकता है। उल्टे, wafv2:DisassociateWebACL
अनुमति के साथ, हमलावर सुरक्षा संरक्षण को असक्षम कर सकता है, संसाधनों को संक्रमणों के लिए बिना पहचान के विकसित कर सकता है।
संरक्षित संसाधन प्रकार के आधार पर अतिरिक्त अनुमतियाँ आवश्यक होंगी:
संबद्ध
apigateway:SetWebACL
apprunner:AssociateWebAcl
appsync:SetWebACL
cognito-idp:AssociateWebACL
ec2:AssociateVerifiedAccessInstanceWebAcl
elasticloadbalancing:SetWebAcl
असंबद्ध
apigateway:SetWebACL
apprunner:DisassociateWebAcl
appsync:SetWebACL
cognito-idp:DisassociateWebACL
ec2:DisassociateVerifiedAccessInstanceWebAcl
elasticloadbalancing:SetWebAcl
संभावित प्रभाव: AWS WAF द्वारा संरक्षित AWS परिवेश में सुरक्षा की कमी, शोषण का जोखिम बढ़ना, और संभावित सेवा विघटन।
wafv2:CreateIPSet
, wafv2:UpdateIPSet
, wafv2:DeleteIPSet
wafv2:CreateIPSet
, wafv2:UpdateIPSet
, wafv2:DeleteIPSet
एक हमलावर AWS WAF द्वारा प्रबंधित IP सेट बना सकेगा, अपडेट कर सकेगा और हटा सकेगा। यह खतरनाक हो सकता है क्योंकि यह नए IP सेट बना सकता है जो दुर्भाग्यपूर्ण ट्रैफिक को अनुमति देने के लिए हो, IP सेट को संशोधित कर सकता है ताकि वैध ट्रैफिक को ब्लॉक किया जा सके, मान्य IP पतों को हटा सकता है या महत्वपूर्ण संसाधनों को संरक्षित करने के लिए निर्मित महत्वपूर्ण IP सेट को हटा सकता है।
निम्नलिखित उदाहरण दिखाता है कि वांछित आईपी सेट द्वारा मौजूदा आईपी सेट को अधिलेखित कैसे करें:
संभावित प्रभाव: अनधिकृत पहुंच और वैध ट्रैफिक का अवरोध।
wafv2:CreateRegexPatternSet
, wafv2:UpdateRegexPatternSet
, wafv2:DeleteRegexPatternSet
wafv2:CreateRegexPatternSet
, wafv2:UpdateRegexPatternSet
, wafv2:DeleteRegexPatternSet
इन अनुमतियों के साथ एक हमलावला AWS WAF द्वारा उपयोग किए जाने वाले नियमित अभिव्यक्ति पैटर्न सेट को मानिये और आधारित आने वाले ट्रैफिक को नियंत्रित और फ़िल्टर करने के लिए उपयोग कर सकता है।
नए रेजेक्स पैटर्न बनाने से एक हमलावला को हानिकारक सामग्री को अनुमति देने में मदद मिलेगी
मौजूदा पैटर्न को अपडेट करके, एक हमलावला सुरक्षा नियमों को छलकरने में मदद मिलेगी
दुर्भाग्यपूर्ण गतिविधियों को ब्लॉक करने के लिए डिज़ाइन किए गए पैटर्न हटाने से एक हमलावला को दुर्भाग्यपूर्ण पेलोड भेजने और सुरक्षा उपायों को छलने की दिशा में ले जा सकता है।
संभावित प्रभाव: सुरक्षा नियंत्रण को अनदेखा करना, जानलेवा सामग्री को अनुमति देना और संभावित रूप से AWS WAF द्वारा संरक्षित सेवाओं और संसाधनों को उजागर करना और संवेदनशील डेटा को प्रकट करना या सेवाओं को व्यवस्थित करना।
(wavf2:PutLoggingConfiguration
& iam:CreateServiceLinkedRole
), wafv2:DeleteLoggingConfiguration
wavf2:PutLoggingConfiguration
& iam:CreateServiceLinkedRole
), wafv2:DeleteLoggingConfiguration
एक हमलावर के पास wafv2:DeleteLoggingConfiguration
होने पर उसे निर्दिष्ट वेब ACL से लॉगिंग विन्यास को हटा देने की क्षमता होगी। इसके बाद, wavf2:PutLoggingConfiguration
और iam:CreateServiceLinkedRole
अनुमतियों के साथ, एक हमलावर लॉगिंग विन्यास बना सकता है या पुनः लगा सकता है (उसे हटाने के बाद) ताकि वह लॉगिंग को पूरी तरह से रोक सके या अनधिकृत गंतव्यों पर लॉग को पुनर्निर्देशित कर सके, जैसे Amazon S3 बकेट, Amazon CloudWatch Logs लॉग समूह या अंडर कंट्रोल अमेज़न काइनेसिस डेटा फायरहोस।
निर्माण प्रक्रिया के दौरान, सेवा स्वचालित रूप से आवश्यक अनुमतियाँ सेट करती है ताकि लॉग निर्दिष्ट लॉगिंग गंतव्य में लिखे जा सकें:
Amazon CloudWatch Logs: AWS WAF नियुक्त किए गए CloudWatch Logs लॉग समूह पर एक संसाधित नीति बनाता है। यह नीति सुनिश्चित करती है कि AWS WAF के पास लॉग समूह में लॉग लिखने के लिए आवश्यक अनुमतियाँ हैं।
Amazon S3 बकेट: AWS WAF नियुक्त किए गए S3 बकेट पर एक बकेट नीति बनाता है। यह नीति AWS WAF को निर्दिष्ट बकेट में लॉग अपलोड करने के लिए आवश्यक अनुमतियाँ प्रदान करती है।
Amazon Kinesis डेटा फायरहोस: AWS WAF केवल Kinesis डेटा फायरहोस के साथ बातचीत के लिए एक सेवा संबंधित भूमिका बनाता है। यह भूमिका AWS WAF को विन्यस्त फायरहोस स्ट्रीम में लॉग पहुंचाने की अनुमति देती है।
एक वेब ACL प्रति केवल एक लॉगिंग गंतव्य को परिभाषित करना संभव है।
संभावित प्रभाव: सुरक्षा घटनाओं में पारदर्शिता को अस्पष्ट बनाना, घटना प्रतिक्रिया प्रक्रिया को कठिन बनाना, और AWS WAF संरक्षित वातावरणों में छुपे दुराचारी गतिविधियों को सुविधाजनक बनाना।
wafv2:DeleteAPIKey
wafv2:DeleteAPIKey
इस अनुमति के साथ एक हमलावर को मौजूदा API कुंजियों को हटा देने की क्षमता होगी, जिससे CAPTCHA अप्रभावी हो जाएगा और इस पर निर्भर करने वाले कार्यक्षमता को बाधित कर देगा, जैसे कि फॉर्म सबमिशन और एक्सेस नियंत्रण। इस CAPTCHA के कार्यान्वयन पर निर्भर करते हुए, यह या तो एक CAPTCHA बाईपास की ओर ले जा सकता है या संसाधन में त्रुटि प्रबंधन सही ढंग से सेट नहीं किया गया है तो एक डीओएस में ले जा सकता है।
संभावित प्रभाव: CAPTCHA सुरक्षा को निषेधित करें या एप्लिकेशन कार्यक्षमता को विघटित करें, जिससे सुरक्षा उल्लंघन और संभावित डेटा चोरी हो सकती है।
wafv2:TagResource
, wafv2:UntagResource
wafv2:TagResource
, wafv2:UntagResource
एक हमलावर AWS WAFv2 संसाधनों से टैग जोड़ सकेगा, संशोधित कर सकेगा, या हटा सकेगा, जैसे वेब ACL, नियम समूह, आईपी सेट, रेजेक्स पैटर्न सेट, और लॉगिंग कॉन्फ़िगरेशन।
संभावित प्रभाव: संसाधन के गलत छेदन, सूचना लीकेज, लागत में परिवर्तन और परिचालन विघटन।
संदर्भ
Last updated