
OWASP Raider: a novel framework for manipulating the HTTP processes of persistent sessions

OWASP Raider को वेब प्रमाणीकरण परीक्षण को बेहतर बनाने के उद्देश्य से विकसित किया गया था। अब तक यह विकसित हो चुका है और इसका उपयोग सभी प्रकार की स्टेटफुल HTTP प्रक्रियाओं के लिए किया जा सकता है। यह क्लाइंट-सर्वर सूचना आदान-प्रदान को एक सीमित अवस्था मशीन (finite state machine) के रूप में अमूर्त करता है। प्रत्येक चरण में इनपुट के साथ एक अनुरोध, आउटपुट के साथ एक प्रतिक्रिया, प्रतिक्रिया पर किए जाने वाले मनमाने कार्य और अन्य चरणों के लिए सशर्त लिंक शामिल होते हैं। इस प्रकार, एक ग्राफ जैसी संरचना बनती है। Raider आपको जटिल सिस्टम का अनुकरण करने की अनुमति देता है, साथ ही आपको सिस्टम में और बाहर आने वाले डेटा के प्रत्येक टुकड़े को नियंत्रित करने की अनुमति देता है।
Raider HTTP प्रक्रियाओं के लिए क्लाइंट और सर्वर के बीच सूचना प्रवाह का वर्णन करने के लिए एक DSL परिभाषित करता है। प्रक्रिया के प्रत्येक चरण का वर्णन एक Flow द्वारा किया जाता है, जिसमें इनपुट के साथ Request, आउटपुट के साथ Response, और अन्य Flows के लिंक सहित मनमाने कार्य शामिल होते हैं:

कई Flows को एक साथ जोड़कर किसी भी स्टेटफुल HTTP प्रक्रिया का अनुकरण किया जा सकता है। FlowGraphs प्रारंभिक बिंदु को इंगित करते हैं। इन्हें किसी भी Flow पर रखा जा सकता है। एक FlowGraphs श्रृंखला में सभी Flows को तब तक चलाता है जब तक Success/Failure वापस नहीं आ जाता या कोई और लिंक नहीं होते।

Raider का कॉन्फ़िगरेशन Emacs से प्रेरित है। Hylang का उपयोग किया जाता है, जो Python के ऊपर LISP है। LISP का उपयोग इसके "Code is Data, Data is Code" गुण के कारण किया जाता है। LISP मैक्रोज़ के जादू से स्वचालित रूप से कॉन्फ़िगरेशन उत्पन्न करना आसान हो जाता है। लचीलापन इसके DNA में है, जिसका अर्थ है कि इसे वास्तविक कोड के साथ असीमित रूप से बढ़ाया जा सकता है। उदाहरण के लिए, आप इसका उपयोग HTTP हमलों के लिए प्रूफ-ऑफ-कॉन्सेप्ट को आसानी से बनाने, संग्रहीत करने, पुनरुत्पादित करने और साझा करने के लिए कर सकते हैं। Raider के साथ आप अपने Projects में खोज भी सकते हैं, hyfile, Flows, FlowGraphs, आदि द्वारा फ़िल्टर कर सकते हैं... फिर आप या तो केवल एक चरण चलाते हैं, या चरणों की एक श्रृंखला चलाते हैं, ताकि आप किसी भी HTTP प्रक्रिया पर स्वचालित और परीक्षण चला सकें।

उदाहरण के लिए, आप इसका उपयोग HTTP हमलों के लिए प्रूफ-ऑफ-कॉन्सेप्ट को आसानी से बनाने, संग्रहीत करने, पुनरुत्पादित करने और साझा करने के लिए कर सकते हैं। Raider के साथ आप अपने Projects में खोज भी सकते हैं, hyfile, Flows, FlowGraphs, आदि द्वारा फ़िल्टर कर सकते हैं... फिर आप या तो केवल एक चरण चलाते हैं, या चरणों की एक श्रृंखला चलाते हैं, ताकि आप किसी भी HTTP प्रक्रिया पर स्वचालित और परीक्षण चला सकें।
आप अपने Projects में खोज भी सकते हैं, hyfile, Flows, FlowGraphs, आदि by फ़िल्टर कर सकते हैं... फिर आप या तो केवल एक चरण चलाते हैं, या चरणों की एक श्रृंखला चलाते हैं, ताकि आप HTTP प्रक्रिया पर स्वचालित और परीक्षण चला सकें।