
स्रोत कोड में रसदार सामग्री खोजने के लिए आश्चर्यजनक रूप से तेज़ प्रतिक्रिया क्रॉलर! 😎🔥
परीक्षित वातावरण: Windows, MAC, linux, और linux के लिए windows सबसिस्टम (WSL)
इस परियोजना को बनकर सहायता करें। इन शानदार प्रायोजकों को देखें:
Oxylabs 195 देशों में 100M+ IPs के साथ प्रीमियम प्रॉक्सी और तैयार-से-उपयोग Scraper APIs प्रदान करता है। आप इस अनूठे प्रोमो कोड boost35 का उपयोग करके Residential, Mobile proxies, Web Unblocker, और Scraper APIs पर 35% छूट पा सकते हैं।
छिपे हुए एंडपॉइंट्स खोजने के लिए प्रतिक्रियाओं को क्रॉल करें, या तो अनुरोध भेजकर, या स्थानीय प्रतिक्रिया फ़ाइलों से (यदि कोई हों)।
स्रोत में मिले जावास्क्रिप्ट वेरिएबल्स की एक सूची बनाएँ
संभावित टूटे लिंक की पहचान करने के लिए वेबसाइटों से सभी सोशल मीडिया लिंक निकालें
wordlist का उपयोग करके होस्ट को ब्रूट फ़ोर्स करना।
URL की सूची के लिए स्थिति कोड प्राप्त करें / होस्ट की सूची से लाइव डोमेन को फ़िल्टर करना।
उपर्युक्त सभी विशेषताएँ बड़ी तेज़ी से निष्पादित होती हैं।
SourceWolf Session मॉड्यूल का उपयोग करता है, जिसका अर्थ है कि यह TCP कनेक्शन का पुन: उपयोग करता है, जिससे यह वास्तव में तेज़ हो जाता है।
SourceWolf आपको प्रतिक्रिया फ़ाइलों को स्थानीय रूप से क्रॉल करने का विकल्प प्रदान करता है, ताकि आप किसी एंडपॉइंट पर फिर से अनुरोध न करें, जिसकी प्रतिक्रिया की आपके पास पहले से प्रति हो।
अंतिम एंडपॉइंट्स https://example.com/api/admin जैसे होस्ट के साथ पूर्ण रूप में होते हैं, न कि /api/admin के रूप में। यह तब उपयोगी हो सकता है जब आप होस्ट की सूची को स्कैन कर रहे हों।
> python3 sourcewolf.py -h
-l LIST, --list LIST List of javascript URLs
-u URL, --url URL Single URL
-t THREADS, --threads THREADS
Number of concurrent threads to use (default 5)
-o OUTPUT_DIR, --output directory-name OUTPUT_DIR
Store URL response text in a directory for further analysis
-s STATUS_CODE_FILE, --store-status-code STATUS_CODE_FILE
Store the status code in a file
-b BRUTE, --brute BRUTE
Brute force URL with FUZZ keyword (--wordlist must also be used along with this)
-w WORDLIST, --wordlist WORDLIST
Wordlist for brute forcing URL
-v, --verbose Verbose mode (displays all the requests that are being sent)
-c CRAWL_OUTPUT, --crawl-output CRAWL_OUTPUT
Output directory to store the crawled output
-d DELAY, --delay DELAY
Delay in the requests (in seconds)
--timeout TIMEOUT Maximum time to wait for connection timing out (in seconds)
--headers HEADERS Add custom headers (Must be passed in as {'Token': 'YOUR-TOKEN-HERE'}) --> Dictionary format
--cookies COOKIES Add cookies (Must be passed in as {'Cookie': 'YOUR-COOKIE-HERE'}) --> Dictionary format
--only-success Only print 2XX responses
--local LOCAL Directory with local response files to crawl for
--no-colors Remove colors from the output
--update-info Check for the latest version, and update if required
पूर्ण उपयोग:
python3 sourcewolf.py -l domains -o output/ -c crawl_output
domains URL की सूची है, जिसे आप इस प्रारूप में क्रॉल करना चाहते हैं:
https://example.com/
https://exisiting.example.com/
https://exisiting.example.com/dashboard
https://example.com/hitme
output/ वह निर्देशिका है जहाँ इनपुट फ़ाइल की प्रतिक्रिया टेक्स्ट फ़ाइलें संग्रहीत की जाती हैं।
वे output/2XX, output/3XX, output/4XX, और output/5XX प्रारूप में संग्रहीत होती हैं।
output/2XX में 2XX स्थिति कोड प्रतिक्रियाएँ संग्रहीत होती हैं, और इसी प्रकार!
-c फ़्लैग का उपयोग करके निर्दिष्ट crawl_output, उस निर्देशिका के अंदर आउटपुट संग्रहीत करने के लिए उपयोग किया जाता है, जिसे SourceWolf output/ निर्देशिका के अंदर संग्रहीत HTTP प्रतिक्रिया फ़ाइलों को क्रॉल करके उत्पन्न करता है (वर्तमान में केवल एंडपॉइंट्स)
crawl_output/ निर्देशिका में शामिल हैं:
endpoints - सभी पाए गए एंडपॉइंट्स
jsvars - सभी जावास्क्रिप्ट वेरिएबल्स
जैसे-जैसे SourceWolf में अधिक मॉड्यूल और विशेषताएँ एकीकृत होंगी, निर्देशिका में और फ़ाइलें होंगी।
(या)
एकल URL के लिए,
python3 sourcewolf.py -u example.com/api/endpoint -o output/ -c crawl_output
केवल फ़्लैग -l को -u से बदला गया है, बाकी सब समान रहता है।
python3 sourcewolf.py -b https://hackerone.com/FUZZ -w /path/to/wordlist -s status
-w फ़्लैग वैकल्पिक है। यदि निर्दिष्ट नहीं किया गया है, तो यह 6124 शब्दों वाली डिफ़ॉल्ट wordlist का उपयोग करेगा।
SourceWolf -b मान से FUZZ कीवर्ड को wordlist के शब्दों से बदलता है, और अनुरोध भेजता है। यह आपको ब्रूट फ़ोर्स get पैरामीटर मानों की भी अनुमति देता है।
-s आउटपुट को status नामक फ़ाइल में संग्रहीत करेगा।
स्क्रीनशॉट शामिल नहीं है क्योंकि आउटपुट
crawl responseमोड के समान दिखता है।
python3 sourcewolf -l domains -s live
domains फ़ाइल में सबडोमेन, एंडपॉइंट्स, js फ़ाइलें जैसी कोई भी चीज़ हो सकती है।
-s फ़्लैग प्रतिक्रिया को live फ़ाइल में लिखता है।
डिफ़ॉल्ट रूप से ब्रूट फ़ोर्स और प्रोबिंग मोड दोनों 404 को छोड़कर सभी स्थिति कोड प्रिंट करते हैं। आप
--only-successफ़्लैग का उपयोग करके केवल2XXप्रतिक्रियाएँ प्रिंट करने के लिए इस व्यवहार को अनुकूलित कर सकते हैं।
SourceWolf मल्टीथ्रेडिंग का भी उपयोग करता है।
सभी मोड के लिए थ्रेड्स की डिफ़ॉल्ट संख्या 5 है। आप -t फ़्लैग का उपयोग करके थ्रेड्स की संख्या बढ़ा सकते हैं।
उपरोक्त तीन मोड के अतिरिक्त, स्थानीय रूप से क्रॉल करने का विकल्प है, बशर्ते आपके पास वे स्थानीय हों, और sourcewolf संगत नामकरण परंपराओं का पालन करें।
सभी प्रतिक्रियाओं को एक निर्देशिका में संग्रहीत करें, मान लें responses/
python3 sourcewolf.py --local responses/
यह स्थानीय निर्देशिका को क्रॉल करेगा, और आपको परिणाम देगा।
सबडोमेन खोज
|
|
SourceWolf
|
|
लाइव सबडोमेन को फ़िल्टर करें
|
|
प्रतिक्रियाएँ संग्रहीत करें और छिपे हुए एंडपॉइंट्स खोजें / निर्देशिका ब्रूट फ़ोर्सिंग
इस बिंदु पर, आपके पास लक्ष्य से बहुत सारे एंडपॉइंट्स होंगे, जो स्कैन करने के समय वेब पेजों से वास्तविक समय में निकाले गए होंगे।
SourceWolf का मूल उद्देश्य व्यापक दृष्टिकोण से प्रतिक्रियाओं को क्रॉल करना है, न केवल छिपे हुए एंडपॉइंट्स खोजने के लिए, बल्कि उन सभी कार्यों को स्वचालित करने के लिए भी जो प्रतिक्रिया फ़ाइलों को मैन्युअल रूप से खोजकर किए जाते हैं।
ऐसा ही एक उदाहरण स्रोत में किसी लीक हुई कुंजी को मैन्युअल रूप से खोजना होगा।
यह मूल उद्देश्य उस मॉड्यूलर तरीके की व्याख्या करता है जिसमें फ़ाइलें लिखी गई हैं।
SourceWolf को टर्मिनल से ही अपडेट करना संभव है, बिना रिपॉजिटरी को फिर से क्लोन किए।
SourceWolf हर बार चलने पर अपडेट की जाँच करता है, और उपयोगकर्ता को किसी भी उपलब्ध अपडेट के बारे में सूचित करता है, साथ ही इसका सारांश भी देता है।
चलाने पर
python3 sourcewolf.py --update-info
अपडेट के बारे में अधिक जानकारी मिलती है।
जब अपडेट उपलब्ध हों, तो आपको update.py फ़ाइल को SourceWolf निर्देशिका के बाहर ले जाना होगा, और चलाना होगा।
चेतावनी: यह आपकी SourceWolf निर्देशिका के अंदर सभी फ़ाइलों और फ़ोल्डरों को हटा देता है
python3 update.py /path/to/SourceWolf
यह वास्तव में निर्देशिका को हटाता है, और रेपो को वापस क्लोन करता है।
वर्तमान में, sourcewolf केवल स्रोत से छिपे हुए एंडपॉइंट्स खोजने का समर्थन करता है, लेकिन आप भविष्य में अन्य सुविधाओं के एकीकृत होने की उम्मीद कर सकते हैं।
आप कहाँ योगदान दे सकते हैं?
मुख्य रूप से sourcewolf के साथ अधिक मॉड्यूल को एकीकृत करने के लिए योगदान की आवश्यकता है, हालाँकि टाइपो होने पर भी PR खोलने के लिए स्वतंत्र महसूस करें।
पुल रिक्वेस्ट भेजने से पहले, सुनिश्चित करें कि आप नवीनतम संस्करण पर हैं।
> यदि आप कोई नई सुविधा जोड़ने जा रहे हैं, तो पहले एक issue खोलें ताकि यह पुष्टि हो सके कि इसकी आवश्यकता है! आपको एक नई सुविधा को कोड करने में समय बर्बाद नहीं करना चाहिए जिसकी आवश्यकता नहीं है।
आपके सामने आने वाली किसी भी समस्या को खोलने के लिए स्वतंत्र महसूस करें।
सुनिश्चित करें कि आप अपने ऑपरेटिंग सिस्टम, चलाए गए कमांड, और यदि संभव हो तो issue खोलते समय स्क्रीनशॉट शामिल करें, जिससे मेरे लिए समस्या को पुन: उत्पन्न करना आसान हो जाता है।
आप issue खोलकर नई सुविधाओं का अनुरोध भी कर सकते हैं, या मौजूदा सुविधाओं को बढ़ा सकते हैं।
फ़ाइलों को स्थानीय रूप से क्रॉल करने के लिए, आपको कुछ नामकरण परंपराओं का पालन करना होगा। ये परंपराएँ SourceWolf को सीधे होस्ट नाम की पहचान करने और इस प्रकार सभी एंडपॉइंट्स को पार्स करने में सक्षम बनाने के लिए हैं, जिनमें सापेक्ष एंडपॉइंट्स भी शामिल हैं।
एक URL https://example.com/api/ पर विचार करें
example.com/apiexample.com@apiइस प्रकार फ़ाइल अंततः [email protected] जैसी दिखती है
लोगो Murugan artworks द्वारा डिज़ाइन किया गया
SourceWolf MIT लाइसेंस का उपयोग करता है