हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!
reverse-engineering-browser — लोकल-फर्स्ट macOS रिसर्च ब्राउज़र जो एक कस्टम Brave बिल्ड पर आधारित है, जो वेब ऐप्स को रिवर्स इंजीनियर करने के लिए नेटवर्क ट्रैफ़िक, फिंगरप्रिंट, स्क्रिप्ट और रनटाइम एविडेंस कैप्चर करता है। | Kitploit
लोकल-फर्स्ट macOS रिसर्च ब्राउज़र जो एक कस्टम Brave बिल्ड पर आधारित है, जो वेब ऐप्स को रिवर्स इंजीनियर करने के लिए नेटवर्क ट्रैफ़िक, फिंगरप्रिंट, स्क्रिप्ट और रनटाइम एविडेंस कैप्चर करता है।
फिंगरप्रिंट, अनुरोध, स्क्रिप्ट और रनटाइम व्यवहार के पीछे के ब्राउज़र साक्ष्य देखें।
अधिकृत वेब अनुप्रयोगों का निरीक्षण करने के लिए एक लोकल-फर्स्ट शोध ब्राउज़र और macOS वर्कस्पेस।
v0.2.1 जारी
Origin Trace Traffic में अब एक फुल-विड्थ, DevTools-शैली की अनुरोध तालिका है। पथ और होस्ट पढ़ने में आसान हैं, साथ में अलग स्थिति, प्रकार, विधि और समय कॉलम हैं। लाइव अनुरोध सूची के निचले भाग का अनुसरण करते हैं; ऊपर स्क्रॉल करने पर आपका स्थान सुरक्षित रहता है और नए अनुरोधों पर जाने का विकल्प मिलता है। किसी अनुरोध का चयन करने पर उसका पूरा URL Copy URL क्रिया के साथ दिखाई देता है। v0.2.0 के सत्र गोपनीयता और लॉन्च सुधार अभी भी उपलब्ध हैं।
v0.2.1: लाइव Traffic को एक पठनीय फुल-विड्थ अनुरोध तालिका के रूप में पुनः डिज़ाइन किया गया, जिसमें पथ और होस्ट पदानुक्रम, संक्षिप्त अनुरोध मेटाडेटा, फॉलो-टू-बॉटम अपडेट, नए-अनुरोध जंप, और पूर्ण-URL निरीक्षण व प्रतिलिपि शामिल हैं।
v0.2.0: प्रति-सत्र मेटाडेटा या सीमित-सामग्री कैप्चर नियंत्रण, स्पष्ट Keychain ऑप्ट-इन के साथ प्रॉम्प्ट-रहित पृथक प्रोफ़ाइल, सत्यापित ब्राउज़र तैयारी और पुनःप्रयास/पुनःलॉन्च प्रवाह, निजी Brave डायग्नोस्टिक्स, एक सिमेंटिक डीऑब्फस्केशन बेंचमार्क कॉर्पस, और स्वचालित डेवलपर-टूल बूटस्ट्रैप जोड़े गए।
v0.1.10: लॉन्च-समय की WebKit रद्दीकरण रेस को ठीक किया गया, जो Origin Trace के अपने ऑफ़लाइन शेल से नए शुरू किए गए लाइव वर्कस्पेस पर स्विच होते समय NSURLErrorDomain error -999 दिखा सकती थी।
v0.1.9: सामान्य ऐप लॉन्च को ब्रोकर, आर्टिफ़ैक्ट रिसीवर, डीबगर, विश्लेषक, लूपबैक UI, और इंस्ट्रुमेंटेड कस्टम Brave सत्र स्वचालित रूप से शुरू करने योग्य बनाया गया; आवश्यक हेल्पर्स को पैकेज किया गया और स्पष्ट स्टार्टअप विफलता रिपोर्टिंग तथा स्वामित्व वाली सफ़ाई जोड़ी गई।
v0.1.8: Sources के भीतर सीमित Rust/Oxc डीऑब्फस्केशन, मूल-बाइट प्रोवेनेंस, नेस्टिंग सुरक्षा, प्रॉक्सी और कस्टम डिकोडर मूल्यांकन, स्पष्ट JSFuck कोर्शन धारणाएँ, और सीमित लूप/स्विच डिस्पैचर रिकवरी जोड़ी गई।
v0.1.7: शोध इंटरफ़ेस को नवीनीकृत किया गया और उन्नत टूल, स्रोत निरीक्षण, अनुरोध विवरण, फिंगरप्रिंटिंग, मेमोरी, और प्रयोगों को पुनर्गठित किया गया।
v0.1.6: मजबूत स्रोत, मेमोरी, अनुरोध-सिग्नल, और विश्लेषक वर्कफ़्लो के साथ नेटिव एप्लिकेशन पैकेजिंग और सत्यापन अपडेट जोड़े गए।
v0.1.5: नेटिव शोध वर्कफ़्लो और macOS वितरण का विस्तार किया गया।
v0.1.4: नेटिव फिंगरप्रिंट प्रोब का विस्तार किया गया, प्रति-टैब नवीनतम-पहले गतिविधि और लाइव टैब गणना, ऑप्ट-इन Canvas छवि कैप्चर, स्पष्ट कतार-अंतराल रिपोर्टिंग, और प्रोब रोकने या वर्तमान सत्र की घटनाएँ साफ़ करने के नियंत्रण जोड़े गए।
v0.1.3: प्रोडक्शन ऐप बंडल से नमूना अनुरोध, घटनाएँ, और Canvas आउटपुट हटा दिए गए ताकि प्रत्येक सत्र वास्तविक कैप्चर किए गए साक्ष्य के साथ शुरू हो।
v0.1.2: Canvas छवि आउटपुट, एक लोकल रीप्ले पूर्वावलोकन, कैप्चर किए गए ड्रॉइंग फ़ंक्शन, फिंगरप्रिंट गतिविधि, घटना विवरण, फ़िल्टर, और अनुरोध सहसंबंध के साथ Fingerprinting वर्कस्पेस जोड़ा गया।
विशेषताएँ
लाइव नेटवर्क ट्रैफ़िक: पठनीय पथ, होस्ट, विधियाँ, स्थिति कोड, और समय के साथ एक फुल-विड्थ तालिका में अनुरोधों का निरीक्षण करें; किसी एक का चयन करके उसका पूरा URL, हेडर, अनुरोध बॉडी, और CDP के माध्यम से कैप्चर की गई प्रतिक्रिया बॉडी देखें।
टैब और डोमेन संगठन: ब्राउज़र टैब के अनुसार ट्रैफ़िक अलग करें, फिर किसी टैब को किसी विशिष्ट गंतव्य डोमेन या संसाधन प्रकार तक सीमित करें।
नेटिव ब्राउज़र साक्ष्य: Canvas, WebGL, Web Audio, डिवाइस और लेआउट API, Permissions, Storage, WebRTC, और JavaScript रनटाइम फिंगरप्रिंटिंग में कॉल और प्रॉपर्टी रीड रिकॉर्ड करें, साथ ही कस्टम Brave बिल्ड से अनुरोध जीवनचक्र मेटाडेटा भी।
ओरिजिन ट्रेसिंग: किसी अनुरोध का उन अवलोकित घटनाओं, स्क्रिप्ट, फ़्रेम, निष्पादन संदर्भों, और कैप्चर किए गए आर्टिफ़ैक्ट्स के माध्यम से पीछे की ओर अनुसरण करें जिन्होंने इसमें योगदान दिया।
स्रोत निरीक्षण और डीबगिंग: पेज स्रोत ब्राउज़ करें, ब्रेकपॉइंट सेट करें, JavaScript को रोकें और स्टेप करें, स्कोप का निरीक्षण करें, वॉच का मूल्यांकन करें, और एक लाइव कंसोल का उपयोग करें।
आर्टिफ़ैक्ट कैप्चर: हैश और प्रोवेनेंस के साथ नेटवर्क-वितरित और रनटाइम-जनित JavaScript तथा WebAssembly की सीमित प्रतियाँ रखें, साथ ही स्पष्ट रूप से अधिकृत Canvas छवि आउटपुट भी।
मेमोरी और बैकट्रेस टूल: हीप स्नैपशॉट, लाइव ऑब्जेक्ट, डिकोड किए गए स्टैक फ़्रेम, और VM-संबंधित निष्कर्षों का निरीक्षण करें।
शोध वर्कफ़्लो: अनुरोधों को संग्रह में सहेजें, पृथक अनुरोधों को रीप्ले करें, नियंत्रित प्रयोग चलाएँ, और लोकल विश्लेषक नोट्स रखें।
लोकल और सीमित कैप्चर: साक्ष्य मशीन पर ही रहता है। संवेदनशील अनुरोध हेडर रीडैक्ट किए जाते हैं, CDP कैप्चर में बॉडी 128 KiB तक सीमित होती हैं, और नेटिव कतारों तथा आर्टिफ़ैक्ट स्थानांतरणों की स्पष्ट सीमाएँ होती हैं।
नेटिव क्वाइट मोड: जब अनुरोध और प्रतिक्रिया सामग्री की आवश्यकता न हो तो DevTools संलग्न किए बिना नेटिव साक्ष्य कैप्चर चलाएँ।
दोनों फ़ाइलें अनज़िप करें और एप्लिकेशनों को एक-दूसरे के बगल में रखें, या Brave Browser Development को /Applications में इंस्टॉल करें।
Origin Trace खोलें। यह कैप्चर सेवाएँ और एक पृथक कस्टम Brave सत्र स्वचालित रूप से शुरू करता है।
संकलित ऐप्स Apple silicon Mac के लिए हैं। लिंक किया गया Brave Browser Development preview वर्तमान प्रोब समर्थन से पहले का है। हर नेटिव प्रोब का उपयोग करने के लिए इस रिलीज़ के स्रोत से पिन किए गए Brave इंटीग्रेशन को बिल्ड करें; डाउनलोड किया गया preview उन्हें प्रदर्शित नहीं कर सकता। Origin Trace में कोई बंडल किया गया नमूना साक्ष्य नहीं है। एप्लिकेशन ad-hoc हस्ताक्षरित हैं लेकिन Apple-notarized नहीं हैं, इसलिए पहले लॉन्च पर ऐप पर Control-click करके Open चुनना पड़ सकता है। v0.2.1 GitHub रिलीज़ टैग अहस्ताक्षरित है; इसका merge commit GitHub-सत्यापित है।
संकलित Brave ऐप डाउनलोड करने के लिए 100+ GiB स्रोत चेकआउट की आवश्यकता नहीं है। दोनों ऐप्स को डाउनलोड और एक्सट्रैक्ट करने के लिए लगभग 1 GiB जगह दें, साथ ही ब्राउज़र प्रोफ़ाइल और कैप्चर किए गए सत्रों के लिए जितनी जगह आप रखना चाहें।
मौजूदा कस्टम Brave बिल्ड के साथ लाइव कैप्चर चलाएँ
रिपॉज़िटरी रूट से:
root@kitploit:~
REB_CDP_NETWORK_CAPTURE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
Origin Trace और कस्टम Brave ब्राउज़र एक साथ खुलते हैं। उस Brave विंडो में ब्राउज़ करें और Traffic टैब में अनुरोध चुनें। सत्र समाप्त करने के लिए Brave बंद करें। कैप्चर किया गया साक्ष्य build/sessions/live/ के अंतर्गत संग्रहीत होता है।
CDP सामग्री कैप्चर स्पष्ट है क्योंकि यह पेज सामग्री बनाए रख सकता है। यह authorization, cookie, proxy-authorization, और set-cookie हेडर को रीडैक्ट करता है। स्ट्रीमिंग, कैश्ड, आंतरिक, या पहले से हटाई गई प्रतिक्रिया बॉडी अनुपलब्ध हो सकती हैं।
फिंगरप्रिंट ऑपरेशन नाम डिफ़ॉल्ट रूप से कैप्चर किए जाते हैं। इस एक सत्र के लिए HTMLCanvasElement.toDataURL() द्वारा लौटाई गई सटीक छवि को भी बनाए रखने के लिए, REB_CAPTURE_CANVAS_IMAGES=1 जोड़ें। Canvas छवि आउटपुट में पेज सामग्री हो सकती है, इसलिए यह डिफ़ॉल्ट रूप से अक्षम है, केवल लोकल सत्र स्टोर में रखा जाता है, और प्रति छवि 2 MiB तक सीमित है।
पहली बार कस्टम Brave ब्राउज़र बिल्ड करें
ये आवश्यकताएँ केवल तब लागू होती हैं जब Brave को स्रोत से संकलित किया जा रहा हो। डाउनलोड करने योग्य संकलित Brave ऐप का उपयोग करते समय ये लागू नहीं होतीं।
स्रोत-बिल्ड आवश्यकताएँ:
पूर्ण Xcode सहित macOS;
Node.js और pnpm;
Python 3, एक C++20 कंपाइलर, zlib, और Make;
कम से कम 150 GiB खाली, 200 से 250 GiB की अनुशंसा।
पिन किए गए चेकआउट को तैयार करें, इंटीग्रेशन लागू करें, इसे सत्यापित करें, और Brave बिल्ड करें:
root@kitploit:~
./scripts/bootstrap-brave.sh --init
./scripts/sync-browser-integration.sh
make brave-doctor
make brave-probe-check
./scripts/brave-toolchain.sh build
पहला पूर्ण बिल्ड कई घंटे ले सकता है। बाद के बिल्ड इंक्रीमेंटल होते हैं और सामान्यतः मौजूदा चेकआउट और संकलित ऑब्जेक्ट का पुनः उपयोग करते हैं। यह पूरा होने के बाद, पिछले अनुभाग की कमांड से लाइव कैप्चर शुरू करें।
CDP सामग्री कैप्चर के बिना चलाएँ
लाइव DevTools संलग्न किए बिना नेटिव मेटाडेटा और आर्टिफ़ैक्ट कैप्चर के लिए:
root@kitploit:~
REB_NATIVE_QUIET_MODE=1 \
REB_BRAVE_BINARY="/path/to/Brave Browser Development.app/Contents/MacOS/Brave Browser Development" \
make live
नेटिव क्वाइट मोड में Sources, ब्रेकपॉइंट, स्टेपिंग, वॉच, कंसोल, पूर्ण URL, हेडर, और बॉडी अनुपलब्ध हैं।
इस प्रोजेक्ट का उपयोग केवल उन सिस्टमों पर करें जिनके आप स्वामी हैं या जिनका निरीक्षण करने के लिए आपको स्पष्ट रूप से अधिकृत किया गया है।