
jsluice++ एक Burp Suite एक्सटेंशन है जिसे CLI टूल jsluice का उपयोग करके JavaScript ट्रैफ़िक की passive और active स्कैनिंग के लिए डिज़ाइन किया गया है।
jsluice++ एक Burp Suite एक्सटेंशन है जिसे CLI टूल jsluice का उपयोग करके JavaScript ट्रैफ़िक के पैसिव और एक्टिव स्कैनिंग के लिए डिज़ाइन किया गया है।
यह एक्सटेंशन स्टैटिक JavaScript फ़ाइलों से URLs, पाथ और secrets निकालने के लिए jsluice की क्षमताओं का उपयोग करता है और इसे Burp Suite के साथ एकीकृत करता है, जिससे आप Burp Suite के Sitemap या Proxy से JavaScript ट्रैफ़िक को आसानी से स्कैन कर सकते हैं, साथ ही डेटा निरीक्षण के लिए एक उपयोगकर्ता-अनुकूल इंटरफ़ेस और कई अतिरिक्त उपयोगी सुविधाएँ भी प्रदान करता है
आवश्यकताएँ:
यदि यह आपकी पहली बार jython एक्सटेंशन इंस्टॉल करना नहीं है तो आप चरण 3 पर जा सकते हैं।
go install github.com/BishopFox/jsluice/cmd/jsluice@latest (सुनिश्चित करें कि jsluice बाइनरी आपके $PATH में है अन्यथा एक्सटेंशन काम नहीं करेगा)यह एक्सटेंशन Burp Suite के कॉन्टेक्स्ट मेनू में एक आइटम जोड़ता है जो आपको Burp Suite के Sitemap टैब से प्रतिक्रियाओं को आसानी से प्रोसेस करने की अनुमति देता है
ऐसा करने के लिए sitemap ट्री में किसी भी होस्ट या sitemap टेबल में किसी भी आइटम पर राइट-क्लिक करें और Burp Suite के कॉन्टेक्स्ट मेनू में Extensions->jsluice++->Process selected item(s) चुनें।
जब sitemap ट्री से आइटम प्रोसेस किए जाते हैं तो एक्सटेंशन प्रत्येक चयनित आइटम का साइट मैप प्राप्त करेगा (कई होस्ट प्रोसेस किए जा सकते हैं)

Default: Off
जब Passive scan चालू किया जाता है तो एक्सटेंशन एक http हैंडलर पंजीकृत करेगा और Burp Suite के Proxy से प्रवाहित होने वाले ट्रैफ़िक की प्रतिक्रियाओं को प्रोसेस करेगा (पैसिव स्कैन सक्षम करते समय शोर कम करने के लिए केवल इन-स्कोप सुविधा का उपयोग करने की अनुशंसा की जाती है)
एक्सटेंशन किसी भी URL को प्रोसेस करेगा जिसमें .js फ़ाइल एक्सटेंशन या JavaScript mime type और सफल स्टेटस कोड (2xx) हो, jsluice के urls मोड का उपयोग करके।
प्रोसेस की गई JavaScript फ़ाइल अस्थायी रूप से स्थानीय रूप से ".jsluicepp" निर्देशिका में सहेजी जाती है और jsluice द्वारा प्रोसेस करने के बाद हटा दी जाती है,
यदि jsluice कोई डेटा लौटाता है, तो URL से जुड़ा होस्ट Hosts सूची में जोड़ दिया जाएगा, jsluice के परिणाम देखने के लिए बस होस्ट और वांछित फ़ाइल का चयन करें (कई फ़ाइलों का चयन किया जा सकता है)।
नोट: एक ही URL (GET पैरामीटर को छोड़कर) एक्सटेंशन के दोबारा लोड होने तक एक से अधिक बार प्रोसेस नहीं किया जाएगा, यह मॉनिटर किए गए URLs पर लागू नहीं होता है।
Files सूची में हर फ़ाइल को एक्सटेंशन द्वारा मॉनिटर किया जा सकता है, ऐसा करने के लिए बस फ़ाइल पर राइट-क्लिक करें और पॉपअप मेनू से "Monitor URL" विकल्प चुनें (यदि आप URL की मॉनिटरिंग रोकना चाहते हैं तो यह चरण दोहराएँ),
जब किसी नए URL की मॉनिटरिंग शुरू होती है तो उसका विवरण .jsluicepp/monitored_urls.txt में सहेजा जाता है और jsluice से आउटपुट की एक प्रति स्थानीय रूप से .jsluicepp/monitored_files/{host}_{filename_hash} में सहेजी जाती है (Secrets को छोड़कर),
मॉनिटर की गई फ़ाइलें Files सूची में हरे रंग में दिखाई देती हैं,
मॉनिटर किए गए URLs पर अनुरोध भेजे जाने की दर Monitor Interval चयनकर्ता में चयनित मान द्वारा निर्धारित होती है,
Monitor interval विकल्प हैं:
यदि jsluice ने स्थानीय रूप से सहेजी गई प्रति से भिन्न डेटा लौटाया है तो आपको निम्नलिखित पॉपअप डायलॉग के साथ सूचित किया जाएगा:

फ़ाइल की स्थानीय रूप से सहेजी गई प्रति .jsluicepp/monitored_files/{host}_{filename_hash}.old में स्थानांतरित कर दी जाएगी और नई फ़ाइल की एक नई प्रति सहेजी जाएगी,
एक्सटेंशन में मॉनिटर की गई फ़ाइल का चयन करते समय नई/संशोधित पंक्तियाँ हरे रंग में दिखाई देंगी और संशोधित पंक्तियों/हटाई गई पंक्तियों के पिछले संस्करण लाल रंग में दिखाई देंगे, उदाहरण:

यदि कोई मॉनिटर किया गया URL गैर-सफल स्टेटस कोड (2xx) के साथ प्रतिक्रिया करता है या jsluice कोई आउटपुट नहीं लौटाता है तो आपको एक पॉपअप डायलॉग दिखाया जाएगा जिसमें पूछा जाएगा कि क्या आप URL की मॉनिटरिंग रोकना चाहते हैं, यदि "Yes" चुना जाता है तो फ़ाइल की सभी स्थानीय प्रतियाँ हटा दी जाएंगी।
URL/Paths परिणाम तालिका की हर पंक्ति को पॉपअप मेनू में किसी भी पंक्ति पर राइट-क्लिक करके और "Send to Repeater" विकल्प चुनकर Burp Suite के Repeater में भेजा जा सकता है।
Query Params, Body Params और Headers शामिल किए जाएँगे यदि कोई मौजूद हों,
यदि URL/Path कॉलम "http://" या "https://" या "//" से शुरू होता है तो होस्ट URL/Path कॉलम से निकाला जाएगा अन्यथा चयनित होस्ट का उपयोग किया जाएगा,
यदि Headers कॉलम में application/json or application/xml or text/xml मान वाला content-type हेडर मौजूद है तो अनुरोध का बॉडी तदनुसार स्वरूपित किया जाएगा।
Default: On
यदि चुना जाता है तो UI में एक "Secrets" परिणाम तालिका जोड़ दी जाती है और urls मोड समाप्त होने के बाद एक्सटेंशन फ़ाइल पर jsluice के secrets मोड का उपयोग करेगा, यदि कोई अद्वितीय secrets मिलते हैं तो होस्ट उसके बगल में 🤫 इमोजी के साथ लाल रंग में दिखाई देगा, उदाहरण:

यदि आप कस्टम patterns कॉन्फ़िगरेशन का उपयोग करना चाहते हैं तो आप कोड में 'secrets_command' वेरिएबल को संशोधित करके ऐसा कर सकते हैं।
Default: Off
यदि चुना जाता है और Secrets चेकबॉक्स भी चुना जाता है तो जब कोई नया अद्वितीय secret मिलता है तो आपको एक पॉपअप डायलॉग के साथ सूचित किया जाएगा, डायलॉग 15 सेकंड के बाद स्वचालित रूप से बंद हो जाता है, उदाहरण डायलॉग:

हर प्रोसेस की गई फ़ाइल का URL Files सूची में फ़ाइल पर राइट-क्लिक करके और पॉपअप मेनू से "Copy URL" विकल्प चुनकर क्लिपबोर्ड पर कॉपी किया जा सकता है।
positive/negative match फ़िल्टर सुविधा परिणाम तालिका के भीतर URL/Path कॉलम को लक्षित करने के लिए डिज़ाइन की गई है, positive फ़िल्टर जोड़ते समय, केवल वे पंक्तियाँ जिनमें URL/Path कॉलम के भीतर positive match फ़िल्टर होता है, परिणाम तालिका में शामिल की जाएंगी। इसके विपरीत, negative फ़िल्टर जोड़ते समय, जिन पंक्तियों में URL/Path कॉलम में negative match फ़िल्टर होता है उन्हें परिणामों से बाहर रखा जाएगा,
कई फ़िल्टर लागू किए जा सकते हैं।

Default: Off
यदि चुना जाता है तो एक्सटेंशन यह निर्धारित करने के लिए Burp Suite के scope का उपयोग करेगा कि किसी URL को प्रोसेस किया जाना चाहिए या नहीं, इसके अतिरिक्त आउट-ऑफ-स्कोप होस्ट hosts सूची में प्रदर्शित नहीं होंगे।
Default: Off
जब चुना जाता है, तो .js फ़ाइल एक्सटेंशन/mime type वाले URLs के अलावा, एक्सटेंशन HTML mime type वाली प्रतिक्रियाओं की तलाश करेगा, यदि ऐसी प्रतिक्रिया मिलती है तो एक्सटेंशन प्रतिक्रिया बॉडी से किसी भी और सभी
