यह अनुभाग तीन टैब में व्यवस्थित वर्तमान WAF नियम सेट के लिए उपलब्ध सभी सेटिंग्स दिखाता है, वैश्विक, नियम, तथा फार्मध्यान रखें कि इस अनुभाग में परिवर्तन क्लिक करके लागू किए जाने हैं। लागू करें बटन.
वैश्विक सेटिंग्स WAF नियम सेट #
यह कॉन्फ़िगरेशन सेट में निहित सभी नियमों के व्यवहार का प्रबंधन करता है।
नाम. एक लेबल जो किसी नियम को आसानी से पहचानता है। आप अपने नियम सेट का नाम देने के लिए जो लेबल चुनेंगे, उसे बदला नहीं जा सकेगा।
अनुरोध बॉडी की जाँच करेंयह एक ध्वज है जो निर्धारित करता है कि HTTP अनुरोधों के मुख्य भाग का विश्लेषण किया जाना है या नहीं। यदि यह ध्वज अक्षम है, तो मुख्य भाग को छोड़ दिया जाएगा और अनुरोध मुख्य भाग मापदंडों के विरुद्ध नियम मिलान संसाधित नहीं किया जाएगा।
अनुरोध बॉडी सीमायह बॉडी रिक्वेस्ट का निरीक्षण करने के लिए सहेजे गए रिक्वेस्ट बॉडी के बाइट्स की अधिकतम संख्या है। यदि इस पैरामीटर का मान 0 है, तो WAF कंटेंट-लेंथ साइज़ को पूरी तरह से सेव कर लेगा। किसी भी सीमा मान को सेट करने की अनुशंसा की जाती है।
प्रतिक्रिया मुख्य भाग की जाँच करें. यह एक ध्वज है जिसे सेट किया जाना है यदि HTTP प्रतिक्रिया के मुख्य भाग का विश्लेषण किया जाना है। यदि यह ध्वज अक्षम है, तो मुख्य भाग को छोड़ दिया जाएगा और प्रतिक्रिया मुख्य पैरामीटर के विरुद्ध नियम मिलान संसाधित नहीं किया जाएगा। 524288 (512KB) को नजरअंदाज कर दिया जाएगा.
डिफ़ॉल्ट क्रिया. जब किसी नियम में कोई समाधान निर्दिष्ट नहीं किया जाता है, तो इस चयन बॉक्स का उपयोग डिफ़ॉल्ट समाधान के रूप में किया जाता है। नियम के सभी मिलान सफल होते हैं। यहाँ प्रत्येक क्रिया का संक्षिप्त विवरण दिया गया है।
- अनुमति देनाHTTP लेनदेन पूरा होने तक वर्तमान WAF की प्रोसेसिंग को सक्षम करेगा
- पासWAF HTTP लेनदेन को काटे बिना अगले नियम का मूल्यांकन जारी रखेगा।
- Denyवर्तमान HTTP लेनदेन समाप्त करें। अधिक नियमों के मूल्यांकन की अनुमति नहीं दी जाएगी। यदि नियम चरण 1 या 2 (अनुरोध का विश्लेषण) में मेल खाता है, तो अनुरोध बैकएंड पर वितरित नहीं किया जाएगा। यदि नियम चरण 3 या 4 (प्रतिक्रिया का विश्लेषण) में मेल खाता है, तो प्रतिक्रिया क्लाइंट को वितरित नहीं की जाएगी।
- पुन: निर्देशितHTTP लेनदेन रोक दिया जाएगा और क्लाइंट को HTTP रीडायरेक्ट भेजा जाएगा।
रीडायरेक्ट यूआरएल. यह वह URL है जो किसी नियम के मेल खाने पर क्लाइंट को भेजा जाता है। इस URL में रीडायरेक्ट रिज़ॉल्यूशन सेट अप है।
डिफ़ॉल्ट चरण. जब किसी नियम में कोई चरण निर्दिष्ट नहीं होता है, तो इस चयन बॉक्स का उपयोग डिफ़ॉल्ट चरण के रूप में किया जाता है। चरण एक HTTP चरण है जो आपको WAF नियम को हुक करने की अनुमति देता है। ये परिभाषित चरण हैं:
- अनुरोध शीर्षलेख प्राप्त हुएएक बार जब क्लाइंट से सभी अनुरोध हेडर लोड बैलेंसर द्वारा पढ़ लिए जाएंगे तो नियम निष्पादित हो जाएगा।
- अनुरोध निकाय प्राप्त हुआनियम तब निष्पादित किया जाएगा जब क्लाइंट से संपूर्ण अनुरोध निकाय लोड बैलेंसर में बफर किया जाएगा।
- पाठकों की प्रतिक्रिया प्राप्त हुईनियम तब निष्पादित होगा जब सर्वर से सभी प्रतिक्रिया हेडर लोड बैलेंसर द्वारा पढ़ लिए जाएंगे।
- प्रतिक्रिया निकाय प्राप्त हुआनियम तब निष्पादित होगा जब सर्वर से संपूर्ण प्रतिक्रिया निकाय लोड बैलेंसर द्वारा पढ़ा जाएगा।
- लॉगिंग से पहलेनियम तब निष्पादित होता है जब WAF प्रक्रिया लॉगिंग कार्य समाप्त कर लेती है।
डिफ़ॉल्ट लॉगयह एक लॉग डिफ़ॉल्ट क्रिया है। यदि नियम सेटिंग में लॉग के बारे में कोई क्रिया निर्दिष्ट नहीं की गई है, तो इस मान का उपयोग किया जाता है।
केवल लॉगिंगयदि यह चेकबॉक्स सक्षम है, तो सेट में नियमों का रिज़ॉल्यूशन पैरामीटर कभी भी निष्पादित नहीं किया जाएगा। यह कार्य मोड केवल तब उपलब्ध होता है जब सेट चल रहा हो।
नियम अक्षम करें #
ये तालिकाएं सेट के नियमों को बिना संशोधित किए अक्षम करने की अनुमति देती हैं।
सक्षम नियमयह सेट में वर्तमान में सक्षम नियमों की सूची है। नियमों की पहचान इसके द्वारा की जाती है नियम आईडी और उसका विवरण मापदंडों।
विकलांग नियमयह सेट में वर्तमान में अक्षम नियमों की सूची है।
WAF नियमों की सूची #
RSI नियम यह अनुभाग WAF नियमों को बनाने और संशोधित करने की अनुमति देता है जो HTTP हमलों का पता लगाते हैं और उनसे सुरक्षा प्रदान करते हैं।
वे नियम निर्देश हैं जिनका क्रमिक रूप से मूल्यांकन किया जाता है, यानी उसी क्रम में जो इस स्क्रीन पर दिखाया गया है। यदि नियमों को क्रमबद्ध करना आवश्यक है, तो सक्षम करें तरह फिर बटन दबाएं और इच्छित स्थान पर खींचें और छोड़ें।
नियमों के लिए संभावित मापदंडों का वर्णन नीचे किया गया है।
IDयह नियम सेट के अंदर नियम की पहचान करने के लिए एक पहचानकर्ता है। यह पहचानकर्ता सेट में नियम की स्थिति से मेल खाता है।
नियम आईडीयह नियम का एक अद्वितीय पहचानकर्ता है। फ़ार्म को ऐसे WAF सेट से लिंक करना संभव नहीं है जिसमें एक ही नियम ID वाले दो नियम हों।
विवरणयह नियम की पहचान करने के लिए एक वर्णनात्मक संदेश है। यह संदेश सफल मिलान में लॉग किया जाएगा।
चरणचरण HTTP अनुरोध के उस चरण को दर्शाता है जहाँ नियम निष्पादित किया जाएगा। संभावित चरण निम्न हैं:
- अनुरोध शीर्षलेख प्राप्त हुएएक बार जब क्लाइंट से सभी अनुरोध हेडर लोड बैलेंसर द्वारा पढ़ लिए जाएंगे तो नियम निष्पादित हो जाएगा।
- अनुरोध निकाय प्राप्त हुआनियम तब निष्पादित किया जाएगा जब क्लाइंट से संपूर्ण अनुरोध निकाय लोड बैलेंसर में बफर किया जाएगा।
- पाठकों की प्रतिक्रिया प्राप्त हुईनियम तब निष्पादित होगा जब सर्वर से सभी प्रतिक्रिया हेडर लोड बैलेंसर द्वारा पढ़ लिए जाएंगे।
- प्रतिक्रिया निकाय प्राप्त हुआनियम तब निष्पादित होगा जब सर्वर से संपूर्ण प्रतिक्रिया निकाय लोड बैलेंसर द्वारा पढ़ा जाएगा।
- लॉगिंग से पहलेनियम तब निष्पादित होता है जब WAF प्रक्रिया लॉगिंग कार्य समाप्त कर लेती है।
संकल्पयह चयन बॉक्स वह क्रिया है जिसे सभी मिलान शर्तें पूरी होने पर निष्पादित करने के लिए चुना जाता है।
- अनुमति देनायदि इस क्रिया वाला कोई नियम मेल खाता है, तो किसी और नियम का मूल्यांकन नहीं किया जाएगा (वर्तमान HTTP लेनदेन के लिए)।
- पासWAF HTTP लेनदेन को काटे बिना अगले नियम का मूल्यांकन जारी रखेगा।
- Denyवर्तमान HTTP लेनदेन समाप्त करें। नियमों का कोई और मूल्यांकन नहीं होगा। यदि नियम चरण 1 या 2 (अनुरोध का विश्लेषण) में मेल खाता है, तो अनुरोध बैकएंड पर वितरित नहीं किया जाएगा। यदि नियम चरण 3 या 4 (प्रतिक्रिया का विश्लेषण) में मेल खाता है, तो प्रतिक्रिया क्लाइंट को वितरित नहीं की जाएगी।
- पुन: निर्देशितHTTP लेनदेन रोक दिया जाएगा और क्लाइंट को HTTP रीडायरेक्ट भेजा जाएगा।
- डिफ़ॉल्ट क्रियायदि आप कोई भी लागू नहीं करते हैं तो संकल्प निर्धारित किया जाएगा। आमतौर पर, यह होगा अनुमति देना संकल्प
रीडायरेक्ट URLयह वह URL है जहाँ क्लाइंट को उस स्थिति में रीडायरेक्ट किया जाएगा जब नियम रीडायरेक्ट निष्पादित करेगा। यह पैरामीटर तब दिखाई देगा जब रिज़ॉल्यूशन फ़ील्ड में रीडायरेक्ट चुना जाएगा।
स्किपयदि सभी मिलान प्राप्त हो जाते हैं, तो नियम इस क्षेत्र में निर्दिष्ट नियमों की संख्या को छोड़ देगा।
इसके बाद छोड़ेंयदि सभी मिलान प्राप्त हो जाते हैं, तो नियम किसी अन्य फ़ायरवॉल स्थिति पर कूद जाएगा। नियम किसी 'चिह्न' या किसी अन्य नियम आईडी पर कूद सकता है। नियम आईडी एक छलांग के बाद निष्पादित होती है और वर्तमान नियम के समान चरण में होगी।
निष्पादित करनायह LUA स्क्रिप्ट का पथ है। स्क्रिप्ट को पहले लोड बैलेंसर पर अपलोड किया जाना चाहिए। पहला मैच प्राप्त होने के बाद इसे निष्पादित किया जाएगा।
लॉग इनयदि यह पैरामीटर सक्षम है, तो पहला मिलान प्राप्त होने पर नियम लॉग किया जाएगा।
WAF नियम को मूल रूप में संपादित करना #
यदि फॉर्म किसी दिए गए WAF नियम का पर्याप्त रूप से वर्णन नहीं करता है, और व्यवस्थापक इससे परिचित नहीं है सेकलैंग सिंटैक्स, संपादन विकल्प के माध्यम से नियम या नियमों का एक समूह बनाना संभव है। यह फ़ील्ड किसी भी निर्देश को स्वीकार करता है। यदि निर्देश और पैरामीटर द्वारा समर्थित हैं सेकलैंग सिंटैक्स के अनुसार, फॉर्म में व्यक्त किए गए पैरामीटर नहीं दिखाए जाएंगे। हालांकि, उन्हें एडिट फॉर्म में दिखाया जाएगा और रनिंग टाइम में प्रोसेस किया जाएगा।
यहां फॉर्म मोड और रॉ मोड दोनों में उदाहरण दिए गए हैं।
फॉर्म मोड #
यह मोड WAF नियम को संपादित करने के लिए अधिक उपयोगकर्ता-अनुकूल है।

रॉ मोड #
यह मोड अधिक उन्नत उपयोगकर्ताओं के लिए है।

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

- मार्कयह फ़ायरवॉल मार्क सेट करता है। मैच की स्थिति प्राप्त होने के बाद इन मार्क का उपयोग किया जाता है। अपेक्षित पैरामीटर वह नाम है जो मार्क की पहचान करता है।

- रिवाजयह फ़ॉर्म SecLang सिंटैक्स के नियमों (और नियमों के एक बैच) को स्वीकार करता है। इसके बारे में अधिक जानकारी के लिए सेकलैंग वाक्यविन्यास, पर जाएँ libmodsecurity परियोजना दस्तावेज़ीकरण.

शर्तों की सूची #
नीचे दी गई छवि में तालिका उन शर्तों की सूची दिखाती है, जिनके लिए HTTP पार्स किए गए पैकेट को उस नियम से मेल खाना चाहिए जिसे लागू किया जाएगा। ये सभी मिलान नियम में परिभाषित चरण में निष्पादित किए जाएँगे। मिलानों की क्रमिक रूप से जाँच की जाएगी और यदि वे सभी पूरे हो जाते हैं तो नियम लागू किया जाएगा।
मिलान का मूल्यांकन करने के लिए, WAF एक ऑपरेशन (पैरामीटर) निष्पादित करेगा ऑपरेटर और परिचालन) चरों की सूची के विरुद्ध। यदि सूची में कुछ चर ऑपरेशन का अनुपालन करते हैं, तो उन्हें सफल माना जाएगा। उदाहरण के लिए, निम्न छवि में, हेडर इमेजेज क्लाइंट द्वारा भेजे गए अनुरोध हेडर की सूची में खोजे जाते हैं। सबसे पहले, यह प्रत्येक हेडर के हर 64 बेस को डिकोड करता है और फिर हेडर को लो केस कैरेक्टर में बदल देता है। जब चरों का रूपांतरण पूरा हो जाता है, तो स्ट्रिंग की तलाश में एक नियमित अभिव्यक्ति लागू की जाती है छवियों रूपांतरित चरों की सूची में। मल्टी मैच विकल्प प्रत्येक परिवर्तन ऑपरेशन के लिए मिलान का प्रयास करेगा (बेस 64 डिकोडिंग के बाद और लो केस रूपांतरण के बाद)।
परिस्थितियाँ बनाना #
मैच एक शर्त बनाता है जिसे WAF नियम को निष्पादित करने के लिए प्राप्त किया जाना चाहिए। मैच का मूल्यांकन करने के लिए, WAF एक ऑपरेशन (पैरामीटर) निष्पादित करेगा ऑपरेटर और परिचालन) चरों की सूची के विरुद्ध। यदि संचालन और सूची के चरों के बीच कोई मिलान होता है, तो मिलान को सफल माना जाता है। उदाहरण के लिए, देखने के लिए स्थानीय होस्ट (127.0.0.1) अनुरोध हेडर सूची में और वर्चुअल होस्ट HTTP फ़ील्ड में, इसका मूल्यांकन निम्नलिखित कॉन्फ़िगरेशन के साथ किया जा सकता है।
शर्तें निर्धारित करने के लिए कॉन्फ़िगरेशन पैरामीटर ये हैं:
परिवर्तनीययह सुझाव देता है कि नियम HTTP लेनदेन के किस भाग से मिलान करने का प्रयास करेगा। आप सूचीबद्ध चरों में से चुन सकते हैं, और यदि उनमें से कुछ मेल खाते हैं तो मिलान को वैध माना जाएगा। जब आप चर फ़ील्ड पर क्लिक करेंगे तो एक ड्रॉप-डाउन मेनू दिखाई देगा। चर कॉन्फ़िगरेशन के बारे में जानकारी यहाँ पाई जा सकती है चर बनाना अनुभाग।
परिवर्तनोंपरिवर्तन चरों पर लागू किए गए संशोधनों की एक सूची है। परिवर्तन क्रमिक रूप से, फ़ील्ड में दिखाए गए समान क्रम में लागू किए जाते हैं, और मल्टी-मैच विकल्प का उपयोग करके लागू किए गए प्रत्येक परिवर्तन के लिए मिलान का प्रयास करना संभव है। परिवर्तन HTTP लेनदेन की किसी भी जानकारी को संशोधित नहीं करता है, उन्हें अस्थायी संदर्भों में सहेजा जाता है और ऑपरेशन समाप्त होने के बाद हटा दिया जाता है। यहाँ परिवर्तनों की एक सूची है। इस पैरामीटर का उपयोग एंटी-अवॉइड तकनीकों को हटाने या कोडिफिकेशन डेटा को हटाने के लिए किया जाता है।
ऑपरेटर. इस तरह से नियम मिलान की कोशिश करता है। यह पैरामीटर आमतौर पर के साथ संयुक्त होता है परिचालन. यहाँ ऑपरेटरों की एक सूची है.
परिचालन. मैच में नियम यही कोशिश करते हैं। पैरामीटर को आमतौर पर ऑपरेटर के साथ जोड़ा जाता है। अपेक्षित मूल्य के प्रकार को ऑपरेटर के साथ संरेखित करना होगा।
मल्टी मैच. इस पैरामीटर का उपयोग तब किया जाता है जब एक से अधिक परिवर्तन कॉन्फ़िगर किए जाते हैं। नियम चरों का मिलान करने का प्रयास करेगा, ऑपरेटर, और परिचालन रूपांतरणों के प्रत्येक मान के लिए। संभावित मान हैं: सत्य, जो बहु-मिलान को सक्षम करता है, या असत्य जो बहु-मिलान सुविधा को अक्षम करता है।
मेल नहीं करतायदि यह चेक-बॉक्स सक्षम है, तो मिलान का परिणाम नकारात्मक हो जाएगा, और परिवर्तित हो जाएगा <strong>उद्देश्य</strong> जब परिणाम असत्य या में परिवर्तित करना असत्य जब परिणाम <strong>उद्देश्य</strong>.
चर बनाना #
वेरिएबल्स मैच कंडीशन में अनिवार्य पैरामीटर हैं। वे HTTP के उस भाग का चयन करते हैं का अनुरोध/प्रतिक्रिया जानकारी देखने के लिए.
चरयह पैरामीटर HTTP अनुरोध/प्रतिक्रिया के क्षेत्र को जानकारी (समय, सर्वर…) खोजने के लिए निर्दिष्ट करता है।
चर का तर्क. जब कोई वैरिएबल चुना जाता है, तो कभी-कभी उसमें से कोई तत्व निर्दिष्ट करना आवश्यक होता है। उदाहरण के लिए, नीचे दी गई छवि दिखाती है कि अनुरोध हेडर कैसे काम करता है मेजबान चयनित चेक किया गया है.
चर के तत्वों की गणना करेंयह चेकबॉक्स वैरिएबल में तत्वों की संख्या गिनता है। यह सुविधा तब उपयोगी होती है जब वैरिएबल एक सूची हो।
मिलान के लिए इस चर को अनदेखा करेंयदि यह चेकबॉक्स सक्षम है, तो मिलान में चर की जाँच नहीं की जाएगी। यह सुविधा तब उपयोगी होती है जब किसी चर में मानों की सूची होती है, लेकिन उनमें से एक को बाहर करना भी आवश्यक होता है।
चरों की तालिका #
| परिवर्तनीय | विवरण |
|---|---|
| ARGS | यह किसी अनुरोध में तर्कों के मानों का संग्रह है। |
| ARGS_JSON | यह JSON अनुरोध में तर्कों के मानों वाला एक संग्रह है। यह चर उस स्थिति में उपलब्ध होगा जब WAF JSON तर्कों को पार्स करेगा। नियम सेट REQUEST-901-INITIALIZATION सक्षम होना चाहिए। |
| ARGS_संयुक्त_आकार | अनुरोध पैरामीटर का कुल आकार। फ़ाइलें बाहर रखी गई हैं। |
| ARGS_नाम | यह किसी अनुरोध में तर्कों के नामों का संग्रह है। |
| फ़ाइलें | इसमें उपयोगकर्ता filesys में फ़ाइल नाम शामिल हैं। केवल तभी जब डेटा मल्टीपार्ट/फ़ॉर्म-डेटा हो। |
| फ़ाइलें_संयुक्त_आकार | यह किसी अनुरोध में फ़ाइलों का कुल आकार है। केवल तभी जब डेटा मल्टीपार्ट/फ़ॉर्म-डेटा हो। |
| फ़ाइल_नाम | यह फ़ाइल नामों की एक सूची है जिसका उपयोग फ़ाइलों को अपलोड करने के लिए किया जाता है। केवल तभी जब डेटा मल्टीपार्ट/फ़ॉर्म-डेटा हो। |
| फ़ाइल_आकार | इसमें अलग-अलग फ़ाइल आकारों की सूची होती है। केवल तभी जब डेटा मल्टीपार्ट/फ़ॉर्म-डेटा हो। |
| REQBODY_त्रुटि | यदि अनुरोध बॉडी प्रारूप JSON या XML के लिए सही नहीं है तो यह चर 1 होता है, अन्यथा इसका मान 0 होता है। |
| अनुरोध_बॉडी | यह कच्चा बॉडी अनुरोध है। यदि अनुरोध में “application/x-www-form-urlencoded” हेडर नहीं है, तो REQUEST_HEADER चरण में “ctl:forceRequestBodyVariable” का उपयोग करना आवश्यक है। |
| अनुरोध_बॉडी_लंबाई | यह अनुरोध बॉडी के बाइट्स की संख्या है। |
| अनुरोध_कुकीज़ | यह सभी अनुरोध कुकी मानों की एक सूची है। |
| अनुरोध_कुकीज़_नाम | यह सभी अनुरोध कुकी नामों की एक सूची है। |
| अनुरोध_हेडर्स | इस चर में सभी अनुरोध शीर्षलेख होते हैं. |
| अनुरोध_हेडर्स_नाम | इस चर में अनुरोध हेडर नामों की एक सूची होती है। |
| REQUEST_METHOD | यह अनुरोध विधि है. |
| अनुरोध_प्रोटोकॉल | यह चर अनुरोध HTTP संस्करण प्रोटोकॉल रखता है। |
| REQUEST_URI | यह URI अनुरोध पथ है। वर्चुअल होस्ट को बाहर रखा गया है। |
| PATH_INFO | यह URI पथ से पहले की जानकारी है। |
| पूर्ण_अनुरोध | यह पूर्ण अनुरोध है। |
| पूर्ण_अनुरोध_लंबाई | यह बाइट्स की वह संख्या है जो एक पूर्ण अनुरोध में हो सकती है। |
| प्रतिक्रिया_शरीर | यह शरीर की स्वाभाविक प्रतिक्रिया है। |
| प्रतिक्रिया_सामग्री_लंबाई | यह प्रतिक्रिया निकाय के बाइट्स की संख्या है। |
| प्रतिक्रिया_हेडर्स | इस चर में सभी प्रतिक्रिया शीर्षलेख हैं. |
| प्रतिक्रिया_हेडर्स_नाम | इस चर में प्रतिक्रिया शीर्षलेख नामों की एक सूची होती है। |
| प्रतिक्रिया_प्रोटोकॉल | यह चर प्रतिक्रिया HTTP संस्करण प्रोटोकॉल रखता है। |
| प्रतिक्रिया_स्थिति | यह प्रतिक्रिया HTTP कोड है. |
| REMOTE_ADDR | यह क्लाइंट का IP पता है। |
| REMOTE_PORT | यह वह पोर्ट है जहां क्लाइंट कनेक्शन आरंभ करता है। |
| REMOTE_USER | यह प्रमाणीकृत उपयोगकर्ता का नाम है। |
| TIME | यह सर्वर का समय है। इसका प्रारूप घंटे:मिनट:सेकंड है। |
| अवधि में | यह वर्तमान लेनदेन के आरंभ समय से प्रारंभ होने वाले मिलीसेकंड की संख्या है। |
| मल्टीपार्ट_फ़ाइलनाम | यह एक बहुभागीय अनुरोध में फ़ील्ड फ़ाइल नाम है। |
| मल्टीपार्ट_नाम | यह एक बहुभागीय अनुरोध में फ़ील्ड नाम है। |
| मिलान_VAR | यह अंतिम मिलान ऑपरेशन में मिलान किया गया मान है। इस मान को कैप्चर विकल्प की आवश्यकता नहीं है, लेकिन इसे प्रत्येक मिलान ऑपरेशन में बदल दिया जाता है। |
| मिलान_VARS | यह सभी सुमेलित मानों की सूची है। |
| SERVER_ADDR | यह सर्वर का IP पता है। |
| सर्वर का नाम | यह वह वर्चुअल होस्ट है जो इसे अनुरोध URI से प्राप्त होता है। |
| लि | यह WAF का पर्यावरण चर है। |
| TX | यह वर्तमान लेनदेन के लिए चरों का एक संग्रह है। लेनदेन समाप्त होने पर ये चर हटा दिए जाएँगे। TX:0-TX:9 चर strRegex या वाक्यांश ऑपरेटरों के साथ कैप्चर किए गए मानों को सहेजते हैं। |
ऑपरेटरों की तालिका #
ऑपरेटरों के अलग-अलग संदर्भ हो सकते हैं। इस संदर्भ को उपसर्ग द्वारा दर्शाया जाता है, जैसे पूर्णांक के लिए int, IP संचालन के लिए IP, स्ट्रिंग के लिए str या डेटा को मान्य करने के लिए valid।
| परिवर्तनीय | विवरण |
|---|---|
| strशुरू होता है | यदि कोई भी चर ऑपरेटिंग मान से शुरू होता है तो नियम मेल खाएगा। |
| strशामिल | यदि किसी भी चर में ऑपरेटिंग का मान शामिल होगा तो नियम मेल खाएगा। |
| strContainsशब्द | यदि किसी भी चर में ऑपरेटिंग शब्द या मान शामिल होगा तो नियम मेल खाएगा। |
| स्ट्रैन्ड | यदि कोई भी चर ऑपरेटिंग मान के साथ समाप्त होता है तो नियम मेल खाएगा। |
| strविथिन | यदि कोई भी चर ऑपरेटिंग मान से शुरू होता है तो नियम मेल खाएगा। |
| strमैच | यदि कोई भी चर ऑपरेटिंग के मान से मेल खाता है तो नियम मेल खाएगा। यह ऑपरेटिंग वर्ण द्वारा विभाजित स्ट्रिंग की एक सूची हो सकती है | |
| strEq | यदि कोई भी चर ऑपरेटिंग मान के समरूप है तो नियम मेल खाएगा। |
| strरेगेक्स | यदि कोई भी चर ऑपरेटिंग में प्रयुक्त नियमित अभिव्यक्ति से मेल खाता है तो नियम मेल खाएगा। |
| strवाक्यांश | यदि कोई भी चर सूची संचालन के किसी भी मान से मेल खाता है तो नियम मेल खाएगा। |
| strPhrasesFromFile | यह ऑपरेटर strPhrases के लगभग समान है, लेकिन इसका संचालन वाक्यांशों की सूची के रूप में परिभाषित किया जाएगा। |
| intEQ | यदि कोई भी चर संचालन में प्रयुक्त संख्या के बराबर है तो नियम मेल खाएगा। |
| intGE | यदि कोई भी चर, संचालन में प्रयुक्त संख्या से बड़ा या बराबर है तो नियम मेल खाएगा। |
| intGT | यदि कोई भी चर, संचालन में प्रयुक्त संख्या से अधिक है तो नियम मेल खाएगा। |
| अंतर्राष्ट्रीय | यदि कोई भी चर, संचालन में प्रयुक्त संख्या से कम या बराबर है तो नियम मेल खाएगा। |
| intLT | यदि कोई भी चर, संचालन में प्रयुक्त संख्या से कम है तो नियम मेल खाएगा। |
| डिटेक्टSQLi | चरों की सूची पर SQL इंजेक्शन का पता लगाता है। यह ऑपरेटर किसी भी ऑपरेटिंग की अपेक्षा नहीं करता है। |
| डिटेक्टXSS | XSS इंजेक्शन का पता लगाने को चरों की सूची पर लागू करता है। यह ऑपरेटर किसी भी ऑपरेटिंग की अपेक्षा नहीं करता है। |
| आईपीमैच | ऑपरेटिंग के IP या नेटवर्क सेगमेंट को वैरिएबल की सूची से मिलान करने का प्रयास करता है। यदि IP पते या सेगमेंट की सूची जोड़ रहे हैं, तो कृपया विभाजक के रूप में अल्पविराम वर्ण का उपयोग करें। |
| आईपीमैचफ्रॉमफाइल | यह ऑपरेटर ipMatch के समान ही है, लेकिन यह IP और नेटवर्क खंडों की सूची वाली फ़ाइल के विरुद्ध चरों के मिलान का प्रयास करता है। |
| मान्यबाइटरेंज | यह सुनिश्चित करता है कि चर के बाइट्स की संख्या ऑपरेटिंग मानों में से एक में है। ऑपरेटिंग का एक उदाहरण "10, 13, 32-126" है। |
| मान्यUrlएन्कोडिंग | यह एनकोडेड डेटा को मान्य करता है। इस ऑपरेटर का उपयोग केवल ऐसे डेटा के लिए किया जाना चाहिए जो सामान्य रूप से एनकोड नहीं किया जाता है या ऐसे डेटा के लिए जो कई बार एनकोड किया जाता है। |
| मान्यUtf8एन्कोडिंग | यह उन चरों को मान्य करता है जो UTF-8 हैं। यह ऑपरेटर किसी भी ऑपरेटिंग की अपेक्षा नहीं करता है। |
| क्रेडिट कार्ड सत्यापित करें | यह सत्यापित करता है कि क्या चर क्रेडिट कार्ड नंबर हैं। यह पैरामीटर ऑपरेटिंग के रूप में एक नियमित अभिव्यक्ति को स्वीकार करता है। यदि यह मेल खाता है, तो यह कार्ड को सफलतापूर्वक सत्यापित करेगा। |
| सत्यापित करेंSSN | यह सत्यापित करता है कि क्या चर एक अमेरिकी सामाजिक सुरक्षा संख्या है। यह पैरामीटर एक नियमित अभिव्यक्ति को ऑपरेटिंग के रूप में स्वीकार करता है, अगर यह मेल खाता है तो यह SSN सत्यापन लागू करता है। |
| मैचऑलवेज | यह सदैव सत्य लौटाता है, जिससे मिलान अनिवार्य हो जाता है। |
| मैच कभी नहीं | यह हमेशा गलत परिणाम देता है, जिससे मिलान नहीं हो पाता। |
परिवर्तन की तालिका #
| परिवर्तन | विवरण |
|---|---|
| बेस64डिकोड | बेस64-एन्कोडेड स्ट्रिंग को डिकोड करता है। |
| बेस64डिकोडएक्सट | अमान्य वर्णों को अनदेखा करते हुए बेस64-एन्कोडेड स्ट्रिंग को डिकोड करता है। |
| sqlहेक्सडिकोड | SQL हेक्स डेटा को डिकोड करता है. |
| बेस64एनकोड | बेस64 एनकोडिंग का उपयोग करके एनकोड करता है। |
| cmdलाइन | एस्केप्ड कमांड लाइन से जुड़ी समस्याओं से बचा जाता है। |
| संपीड़ित रिक्त स्थान | किसी भी रिक्त स्थान वर्ण (0x20, \f, \t, \n, \r, \v, 0xa0) को रिक्त स्थान (ASCII 0x20) में परिवर्तित करता है, तथा अनेक क्रमिक रिक्त स्थान वर्णों को एक में संपीड़ित करता है। |
| सीएसएसडिकोड | CSS 2.x एस्केप नियमों का उपयोग करके एनकोड किए गए वर्णों को डिकोड करता है। यह फ़ंक्शन डिकोडिंग प्रक्रिया में केवल दो बाइट्स तक का उपयोग करता है, जिसका अर्थ है कि इसका उपयोग CSS एनकोडिंग (जो सामान्य रूप से एनकोड नहीं किया जाएगा) का उपयोग करके एनकोड किए गए ASCII वर्णों को उजागर करने के लिए किया जाता है, या काउंटर इवेशन के लिए, जो बैकस्लैश और गैर-हेक्साडेसिमल वर्णों का संयोजन है (उदाहरण के लिए, ja\vascript जावास्क्रिप्ट के बराबर है)। |
| एस्केपसेकडिकोड | ANSI C एस्केप अनुक्रमों को डिकोड करता है: \a, \b, \f, \n, \r, \t, \v, \\, \?, \', \”, \xHH (हेक्साडेसिमल), \0OOO (ऑक्टल)। आउटपुट में अमान्य एनकोडिंग छोड़ दी जाती है। |
| हेक्सडिकोड | एक स्ट्रिंग को डिकोड करता है जिसे उसी एल्गोरिथ्म का उपयोग करके एनकोड किया गया है जैसा कि हेक्सएनकोड में उपयोग किया गया है (निम्न प्रविष्टि देखें)। |
| हेक्सएनकोड | प्रत्येक इनपुट बाइट को दो हेक्साडेसिमल वर्णों से प्रतिस्थापित करके स्ट्रिंग (संभवतः बाइनरी वर्णों सहित) को एनकोड करता है। उदाहरण के लिए, xyz को 78797a के रूप में एनकोड किया गया है। |
| htmlEntityडिकोड | HTML इकाइयों के रूप में एनकोड किए गए वर्णों को डिकोड करता है। |
| jsडिकोड | जावास्क्रिप्ट एस्केप अनुक्रम को डिकोड करता है। |
| लंबाई | इनपुट स्ट्रिंग की लंबाई बाइट्स में देखता है, तथा उसे (स्ट्रिंग के रूप में) आउटपुट में रखता है। |
| लोअरकेस | वर्तमान C लोकेल का उपयोग करके सभी वर्णों को लोअरकेस में परिवर्तित करता है। |
| md5 | डेटा इनपुट से MD5 हैश की गणना करता है। गणना किया गया हैश कच्चे बाइनरी फॉर्म में होता है और इसे प्रिंट (या लॉग) करने के लिए टेक्स्ट में एनकोड करने की आवश्यकता हो सकती है। हैश फ़ंक्शन आमतौर पर हेक्सएनकोड के साथ संयोजन में उपयोग किए जाते हैं। |
| कोई नहीं | यह कोई वास्तविक परिवर्तन फ़ंक्शन नहीं है, बल्कि वर्तमान नियम से संबद्ध पिछले परिवर्तन फ़ंक्शनों को हटाने का निर्देश है। |
| सामान्य पथ | इनपुट स्ट्रिंग से एकाधिक स्लैश, निर्देशिका स्व-संदर्भ, और निर्देशिका बैक-संदर्भ (इनपुट के आरंभ को छोड़कर) को हटाता है। |
| सामान्य करें | normalizePath के समान, लेकिन पहले बैकस्लैश वर्णों को फॉरवर्ड स्लैश में परिवर्तित करता है। |
| समताEven7bit | 7-बिट डेटा की सम समता की गणना करता है, प्रत्येक लक्ष्य बाइट के 8वें बिट को गणना की गई समता बिट से प्रतिस्थापित करता है। |
| parityOdd7bit | 7-बिट डेटा की विषम समता की गणना करता है, प्रत्येक लक्ष्य बाइट के 8वें बिट को गणना की गई समता बिट से प्रतिस्थापित करता है। |
| parityZero7bit | 7-बिट डेटा की शून्य समता की गणना करता है, प्रत्येक लक्ष्य बाइट के 8वें बिट को शून्य समता बिट से प्रतिस्थापित करता है, जो ASCII7 डेटा के रूप में सम/विषम समता वाले 7-बिट डेटा के निरीक्षण की अनुमति देता है। |
| नल हटाएं | इनपुट से सभी NUL बाइट्स को हटाता है. |
| रिक्त स्थान हटाएं | इनपुट से सभी रिक्त स्थान वर्णों को हटाता है। |
| प्रतिस्थापित करेंटिप्पणियाँ | C-स्टाइल टिप्पणी (/* … */) की प्रत्येक घटना को एक सिंगल स्पेस से प्रतिस्थापित करता है (जिसकी कई लगातार घटनाएँ संपीड़ित नहीं होंगी)। असंबद्ध टिप्पणियों को भी स्पेस (ASCII 0x20) से प्रतिस्थापित किया जाएगा। हालाँकि, टिप्पणी (*/) की स्टैंडअलोन समाप्ति पर कार्रवाई नहीं की जाएगी। |
| टिप्पणियाँ हटाएं | सामान्य टिप्पणी वर्ण (/*, */, –, #) हटाता है. |
| रिप्लेसन्यूल्स | इनपुट में NUL बाइट्स को स्पेस वर्णों (ASCII 0x20) से प्रतिस्थापित करता है। |
| यूआरएलडिकोड | URL-एनकोडेड इनपुट स्ट्रिंग को डिकोड करता है। अमान्य एनकोडिंग (यानी, जो गैर-हेक्साडेसिमल वर्णों का उपयोग करते हैं, या जो स्ट्रिंग के अंत में हैं और जिनमें एक या दो बाइट्स गायब हैं) को परिवर्तित नहीं किया जाता है, लेकिन कोई त्रुटि नहीं उठाई जाती है। |
| अपरकेस | वर्तमान C लोकेल का उपयोग करके सभी वर्णों को अपरकेस में परिवर्तित करता है। |
| urlडिकोडयूनी | urlDecode की तरह, लेकिन माइक्रोसॉफ्ट-विशिष्ट %, u एन्कोडिंग के लिए समर्थन के साथ। |
| यूआरएलएनकोड | URL एनकोडिंग का उपयोग करके इनपुट स्ट्रिंग को एनकोड करता है। |
| utf8टूयूनिकोड | सभी UTF-8 वर्ण अनुक्रमों को यूनिकोड में परिवर्तित करता है। यह इनपुट सामान्यीकरण में मदद करता है, विशेष रूप से गैर-अंग्रेजी भाषाओं के लिए गलत सकारात्मक और गलत नकारात्मक को कम करता है। |
| sha1 | इनपुट स्ट्रिंग से SHA1 हैश की गणना करता है। गणना किया गया हैश कच्चे बाइनरी फॉर्म में होता है और इसे प्रिंट (या लॉग) करने के लिए टेक्स्ट में एनकोड करने की आवश्यकता हो सकती है। हैश फ़ंक्शन आमतौर पर हेक्सएनकोड के साथ संयोजन में उपयोग किए जाते हैं। |
| ट्रिमबाएं | इनपुट स्ट्रिंग के बाईं ओर से रिक्त स्थान हटाता है। |
| ट्रिमराइट | इनपुट स्ट्रिंग के दाईं ओर से रिक्त स्थान हटाता है। |
| ट्रिम | इनपुट स्ट्रिंग के बाएँ और दाएँ दोनों तरफ से रिक्त स्थान हटाता है। |
फार्म WAF सेटिंग्स #
यह अनुभाग HTTP(s) फ़ार्मों को वर्तमान WAF नियम सेट असाइन करने की अनुमति देता है।
इस अनुभाग में, एक या एक से अधिक फ़ार्म का चयन करना (शिफ्ट कीबोर्ड बटन को दबाए रखकर) और फिर WAF नियम सेट असाइन करना या उन्हें हटाना संभव होगा। डबल एरो बटन के साथ सभी उपलब्ध फ़ार्म से इसे असाइन करना या हटाना भी संभव है।









