
WebSocket संदेशों को कस्टम Python कोड के साथ फ़ज़िंग करने के लिए Burp Suite एक्सटेंशन, जो कई इंजन, HTTP मिडलवेयर रूटिंग और प्रतिक्रिया विश्लेषण का समर्थन करता है।
कस्टम Python कोड का उपयोग करके WebSocket संदेशों को फ़ज़ करने के लिए एक एक्सटेंशन।
नोट: यह संदेश भेजने के लिए एक नया WebSocket कनेक्शन स्थापित करेगा।
queue_websockets(base_websocket, message)websocket_connection ऑब्जेक्ट निम्नलिखित विधियाँ प्रदान करता है:
create(base_websocket) Burp Suite का उपयोग करके एक WebSocket कनेक्शन बनाता है।create(base_websocket, engine) समर्थित इंजनों में से एक का उपयोग करके कनेक्शन आरंभ करता है: BURP, TURBO या THREADED।create(base_websocket, engine, config) मैन्युअल सेटिंग्स का उपयोग करके कनेक्शन आरंभ करता है: TURBO और THREADED इंजनों के साथ।config() TURBO और THREADED इंजनों द्वारा उपयोग किया जाने वाला डिफ़ॉल्ट कॉन्फ़िगरेशन बनाता हैconfig(connectionTimeout, sendingInterval, retries, number_of_threads, hello_message, send_ping_messages, use_chunks)connectionTimeout - कनेक्शन टाइमआउट (Integer)sendingInterval - WebSocket फ़्रेम के बीच मिलीसेकंड में विलंब (Integer)retries - कनेक्शन बंद होने पर पुनः कनेक्ट करने के प्रयासों की संख्या (Integer)number_of_threads - THREADED इंजन द्वारा उपयोग किए जाने वाले थ्रेड्स की संख्या (Integer)hello_message - कनेक्शन पर भेजा जाने वाला प्रारंभिक WebSocket संदेश (String)send_ping_messages - क्या इंजन को ping संदेश भेजने चाहिए (boolean)use_chunks - क्या इंजन को chunked अनुरोध भेजने चाहिए (boolean)एक बार WebSocket कनेक्शन स्थापित हो जाने के बाद, संदेशों को भेजने के लिए कतार में रखा जा सकता है।
इस ऑब्जेक्ट पर queue() विधि का उपयोग करें।
queue(String message): संदेश भेजेंqueue(String message, String replacement): संदेश भेजें। replacement आपके संदेश में %s के सभी उदाहरणों को बदल देगाqueue(FrameType code, byte[] message): निर्दिष्ट प्रकार कोड के साथ एक पेलोड भेजता है:queue(FrameType code, byte[] message, Integer legth): कस्टम लंबाई और प्रकार कोड के साथ एक पेलोड भेजता है।queue(FrameType code, byte[] message, String legth): Long स्ट्रिंग के रूप में परिभाषित कस्टम लंबाई के साथ एक पेलोड भेजता है।queueWithComment(String message, String comment): संलग्न टिप्पणी के साथ एक संदेश भेजता है।queueWithComment(String message, String replacement, String comment): टिप्पणी के साथ एक संदेश भेजता है, जिसमें replacement संदेश में सभी %s उदाहरणों को बदल देता है।message स्क्रीन के शीर्ष पर WebSocket संदेश संपादक की सामग्री को दर्शाता है। इसे मैन्युअल रूप से संपादित किया जा सकता है या Python स्क्रिप्ट के भीतर संशोधित किया जा सकता है।
handle_outgoing_message(websocket_message)परिणाम तालिका में आउटगोइंग संदेशों को सशर्त रूप से जोड़ने के लिए इस विधि का उपयोग करें।
handle_incoming_message(websocket_message)परिणाम तालिका में इनकमिंग संदेशों को सशर्त रूप से जोड़ने के लिए इस विधि का उपयोग करें।
websocket_messageविधियाँ:
getMessage(): संदेश को String के रूप में प्राप्त करता है।getDirection(): संदेश की दिशा प्राप्त करता है (burp.api.montoya.websocket.Direction)।getLength(): संदेश की लंबाई प्राप्त करता है।getDateTime(): टाइमस्टैम्प प्राप्त करता है (java.time.LocalDateTime)।getComment(): संदेश से जुड़ी टिप्पणी प्राप्त करता है।setComment(String comment): संदेश पर एक टिप्पणी सेट करता है।getConnection(): कनेक्शन प्राप्त करता है, जिससे अतिरिक्त संदेशों को कतार में रखा जा सकता है।getHash(): संदेश हैश प्राप्त करता है। समान हैश वाले इनकमिंग और आउटगोइंग संदेशों को अनुरोध-प्रतिक्रिया जोड़े के रूप में चिह्नित किया जाता है।setHash(long id): संदेश के लिए एक कस्टम हैश सेट करता है।getTime(): मिलीसेकंड में प्रतिक्रिया समय प्राप्त करता है।isInteresting(): निर्धारित करता है कि संदेश विशेषताएँ अन्य संदेशों से भिन्न हैं या नहीं, इसके आधार पर: