
Portswigger के Burp के लिए Match & Replace नियम जो सभी उपकरणों में वैश्विक रूप से कार्य करते हैं।
ग्लोबल मैच एंड रिप्लेस (GMR) Burp Suite को मैच/रिप्लेस नियमों के साथ विस्तारित करता है, जिन्हें वैश्विक रूप से या आपकी पसंद के कई टूल्स (Repeater, Intruder, Proxy, आदि) में लागू किया जा सकता है। यह प्रति-अनुरोध और प्रतिक्रिया डिफ़ प्रदान करता है ताकि आप देख सकें कि वास्तव में क्या बदला।
यह एक्सटेंशन Burp Montoya API का उपयोग करता है।
burp-global-match-replace-*.jar डाउनलोड करें।./gradlew clean jar
JAR build/libs/ में होगा।
नोट: यह प्रोजेक्ट Burp संगतता के लिए Java 21 बाइटकोड को लक्षित करता है। बिल्ड चलाने के लिए Java 21+ का उपयोग करें (JAVA_HOME तदनुसार सेट करें)।
प्रत्येक नियम में निम्नलिखित गुण होते हैं:
. न्यूलाइन्स से मेल नहीं खाता।. न्यूलाइन्स से मेल खाता है (DOTALL)।^ और $ हमेशा प्रति-पंक्ति कार्य करते हैं (MULTILINE सक्षम)।सरल नियम वैकल्पिक वाइल्डकार्ड के साथ शाब्दिक टेक्स्ट से मेल खाते हैं:
* → कितने भी अक्षर? → ठीक एक अक्षरडिफ़ॉल्ट रूप से (multiline बंद है), वाइल्डकार्ड लाइन ब्रेक्स को पार नहीं करते। यदि multiline चालू है, तो * और ? न्यूलाइन्स तक फैल सकते हैं।
शाब्दिक * या ? से मैच करने के लिए, इसे बैकस्लैश के साथ एस्केप करें:
\\* → शाब्दिक *\\? → शाब्दिक ?\\\\ → शाब्दिक बैकस्लैशउदाहरण (एकल-पंक्ति): यूज़र एजेंट बदलें।
Match: User-Agent: *
Replace: User-Agent: Mozilla/5.0 (...) Chrome/123
RegEx नियम मानक Java रेगेक्स हैं। इंजन हमेशा MULTILINE का उपयोग करता है, और DOTALL का उपयोग केवल तभी करता है जब Multiline सक्षम हो। इसका मतलब है:
^ और $ डिफ़ॉल्ट रूप से पंक्ति सीमाओं से मेल खाते हैं. न्यूलाइन्स से नहीं मेल खाता जब तक multiline सक्षम न होउदाहरण (एकल-पंक्ति): एक हेडर हटाएँ।
Match: ^X-Test:.*$\r?\n
Replace:
नोट: अंत में $\r?\n हेडर लाइन और उसका लाइन-एंडिंग हटा देता है। केवल $ का उपयोग करने से लाइन ब्रेक जगह पर रह जाएगा।
उदाहरण (मल्टीलाइन): HTML टिप्पणियाँ हटाएँ।
Match: <!--.*?-->
Replace:
Multiline: ON
सुइट टैब पूर्ण नियम प्रबंधन और परीक्षण प्रदान करता है:
कॉलम:
परीक्षण आउटपुट हाइलाइट करता है:
जब कोई नियम किसी अनुरोध या प्रतिक्रिया को संशोधित करता है, तो अनुरोध/प्रतिक्रिया एडिटर के अंदर एक "GMR Diff" टैब दिखाई देता है (जैसे Proxy, Repeater, Intruder, आदि टूल्स में)।
संशोधित अनुरोध/प्रतिक्रियाएँ पीले रंग में हाइलाइट की जाएँगी, और नोट "Global Match & Replace" पर सेट होगा।
GMR Diff टैब केवल तब दिखाया जाता है जब किसी नियम ने वास्तव में संदेश को संशोधित किया हो। यदि कोई परिवर्तन लागू नहीं हुआ, तो टैब दिखाई नहीं देगा। यह कभी-कभी भ्रामक हो सकता है, उदाहरण के लिए यदि केवल अनुरोध या केवल प्रतिक्रिया पर GMR Diff है।
< और >) परिवर्तनों के माध्यम से चक्र करते हैंएक्सटेंशन सेटिंग्स पृष्ठ में शामिल है:
$1 या बैकरेफरेंस की व्याख्या नहीं करते।$1, $2, आदि का समर्थन करते हैं।GPL v3