Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Crawlector — Crawlector एक खतरा शिकार ढाँचा है जो वेबसाइटों पर दुर्भावनापूर्ण वस्तुओं की स्कैनिंग के लिए डिज़ाइन किया गया है। | Kitploit
उपकरण/GitHubGitHub/mfmokbel/crawlector
OSINT (खुला स्रोत खुफिया)भेद्यता स्कैनरखतरा फ़ीड और एग्रीगेटरजानकारी एकत्र करनावेब सुरक्षामालवेयर विश्लेषणखतरा खुफियाक्रॉलर
GitHubmfmokbel/crawlector

Crawlector

Crawlector एक खतरा शिकार ढाँचा है जो वेबसाइटों पर दुर्भावनापूर्ण वस्तुओं की स्कैनिंग के लिए डिज़ाइन किया गया है।

रिपॉजिटरी देखें
1231028 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
वेबसाइट

Crawlector

Crawlector (नाम Crawlector Crawler और Detector का संयोजन है) एक खतरा-शिकार फ्रेमवर्क है जो वेबसाइटों में दुर्भावनापूर्ण वस्तुओं की स्कैनिंग के लिए डिज़ाइन किया गया है।

नोट-1: इस फ्रेमवर्क को पहली बार 22 अक्टूबर, 2022 को इटली के बर्गमो में No Hat सम्मेलन में प्रस्तुत किया गया था (स्लाइड्स, YouTube रिकॉर्डिंग)। साथ ही, इसे दूसरी बार 2 दिसंबर, 2022 को सिंगापुर में AVAR सम्मेलन में प्रस्तुत किया गया।

नोट-2: साथ में दिया गया टूल EKFiddle2Yara (एक ऐसा टूल जो EKFiddle नियमों को लेकर उन्हें Yara नियमों में बदलता है) जिसका उल्लेख वार्ता में किया गया था, दोनों सम्मेलनों में जारी किया गया था।

नोट-3: संस्करण 2.0 (Photoid Build:180923), एक मील का पत्थर रिलीज़, 18 सितंबर, 2023 को जारी किया गया था।

नोट-4: संस्करण 2.1 (Universe-647 Build:031023) 03 अक्टूबर, 2023 को जारी किया गया था। एक प्रमुख जोड़ Slack अलर्ट सूचना सुविधा है।

नोट-5: संस्करण 2.2 (Hallstatt Build:051123) 05 नवंबर, 2023 को जारी किया गया था। एक प्रमुख जोड़ Slack रिमोट कंट्रोल सुविधा है।

नोट-6: संस्करण 2.3 (Munich Build:241123) 24 नवंबर, 2023 को जारी किया गया था। एक प्रमुख जोड़ DNS नेमसर्वर सुविधा है।

नोट-6: संस्करण 2.3.1 {Nero Build:131225} 13 दिसंबर, 2025 को जारी किया गया था। यह एक रखरखाव रिलीज़ है।

विशेषताएँ

  • अतिरिक्त लिंक खोजने के लिए वेबसाइटों की स्पाइडरिंग का समर्थन करता है (केवल 2 स्तरों तक)
  • नियम स्कैनिंग के लिए Yara को बैकएंड इंजन के रूप में एकीकृत करता है
  • ऑनलाइन और ऑफलाइन स्कैनिंग का समर्थन करता है
  • डोमेन/साइटों के डिजिटल प्रमाणपत्रों के लिए क्रॉलिंग का समर्थन करता है
  • पृष्ठ पर दुर्भावनापूर्ण URL खोजने के लिए URLhaus से क्वेरी करने का समर्थन करता है
  • डीप ऑब्जेक्ट एक्सट्रैक्शन (DOE)
  • Slack अलर्ट सूचना
  • HTTP रीडायरेक्शन के लिए पैरामीट्रिज्ड समर्थन
  • Whois जानकारी प्राप्त करना
  • TLSH (Trend Micro Locality Sensitive Hash) और md5, sha1, sha256, और ripemd128 जैसे अन्य मानक क्रिप्टोग्राफिक हैश फ़ंक्शनों के साथ पृष्ठ की सामग्री को हैश करने का समर्थन करता है
    • यदि पृष्ठ का आकार 50 बाइट्स से कम है, या डेटा में पर्याप्त यादृच्छिकता मौजूद नहीं है, तो TLSH कोई मान वापस नहीं करेगा
  • प्रत्येक URL की रेटिंग और श्रेणी क्वेरी करने का समर्थन करता है
  • एक ही डोमेन के लिए सभी उपलब्ध TLD और/या सबडोमेन खोजने का प्रयास करके किसी दिए गए साइट का विस्तार करने का समर्थन करता है
    • यह सुविधा Omnisint Labs API (यह साइट 10 मार्च, 2023 तक डाउन है) और RapidAPI APIs का उपयोग करती है
    • TLD विस्तार कार्यान्वयन मूल रूप से है
    • यह सुविधा, रेटिंग और वर्गीकरण के साथ, मूल डोमेन के लिए स्कैम/फ़िशिंग/दुर्भावनापूर्ण डोमेन खोजने की क्षमता प्रदान करती है
  • डोमेन रिज़ॉल्यूशन (IPv4 और IPv6) का समर्थन करता है
  • स्कैन की गई वेबसाइट पृष्ठों को बाद में स्कैन करने के लिए सहेजता है (ज़िप संपीड़ित के रूप में सहेजा जा सकता है)
  • फ्रेमवर्क की सभी सेटिंग्स एक ही अनुकूलन योग्य कॉन्फ़िगरेशन फ़ाइल के माध्यम से नियंत्रित की जाती हैं
  • सभी स्कैनिंग सत्र एक अच्छी तरह से संरचित CSV फ़ाइल में सहेजे जाते हैं, जिसमें स्कैन की जा रही वेबसाइट के बारे में ढेरों जानकारी के साथ-साथ ट्रिगर हुए Yara नियमों के बारे में जानकारी होती है
  • कई अन्य सुविधाएँ...
  • सभी HTTP(S) संचार प्रॉक्सी-अवेयर हैं
  • एक एक्जीक्यूटेबल
  • C++ में लिखा गया

URLHaus स्कैनिंग और API एकीकरण

यह प्रत्येक स्कैन किए जा रहे पृष्ठ के विरुद्ध दुर्भावनापूर्ण URLs की जाँच करने के लिए है। फ्रेमवर्क या तो URLHaus सर्वर से दुर्भावनापूर्ण URLs की सूची क्वेरी कर सकता है (कॉन्फ़िगरेशन: url_list_web), या डिस्क पर एक फ़ाइल से (कॉन्फ़िगरेशन: url_list_file), और यदि बाद वाला निर्दिष्ट है, तो यह पूर्व पर वरीयता लेता है।

यह url_list_web या url_list_file में सभी URL प्रविष्टियों के विरुद्ध प्रत्येक पृष्ठ की सामग्री की खोज करके काम करता है, सभी घटनाओं की जाँच करता है। इसके अतिरिक्त, एक मिलान पर, और यदि कॉन्फ़िगरेशन विकल्प check_url_api सही पर सेट है, तो Crawlector url_api कॉन्फ़िगरेशन विकल्प में सेट API URL पर एक POST अनुरोध भेजेगा, जो एक मिलान URL के बारे में अतिरिक्त जानकारी के साथ एक JSON ऑब्जेक्ट लौटाता है। ऐसी जानकारी में urlh_status (जैसे, online, offline, unknown), urlh_threat (जैसे, malware_download), urlh_tags (जैसे, elf, Mozi), और urlh_reference (जैसे, https://urlhaus.abuse.ch/url/1116455/) शामिल हैं। यह जानकारी लॉग फ़ाइल cl_mlog_<current_date><current_time><(pm|am)>.csv (नीचे देखें) में शामिल की जाएगी, केवल यदि check_url_api सही पर सेट है। अन्यथा, लॉग फ़ाइल में urlh_url (मिलान करने वाले दुर्भावनापूर्ण URLs की सूची) और urlh_hit (प्रत्येक मिलान करने वाले दुर्भावनापूर्ण URL के लिए घटनाओं की संख्या) कॉलम शामिल होंगे, बशर्ते check_url सही पर सेट हो।

URLHaus सुविधा को पूरी तरह से अक्षम किया जा सकता है, कॉन्फ़िगरेशन विकल्प check_url को गलत पर सेट करके।

यह ध्यान रखना महत्वपूर्ण है कि यह सुविधा स्कैनिंग को धीमा कर सकती है, क्योंकि जाँच किए जाने वाले दुर्भावनापूर्ण URLs की भारी संख्या (~ इस लेखन के समय लगभग 130 मिलियन प्रविष्टियाँ) और URLHaus सर्वर से अतिरिक्त जानकारी प्राप्त करने में लगने वाले समय (यदि विकल्प check_url_api सही पर सेट है) को ध्यान में रखा जाए।

फ़ाइलें और फ़ोल्डर संरचनाएँ

  1. \cl_sites
    • यह वह जगह है जहाँ देखी जाने वाली या क्रॉल की जाने वाली साइटों की सूची संग्रहीत की जाती है।
    • एकाधिक फ़ाइलों और निर्देशिकाओं का समर्थन करता है।
  2. \crawled
    • जहाँ सभी क्रॉल/स्पाइडर किए गए URLs एक टेक्स्ट फ़ाइल में सहेजे जाते हैं।
  3. \certs
    • जहाँ सभी डोमेन/साइटों के डिजिटल प्रमाणपत्र संग्रहीत किए जाते हैं (.der प्रारूप में)।
  4. \results
    • जहाँ देखी गई वेबसाइटें सहेजी जाती हैं। यह विकल्प results_dir के माध्यम से कॉन्फ़िगर करने योग्य है
  5. \pg_cache
    • उन साइटों के लिए प्रोग्राम कैश जो स्पाइडर कार्यक्षमता का हिस्सा नहीं हैं। यह विकल्प cache_dir, अनुभाग [default] के माध्यम से कॉन्फ़िगर करने योग्य है।
  6. \cl_cache
    • उन साइटों के लिए क्रॉलर कैश जो स्पाइडर कार्यक्षमता का हिस्सा हैं। यह विकल्प cache_dir, अनुभाग [spider] के माध्यम से कॉन्फ़िगर करने योग्य है।
  7. \yara_rules
    • यह वह जगह है जहाँ सभी Yara नियम संग्रहीत हैं। इस निर्देशिका में मौजूद सभी नियम इंजन द्वारा लोड, पार्स, मान्य और निष्पादन से पहले मूल्यांकन किए जाएंगे।
  8. cl_config.ini
    • इस फ़ाइल में सभी कॉन्फ़िगरेशन पैरामीटर हैं जिन्हें फ्रेमवर्क के व्यवहार को प्रभावित करने के लिए समायोजित किया जा सकता है।
  9. cl_mlog_<current_date><current_time><(pm|am)>.csv
    • लॉग फ़ाइल जिसमें देखी गई वेबसाइटों के बारे में ढेरों जानकारी होती है
    • दिनांक, समय, Yara स्कैनिंग की स्थिति, प्रत्येक मिलान के ऑफ़सेट और लंबाई के साथ फायर किए गए Yara नियमों की सूची, आईडी, URL, HTTP स्थिति कोड, कनेक्शन स्थिति, HTTP हेडर, पृष्ठ का आकार, डिस्क पर सहेजे गए पृष्ठ का पथ, और URLHaus परिणामों से संबंधित अन्य कॉलम।
    • फ़ाइल का नाम प्रति सत्र अद्वितीय है।
  10. cl_offl_mlog_<current_date><current_time><(pm|am)>.csv
    • लॉग फ़ाइल जिसमें ऑफलाइन स्कैन की गई फ़ाइलों के बारे में जानकारी होती है।
    • मिलानों के ऑफ़सेट और लंबाई के साथ फायर किए गए Yara नियमों की सूची, और डिस्क पर सहेजे गए पृष्ठ का पथ।
    • फ़ाइल का नाम प्रति सत्र अद्वितीय है।
  11. cl_certs_<current_date><current_time><(pm|am)>.csv
    • लॉग फ़ाइल जिसमें पाए गए डिजिटल प्रमाणपत्रों के बारे में ढेरों जानकारी होती है
  12. \expanded\exp_subdomain_<pm|am>.txt
    • खोजे गए सबडोमेन शामिल हैं ([site] अनुभाग का भाग)
  13. \expanded\exp_tld_<pm|am>.txt

कॉन्फ़िगरेशन फ़ाइल (cl_config.ini)

कोई भी सत्र चलाने से पहले आपको कॉन्फ़िगरेशन फ़ाइल cl_config.ini से परिचित होना चाहिए। सभी अनुभागों और पैरामीटरों का दस्तावेज़ीकरण स्वयं कॉन्फ़िगरेशन फ़ाइल में किया गया है।

Yara ऑफलाइन स्कैनिंग सुविधा एक स्टैंडअलोन विकल्प है, जिसका अर्थ है, यदि सक्षम किया गया है, तो Crawlector अन्य सक्षम सुविधाओं की परवाह किए बिना केवल इस सुविधा को निष्पादित करेगा। और, डोमेन/साइटों के डिजिटल प्रमाणपत्र के लिए क्रॉलिंग सुविधा के लिए भी यही सच है। किसी भी तरह, यह अनुशंसा की जाती है कि आप कॉन्फ़िगरेशन फ़ाइल में सभी अप्रयुक्त सुविधाओं को अक्षम कर दें।

  • कॉन्फ़िगरेशन सेटिंग्स (log_to_file या log_to_cons) के आधार पर, यदि कोई Yara नियम केवल एक मॉड्यूल के गुणों (जैसे, PE, ELF, Hash, आदि) को संदर्भित करता है, तो Crawlector मिलान पर केवल नियम का नाम प्रदर्शित करेगा, ऑफ़सेट और लंबाई डेटा को छोड़कर।

नोट: किसी भी विकल्प के लिए जो पथ लेता है, हमेशा पूर्ण पथ प्रदान करें।

साइट्स प्रारूप पैटर्न

किसी वेबसाइट पर जाने/स्कैन करने के लिए, URLs की सूची को टेक्स्ट फ़ाइलों में, निर्देशिका "cl_sites" में संग्रहीत किया जाना चाहिए।

Crawlector तीन प्रकार के URLs स्वीकार करता है:

  1. प्रकार 1: प्रति पंक्ति एक URL
    • Crawlector प्रत्येक URL के लिए URL होस्टनाम से प्राप्त एक अद्वितीय नाम निर्दिष्ट करेगा
  2. प्रकार 2: प्रति पंक्ति एक URL, एक अद्वितीय नाम के साथ [a-zA-Z0-9_-]{1,128} = <url>
  3. प्रकार 3: स्पाइडर कार्यक्षमता के लिए, एक अद्वितीय प्रारूप का उपयोग किया जाता है। प्रति पंक्ति एक URL इस प्रकार है:

<id>[depth:<0|1>-><\d+>,total:<\d+>,sleep:<\d+>] = <url>

उदाहरण के लिए,

mfmokbel[depth:1->3,total:10,sleep:0] = https://www.mfmokbel.com

जो इसके बराबर है: mfmokbel[d:1->3,t:10,s:0] = https://www.mfmokbel.com

जहाँ, <id> := [a-zA-Z0-9_-]{1,128}

depth, total और sleep को उनके छोटे संस्करणों d, t और s से भी बदला जा सकता है, क्रमशः।

  • depth: स्पाइडर अतिरिक्त URLs खोजने के लिए दो स्तर गहराई तक जाने का समर्थन करता है (यह एक डिज़ाइन निर्णय है)।
  • 0 का मान स्तर 1 की गहराई को इंगित करता है, जिसमें "->" के बाद आने वाले मान को अनदेखा किया जाता है।
  • स्तर-1 की गहराई कुल पैरामीटर द्वारा नियंत्रित होती है। इसलिए, पहले, स्पाइडर निर्दिष्ट URL से अतिरिक्त URLs खोजने का प्रयास करता है।
  • "->" के बाद का मान स्पाइडर करने के लिए अधिकतम URLs की संख्या को दर्शाता है, प्रत्येक URL के लिए जो total पैरामीटर मान के अनुसार पाया गया है।
  • 1 का मान स्तर 2 की गहराई को इंगित करता है, जिसमें "->" के बाद का मान खोजने के लिए अधिकतम URLs की संख्या को दर्शाता है, प्रत्येक URL के लिए जो total पैरामीटर के अनुसार पाया गया है। स्पष्टीकरण के लिए, और जैसा कि ऊपर दिए गए उदाहरण में दिखाया गया है, पहले, स्पाइडर total पैरामीटर में निर्दिष्ट अनुसार 10 URLs खोजेगा, और फिर, उन पाए गए प्रत्येक URLs को अधिकतम 3 URLs तक स्पाइडर किया जाएगा; इसलिए, सबसे अच्छी स्थिति में, हम 40 (10 + (10*3)) URLs के साथ समाप्त होंगे।
  • sleep पैरामीटर एक पूर्णांक मान लेता है जो प्रत्येक HTTP अनुरोध के बीच सोने के लिए मिलीसेकंड की संख्या दर्शाता है।

नोट 1: टाइप 3 URL को टाइप 1 URL में बदला जा सकता है, कॉन्फ़िगरेशन फ़ाइल में स्पाइडर अनुभाग में कॉन्फ़िगरेशन पैरामीटर live_crawler को गलत पर सेट करके।

नोट 2: खाली पंक्तियाँ और ";" "#" या "//" से शुरू होने वाली पंक्तियों को अनदेखा किया जाता है।

स्पाइडर कार्यक्षमता

स्पाइडर कार्यक्षमता ही Crawlector को लक्षित पृष्ठ पर अतिरिक्त लिंक खोजने की क्षमता प्रदान करती है। स्पाइडर निम्नलिखित सुविधाओं का समर्थन करता है:

  • स्पाइडर कार्यक्षमता के काम करने के लिए डोमेन का Type 3 होना आवश्यक है
  • आप exclude_url कॉन्फ़िगरेशन विकल्प के माध्यम से मिलान करने वाले URLs को स्पाइडर होने से रोकने के लिए वाइल्डकार्डेड पैटर्न (पाइप-डिलीमिटेड) की एक सूची निर्दिष्ट कर सकते हैं। उदाहरण के लिए, *.zip|*.exe|*.rar|*.zip|*.7z|*.pdf|.*bat|*.db
  • आप include_url कॉन्फ़िगरेशन विकल्प के माध्यम से केवल उन URLs को स्पाइडर करने के लिए वाइल्डकार्डेड पैटर्न (पाइप-डिलीमिटेड) की एक सूची निर्दिष्ट कर सकते हैं जो पैटर्न से मेल खाते हैं। उदाहरण के लिए, */checkout/*|*/products/*
  • आप कॉन्फ़िगरेशन विकल्प exclude_https के माध्यम से HTTPS URLs को बाहर कर सकते हैं
  • आप कॉन्फ़िगरेशन विकल्प add_ext_links के माध्यम से केवल मुख्य पृष्ठ के लिए आउटबाउंड/बाहरी लिंक को भी शामिल कर सकते हैं। यह सुविधा exclude_url और include_url कॉन्फ़िगरेशन विकल्प का सम्मान करती है।
  • आप कॉन्फ़िगरेशन विकल्प ext_links_only के माध्यम से केवल मुख्य पृष्ठ के आउटबाउंड/बाहरी लिंक को शामिल कर सकते हैं, अन्य सभी URLs को छोड़कर। यह सुविधा exclude_url और कॉन्फ़िगरेशन विकल्प का सम्मान करती है।

IDs प्रकार

रिलीज़ 2.0 में, IDs के प्रकार स्पष्ट रूप से ID में निम्नलिखित प्रकारों में से किसी एक को जोड़कर निर्दिष्ट किए गए हैं:

प्रत्येक ID के साथ उसके प्रकार को ले जाने से परिणामों को ब्राउज़ करना और फ़िल्टर करना आसान हो जाता है। इसके अलावा, इसका उपयोग आंतरिक रूप से विभिन्न कारणों से किया जाता है।

साइट रैंकिंग कार्यक्षमता

  • यह वेबसाइट की रैंकिंग की जाँच करने के लिए है
  • आप इसे एक फ़ाइल देते हैं जिसमें वेबसाइटों की एक सूची होती है, उनकी रैंकिंग के साथ, CSV फ़ाइल प्रारूप में
  • वेबसाइट रैंकिंग की सूची प्रदान करने वाली सेवाओं में Alexa top-1m (मई 2022 तक बंद), Cisco Umbrella, Majestic, Quantcast, Farsight और Tranco, आदि शामिल हैं
  • CSV फ़ाइल प्रारूप (केवल 2 कॉलम): पहला कॉलम रैंकिंग रखता है, और दूसरा कॉलम डोमेन नाम रखता है
  • यदि कोई सेल उद्धृत डेटा समाहित करता है, तो यह स्वचालित रूप से dequote हो जाएगा
  • उद्धृत पाठ में लाइन ब्रेक की अनुमति नहीं है
  • पढ़े गए सेल से अग्रणी और अनुगामी रिक्त स्थान हटा दिए जाते हैं
  • खाली और टिप्पणी पंक्तियों को छोड़ दिया जाता है
  • कॉन्फ़िगरेशन फ़ाइल में अनुभाग site_ranking CSV फ़ाइल को पढ़ने के तरीके को बदलने के लिए कुछ विकल्प प्रदान करता है
  • इस क्वेरी का प्रदर्शन CSV फ़ाइल में रिकॉर्ड की संख्या पर निर्भर करता है
  • Crawlector CSV फ़ाइल में प्रत्येक प्रविष्टि की तुलना जांचे जा रहे डोमेन से करता है, न कि इसके विपरीत
  • केवल पंजीकृत/पे-लेवल डोमेन की तुलना की जाती है

TLDs और सबडोमेन ढूँढना - [site] अनुभाग

  • site अनुभाग एक ही डोमेन के लिए सभी उपलब्ध शीर्ष-स्तरीय डोमेन (TLDs) और/या सबडोमेन खोजने का प्रयास करके किसी दिए गए साइट का विस्तार करने की क्षमता प्रदान करता है। यदि मिल जाता है, तो नए TLDs/सबडोमेन की जाँच किसी भी अन्य डोमेन की तरह की जाएगी
  • यह सुविधा Omnisint Labs (https://omnisint.io/) और RapidAPI APIs का उपयोग करती है
  • Omnisint Labs API सबडोमेन और TLDs लौटाता है, जबकि RapidAPI केवल सबडोमेन लौटाता है (Omnisint Labs API 10 मार्च, 2023 तक डाउन है; हालाँकि, कार्यान्वयन अभी भी उपलब्ध है यदि साइट वापस आती है)
  • RapidAPI के लिए, आपको RapidAPI से एक वैध "Domains records" API कुंजी का अनुरोध करना होगा, और इसे कॉन्फ़िगरेशन फ़ाइल में कुंजी rapid_api_key में प्लग करना होगा
  • find_tlds सक्षम होने पर, Omnisint Labs API tlds परिणामों के अलावा, फ्रेमवर्क प्रत्येक tld प्रविष्टि के माध्यम से जाकर अन्य सक्रिय/पंजीकृत डोमेन खोजने का प्रयास करता है, या तो tlds_file या tlds_url में
  • यदि tlds_url सेट है, तो इसे एक URL की ओर इशारा करना चाहिए जो tlds होस्ट करता है, प्रत्येक एक नई पंक्ति पर (पंक्तियाँ जो वर्णों ';', '#' या '//' में से किसी एक से शुरू होती हैं, अनदेखा की जाती हैं)
  • tlds_file, उस फ़ाइल का नाम रखता है जिसमें tlds की सूची होती है (tlds_url के समान; केवल tld मौजूद है, '.' को छोड़कर, उदाहरण के लिए, "com", "org")
  • यदि tlds_file सेट है, तो यह पर वरीयता लेता है

रीडायरेक्शन कार्यक्षमता

पिछले रिलीज़ में url रीडायरेक्ट कार्यक्षमता टूटी हुई थी। यह रिलीज़ रीडायरेक्ट सुविधा का एक पूर्ण पुनर्लेखन प्रदान करती है, इसके संचालन को नियंत्रित करने के लिए पैरामीटराइजेशन की उच्च डिग्री के साथ। रिलीज़ संस्करण 2.0 में, रीडायरेक्ट का कॉन्फ़िगरेशन फ़ाइल में एक समर्पित अनुभाग है, जिसका नाम [redirect] है। रीडायरेक्शन कार्यक्षमता की संपूर्णता को अनुभाग [default] के तहत विकल्प follow_redir के माध्यम से चालू/बंद किया जा सकता है।

रीडायरेक्ट फ़ंक्शन HTTP प्रतिक्रिया स्थिति कोड की जाँच करता है: 301, 302, 303, 307 और 308। मिलान की स्थिति में, Crawlector URL पर रीडायरेक्ट के लिए Location हेडर को पार्स करेगा, दोनों निरपेक्ष और सापेक्ष रीडायरेक्ट URLs को ध्यान में रखते हुए। Crawlector में रीडायरेक्ट कार्यक्षमता प्रदर्शन और चपलता के लिए डिज़ाइन की गई थी। [redirect] अनुभाग विकल्पों की निम्नलिखित सूची प्रदान करता है:

[redirect]

  • depth = all ; (t: string)
  • max_redirect = 200 ; (t: uint16_t)
  • visit = true ; (t: bool)
  • skip_similar = true ; (t: bool)

depth विकल्प या तो last या all मान लेता है। यह नियंत्रित करता है कि पाए गए रीडायरेक्ट URLs में से किसे देखा जाए, यह इस बात पर निर्भर करता है कि visit विकल्प सक्षम है या नहीं। all सभी पाए गए रीडायरेक्ट URLs पर जाने के लिए है। last अंतिम रीडायरेक्ट URL पर जाने के लिए है। उन URLs पर जाना उसी/वर्तमान सत्र में होता है। ध्यान रखें कि depth मान की परवाह किए बिना, Crawlector URLs पर पाए गए सभी रीडायरेक्ट की सूची को कुल संख्या के साथ निरपेक्ष रूप में रिकॉर्ड करेगा। उन्हें cl_mlog CSV फ़ाइल में कॉलम redirect_urls और redirect_total के अंतर्गत लिखा जाएगा।

विकल्प max_redirect खोजे जाने वाले कुल URL रीडायरेक्ट की संख्या पर एक ऊपरी सीमा निर्धारित करता है।

विकल्प skip_similar को निम्नलिखित उदाहरण के माध्यम से सबसे अच्छी तरह से समझाया गया है:

मान लें कि Crawlector को क्रॉल करने के लिए दिया गया मूल URL "https://www.mfa.gov.law" है और पाए गए redirect_urls में से एक "https://mfa.gov.law/" है। जैसा कि आप बता सकते हैं, एकमात्र अंतर URL के अंत में फॉरवर्ड स्लैश है। ये दोनों URLs समान हैं, और सर्वर एक ही पृष्ठ के साथ प्रतिक्रिया देगा। यदि विकल्प visit सही पर सेट है, तो Crawlector दोनों URLs को क्रॉल करेगा, जिससे संसाधन बर्बाद होंगे और एक ही कार्य दो बार करना पड़ेगा। यह 1 या 2 URLs के लिए कोई समस्या नहीं हो सकती है, लेकिन यदि आपके पास क्रॉल करने के लिए 1000s URLs हैं, और विकल्प visit सक्षम है, तो संभावना है कि उनमें से आधे से अधिक में ऐसा खोजा गया URL होगा, ऐसी स्थिति में, यह ध्यान में रखने योग्य एक महत्वपूर्ण मुद्दा बन जाता है। इस प्रकार, विकल्प skip_similar को सही पर सेट करने से समान URLs पर जाने से बचकर इस समस्या को हल करने में मदद मिलेगी। फॉरवर्ड_स्लैश परिदृश्य के अलावा, skip_similar विकल्प निम्नलिखित दो परिदृश्यों को भी ध्यान में रखता है: यदि रीडायरेक्ट URL केवल उपसर्गों "https://" और "www." में से एक या दोनों से भिन्न है।

डीप ऑब्जेक्ट एक्सट्रैक्शन (DOE)

रिलीज़ 2.0 में प्रमुख जोड़ों में से एक पृष्ठ से विभिन्न प्रकार की वस्तुओं को निकालने, उन्हें डिस्क पर सहेजने, Yara और URLHaus स्कैन करने और परिणामों को CSV फ़ाइल में सहेजने की क्षमता है। इस सुविधा को सक्षम करने के लिए, अनुभाग [page] के तहत विकल्प extract_obj को सही पर सेट करें।गहरे वस्तु निष्कर्षण सुविधा का कार्यान्वयन वेबपेज से एक MHT वेब आर्काइव फ़ाइल बनाकर काम करता है, जिसमें बाहरी स्क्रिप्ट्स, इमेज और CSS फ़ाइलें शामिल होती हैं। सभी एम्बेडेड फ़ाइलों को obj_dir विकल्प द्वारा निर्दिष्ट पथ (पथ: obj_dir/objects/) में निकाला जाएगा, जहाँ प्रत्येक फ़ाइल को स्कैन किया जाएगा। इस कार्यान्वयन को हेडलेस ब्राउज़र कार्यक्षमता के साथ भ्रमित नहीं किया जाना चाहिए। DOE अलग है और इसमें सभी गतिशील रूप से क्वेरी किए गए URL को पुनः प्राप्त करने के लिए पेज लोड करना शामिल नहीं है। इसलिए, इसकी अपनी सीमाएँ हैं।

निकाले गए सभी ऑब्जेक्ट्स का कुछ मेटाडेटा CSV फ़ाइल में लिखा जाएगा। CSV फ़ाइल पढ़ते समय ध्यान रखने योग्य बातें: निकाले गए ऑब्जेक्ट वाले डोमेन की ID का एक अद्वितीय प्रारूप होता है, जो इस प्रकार है, <domain_id>_<type>_p_obj_<counter> (उदाहरण के लिए, _mfa_gov_cef40bc5-ba6a-41_t1_p_obj_0_)। और, url का निम्नलिखित प्रारूप होगा, <url>__<object_filename> (उदाहरण के लिए, _https://www.mfa.gov.law\_\_bilmur.min.js_)।

यदि विकल्प delete_obj को true पर सेट किया गया है, तो Yara द्वारा पता न लगाए गए सभी निकाले गए ऑब्जेक्ट्स को डिस्क से हटा दिया जाता है। यदि विकल्प log_all_objs को true पर सेट किया गया है, तो सभी निकाले गए ऑब्जेक्ट्स के मेटाडेटा को उसी cl_mlog CSV फ़ाइल में लॉग करें। यदि [page] अनुभाग के अंतर्गत विकल्प check_urlhaus को true पर सेट किया गया है, तो प्रत्येक निकाले गए ऑब्जेक्ट को URLHaus-स्कैन किया जाएगा। ध्यान दें कि इस विकल्प के विकल्प [urlhaus] अनुभाग से विरासत में मिले हैं।

नोट: यदि क्रॉल किया जा रहा डोमेन किसी अन्य डोमेन पर रीडायरेक्ट करता है, तो DOE के काम करने के लिए अंतिम रीडायरेक्ट URL को पास किया जाना चाहिए। इसके अलावा, DOE के काम करने के लिए डोमेन की शुरुआत "HTTP(S)://" से होनी चाहिए।

Slack अलर्ट सूचना

कभी-कभी, आप ऐसे Crawlector सत्र चलाना चाह सकते हैं जिन्हें पूरा होने में दिन लग सकते हैं, उदाहरण के लिए, शीर्ष 1-मिलियन Alexa वेबसाइटों को क्रॉल करके, और ऐसे परिदृश्य के लिए, आपको फ्रेमवर्क के संचालन और प्रगति की दूरस्थ रूप से निगरानी करने का एक तरीका चाहिए। इसलिए, रिलीज़ 2.1 में, मैंने Slack अलर्ट सूचना सुविधा जोड़ी है ताकि अपनी पसंद के Slack चैनल पर Yara के अलर्ट, std::exit() इवेंट्स, और प्रक्रिया चेतावनियों और त्रुटियों को भेजकर, वास्तविक समय में Crawlector के निष्पादन की निगरानी करने का एक तंत्र प्रदान किया जा सके। इसके अलावा, Crawlector कुछ निश्चित इवेंट प्रकारों की निगरानी करने के प्रयास में एक कंसोल हैंडलर स्थापित करता है, जिसमें ctrl_c, ctrl_close, ctrl_break, ctrl_logoff और ctrl_shutdown शामिल हैं। यह ध्यान रखना महत्वपूर्ण है कि Crawlector डिफ़ॉल्ट हैंडलर के व्यवहार को नहीं बदलता/बदलता है; यह केवल सूचीबद्ध इवेंट्स में से किसी की प्राप्ति की सूचना Slack चैनल को देता है। भविष्य में अन्य प्रकार के इवेंट्स के लिए इसे बढ़ाया जा सकता है।

यह सुविधा Slack REST API का उपयोग करती है, और सर्वर के साथ प्रमाणीकरण के लिए, यह OAuth 2.0 का उपयोग करती है। इसका उपयोग करने के लिए आपको एक Slack API टोकन, और सही अनुमतियों वाले एक चैनल की आवश्यकता होगी। यह सुविधा केवल Slack चैनल पर संदेश पोस्ट करती है और कोई भी आने वाला संदेश प्राप्त या संसाधित नहीं करती है।

[slack_alert] अनुभाग विकल्पों की निम्नलिखित सूची प्रदान करता है:

[slack_alert]

  • alert = true ; (टी: बूल)
  • api_token = ; (टी: स्ट्रिंग)
  • channel = ; (टी: स्ट्रिंग)
  • sleep = ; (टी: uint32_t) मिलीसेकंड में

इस सुविधा को अक्षम या सक्षम करने के लिए, बस विकल्प alert को true या false पर सेट करें। इसके अलावा, आपको एक channel नाम के साथ api_token निर्दिष्ट करना होगा।

नोट-1: Crawlector के आरंभीकरण चरण में, यह परीक्षण करता है कि प्रदान किया गया प्रमाणीकरण टोकन मान्य है या नहीं, या चैनल सेट है या नहीं, और विफलता के मामले में, यह सुविधा स्वचालित रूप से अक्षम हो जाती है।

Slack चैनल पर रिपोर्ट किए गए सभी अलर्ट उपयोगकर्ता नाम Crawlector v<संस्करण_संख्या> के तहत रिपोर्ट किए जाते हैं, उदाहरण के लिए, Crawlector v2.1। उपयोगकर्ता के पास मकड़ी के जाले का आइकन है। इसके अतिरिक्त, सभी अलर्ट थ्रेडेड होते हैं, जिसका अर्थ है कि पहले प्रारंभिक संदेश के बाद के सभी बाद के अलर्ट उत्तर के रूप में पोस्ट किए जाते हैं। यह एक डिज़ाइन निर्णय था और यह उस स्थिति में मदद करता है जब आप एक ही समय में कई सत्र चला रहे हों, सभी एक ही चैनल पर रिपोर्ट कर रहे हों। कुछ अलर्ट फ़ॉर्मेटिंग के लिए मार्कडाउन मार्कअप भाषा का उपयोग करते हैं।

जब प्रक्रिया सफलतापूर्वक समाप्त हो जाती है और बाहर निकलने वाली होती है, तो यह निम्नलिखित संदेश पोस्ट करता है:

Crawlector समाप्त हो गया है और सफलतापूर्वक बंद हो रहा है

नोट-2: पोस्ट मैसेज API पर Slack दर सीमा प्रति सेकंड एक संदेश है, कुछ फटने के लिए छूट के साथ। Crawlector प्रति सेकंड अधिक पोस्ट के लिए संदेशों को कतारबद्ध नहीं करता है। यदि आवश्यक हो तो भविष्य में यह बदल सकता है; हालाँकि, विकल्प sleep प्रक्रिया को प्रत्येक सफलतापूर्वक पोस्ट किए गए संदेश के बाद एक निर्दिष्ट समय के लिए सोने की अनुमति देता है।

Slack दूरस्थ नियंत्रण

रिलीज़ 2.2 (कोड-नाम Hallstatt) के साथ, मैं विशेष रूप से डिज़ाइन किए गए नियंत्रण कमांड के एक चयनित सेट के माध्यम से Crawlector को दूरस्थ रूप से नियंत्रित करने की क्षमता प्रस्तुत कर रहा हूँ। इस कार्यक्षमता को शुरू करने का कारण उन सत्रों के कुछ व्यवहारों की निगरानी और नियंत्रण करना है जो घंटों या दिनों तक चलने वाले हैं। उदाहरण के लिए, आप Slack अलर्ट कार्यक्षमता को चालू/बंद करना, Crawlector को समाप्त करना, और एक कॉन्फ़िगरेशन फ़ाइल अपलोड करना चाह सकते हैं, अन्य चीजों के अलावा।

यह सुविधा Slack REST API का उपयोग करती है, और सर्वर के साथ प्रमाणीकरण के लिए, यह OAuth 2.0 का उपयोग करती है। इसका उपयोग करने के लिए आपको एक Slack API टोकन, और सही अनुमतियों वाले एक चैनल की आवश्यकता होगी। API टोकन वही है जो [slack_alert] अनुभाग, विकल्प api_token में उपयोग किया गया है।

[slack_alert] अनुभाग दूरस्थ नियंत्रण कार्यक्षमता के लिए विकल्पों की निम्नलिखित अतिरिक्त सूची प्रदान करता है:

[slack_alert] (नियंत्रण विकल्प)

  • control = true ; (टी: बूल)
  • ctrl_channel = ; (टी: स्ट्रिंग) यह चैनल ID होना चाहिए, चैनल नाम नहीं
  • ctrl_sleep = ; (टी: uint32_t) मिलीसेकंड में

इस सुविधा को अक्षम या सक्षम करने के लिए, बस विकल्प control को true या false पर सेट करें। ctrl_channel नाम चैनल ID नाम होना चाहिए, चैनल नाम नहीं। आप इसे चैनल नाम पर राइट-क्लिक करके -> चैनल विवरण देखें -> विंडो के नीचे तक स्क्रॉल करें प्राप्त कर सकते हैं, और आपको चैनल ID: <channel_id> फ़ील्ड दिखाई देगी।

विकल्प ctrl_sleep नियंत्रण कमांड प्राप्त करने के लिए ctrl_channel विकल्प में निर्दिष्ट नियंत्रण चैनल को कॉल करने की आवृत्ति निर्धारित करता है। आप नियंत्रण कमांड cl_update_delay <time_in_ms> के माध्यम से इस विकल्प को अपडेट भी कर सकते हैं।

समर्थित नियंत्रण कमांड की सूची निम्नलिखित है:

नोट-1: Crawlector के आरंभीकरण चरण में, यह परीक्षण करता है कि प्रदान किया गया प्रमाणीकरण टोकन मान्य है या नहीं, या चैनल सेट है या नहीं, और विफलता के मामले में, यह सुविधा स्वचालित रूप से अक्षम हो जाती है।

यदि यह कार्यक्षमता सक्षम है, और एक बार यह API टोकन सत्यापन पास कर लेता है, तो Crawlector निर्दिष्ट ctrl_channel पर "Crawlector नियंत्रण कमांड प्राप्त करने के लिए तैयार है। समर्थित नियंत्रण कमांड की सूची के लिए कमांड cl_help टाइप करें।" संदेश भेजता है।

किसी दिए गए नियंत्रण कमांड के सभी उत्तर थ्रेडेड होते हैं। इसके अलावा, नियंत्रण कमांड एक सत्र-दर-सत्र आधार पर, उस समय से पढ़े जाते हैं जब से कोई सत्र शुरू होता है।

नोट-2: पुनर्प्राप्ति (बातचीत इतिहास) संदेश API पर Slack दर सीमा प्रति सेकंड एक अनुरोध है, कुछ फटने के लिए छूट के साथ। इसलिए, यदि ctrl_sleep विकल्प एक सेकंड से कम या एक सेकंड से अधिक के मान पर सेट है, तो Crawlector प्रति सेकंड अधिक नियंत्रण कमांड के लिए संदेशों को कतारबद्ध करता है, और उन्हें प्राप्त होने के क्रम में निष्पादित करता है।

DNS नाम सर्वर

रिलीज़ 2.3 (कोड-नाम Munich) के साथ, Crawlector द्वारा किए गए सभी DNS प्रश्नों और DNS-से-IP रिज़ॉल्यूशन के लिए DNS नाम सर्वरों की एक सूची निर्दिष्ट करने की क्षमता उच्च स्तर के नियंत्रण के साथ प्रस्तुत की गई है। यह उस स्थिति में महत्वपूर्ण है जब आप अवरुद्ध या दुर्भावनापूर्ण वेबसाइटें क्रॉल कर रहे हों। यह सुविधा Crawlector के प्रत्येक फ़ंक्शन पर लागू होती है जहाँ DNS क्वेरी या DNS-से-IP अनुरोध किया जाता है। इससे भी महत्वपूर्ण बात, यह प्रत्येक नाम सर्वर के लिए DNS over TLS करने की क्षमता प्रदान करता है जो इसका समर्थन करता है।

[dns_ns] अनुभाग इस कार्यक्षमता के प्रशासन के लिए विकल्पों की निम्नलिखित सूची प्रदान करता है:

[dns_ns]

  • enable = false ; (टी: बूल)
  • name_servers = 8.8.8.8(e_tls),12.13.14.15(d_tls) ; (टी: स्ट्रिंग)
  • dns_tls = yes ; (टी: स्ट्रिंग) (yes, no या force)
  • keep_default = false ; (टी: बूल)
  • conn_time_out = 3000 ; (टी: uint32_t) मिलीसेकंड में (0 अनिश्चित काल तक प्रतीक्षा करने के लिए)

विकल्प name_servers उपयोग करने के लिए DNS नाम सर्वरों की एक पैरामीटरयुक्त सूची लेता है, जो अल्पविराम से अलग होती है। इस विकल्प के मान का प्रारूप है: <IPv4_address>(<tls_option>) जहाँ <tls_option> "d_tls" या "e_tls" मानों में से कोई एक लेता है। विकल्प "d_tls" या "e_tls" यह इंगित करते हैं कि संबंधित नाम सर्वर क्रमशः DNS over TLS का समर्थन करता है या नहीं। यह विकल्प विकल्प dns_tls के लिए निर्धारित मान के आधार पर लागू किया जाएगा। उदाहरण के लिए, प्रविष्टि 8.8.8.8(e_tls) TLS समर्थन के साथ Google DNS सर्वर 8.8.8.8 का उपयोग करने का संकेत देती है, जबकि प्रविष्टि 12.13.14.15(d_tls) बिना TLS समर्थन के DNS सर्वर 12.13.14.15 का उपयोग करने का संकेत देती है।

विकल्प dns_tls TLS प्रवर्तन के आवश्यक स्तर को निर्दिष्ट करता है। यह विकल्प "yes" "no" या "force" मानों में से कोई एक लेता है।

  • yes
    • TLS समर्थन वाले DNS नाम सर्वरों को पहले प्रयास किया जाएगा, और यदि TLS समर्थन वाला कोई NS नहीं मिलता है, तो इसके बजाय UDP/TCP रिज़ॉल्यूशन का प्रयास किया जाएगा।
  • no
    • कोई TLS समर्थन नहीं (TLS समर्थन वाले DNS नाम सर्वरों का उपयोग न करें)
  • force
    • केवल TLS समर्थन वाले DNS नाम सर्वरों का उपयोग किया जाएगा, और Crawlector द्वारा शुरू किया गया कोई भी DNS क्वेरी DoT (DNS over TLS) का उपयोग करेगा।

विकल्प keep_default नाम सर्वरों की सूची में डिफ़ॉल्ट नाम सर्वर(सर्वरों) को जोड़ना है या नहीं, इसके लिए है। एक डिफ़ॉल्ट नाम सर्वर को TLS का समर्थन नहीं करने वाला माना जाता है।

विकल्प conn_time_out DNS क्वेरी के उत्तर की प्रतीक्षा करने के लिए मिलीसेकंड में समय निर्दिष्ट करता है।

विकल्प enable इस कार्यक्षमता को चालू या बंद करता है।

संस्करण 2.0 में विविध सुधार

  • कमांड लाइन विकल्प "-v" और "-c" जोड़े गए। विकल्प "-v" कंसोल पर संस्करण जानकारी प्रिंट करने के लिए है। विकल्प "-c" डिफ़ॉल्ट "cl_config.ini" के अलावा कोई भिन्न कॉन्फ़िगरेशन फ़ाइल पढ़ने के लिए है।
  • विभिन्न कोड अनुकूलन और मामूली सुधार
  • प्रत्येक पढ़े गए डोमेन (सबडोमेन के बिना) के लिए, Crawlector प्रत्येक पढ़ी गई साइट प्रविष्टि में "www." जोड़ देगा, यदि वह पहले से मौजूद नहीं है। उदाहरण के लिए, RapidAPI सबडोमेन गणना क्वेरी के मामले में, क्वेरी किए जा रहे डोमेन की शुरुआत "www." से होनी चाहिए।
  • [default] अनुभाग में विकल्प clear_dns और upg_2_https जोड़े गए। पहला होस्टनाम को IP DNS कैश को साफ़ करता है, और बाद वाला प्रत्येक साइट को "https://" जोड़कर HTTPS में अपग्रेड करता है। इसी प्रकार, [site] अनुभाग में विकल्प tld_upgrd_2_https जोड़ा गया है, विभिन्न TLD वाले सक्रिय डोमेन को https में अपग्रेड करने के लिए।
  • RapidAPI के लिए API अनुरोध को कॉन्फ़िगर करने के लिए [site] अनुभाग में विकल्प rapid_api_weeks और rapid_api_limit जोड़े गए। दोनों विकल्प वैकल्पिक हैं। पहला DB से क्वेरी करने के लिए सप्ताहों की संख्या निर्दिष्ट करता है, जबकि बाद वाला प्रति साइट लौटाए जाने वाले सबडोमेन की संख्या निर्दिष्ट करता है।
  • रिलीज़ 2.0 में, आप [spider] और [default] अनुभागों के लिए विकल्प cache_dir के माध्यम से एक भिन्न कैश निर्देशिका निर्दिष्ट कर सकते हैं।
  • रिलीज़ 2.0 में page अनुभाग में कई विकल्प जोड़े गए, जिनमें शामिल हैं:
  • whois_info विकल्प whois डोमेन जानकारी प्राप्त करता है जिसमें रजिस्ट्रार, पंजीकृत_पर, समाप्ति_पर और अपडेट_पर शामिल है। यह डेटा https://www.whois.com/whois/ से खींचा जाता है। डेटा cl_mlog CSV फ़ाइल में सहेजा जाता है।
  • page_title विकल्प पृष्ठ शीर्षक को cl_mlog CSV फ़ाइल में सहेजता है।
  • पृष्ठों को एक भिन्न पथ के अंतर्गत सहेजने की क्षमता प्रदान करने के लिए विकल्प results_dir जोड़ा गया। यदि सेट नहीं किया गया है, तो Crawlector के समान निर्देशिका में "results" फ़ोल्डर बनाया जाएगा।
  • Yara इंजन को 4.3.2 में अपग्रेड किया गया

डिज़ाइन संबंधी विचार

  • एक URL पृष्ठ सर्वर को GET अनुरोध भेजकर, सर्वर प्रतिक्रिया निकाय पढ़कर, और इसे पहचान के लिए Yara इंजन को पास करके पुनर्प्राप्त किया जाता है।
  • GET अनुरोध की कुछ विशेषताएँ कॉन्फ़िगरेशन फ़ाइल के [default] अनुभाग में परिभाषित की गई हैं, जिनमें User-Agent और Referer हेडर, और कनेक्शन टाइमआउट, अन्य विकल्पों के अलावा शामिल हैं।
  • यद्यपि Crawlector एक सत्र के डेटा को CSV फ़ाइल में लॉग करता है, बेहतर प्रदर्शन, हेरफेर और डेटा पुनर्प्राप्ति के लिए इसे SQL फ़ाइल में परिवर्तित करने की अनुशंसा की जाती है। यह तब स्पष्ट हो जाता है जब आप हजारों डोमेन क्रॉल कर रहे हों।
  • cl_sites में दोहराए गए डोमेन/URL की अनुमति है।

सीमाएँ

  • एकल-थ्रेडेड
  • स्थैतिक पहचान (किसी दिए गए पृष्ठ की सामग्री का कोई गतिशील मूल्यांकन नहीं)। कृपया इसके बजाय DOE सुविधा देखें।
  • अभी तक कोई हेडलेस ब्राउज़र समर्थन नहीं है!

उपयोग किए गए तृतीय-पक्ष पुस्तकालय

  • Chilkat: वेबसाइट स्पाइडरिंग, HTTP संचार, हैशिंग, JSON पार्सिंग और फ़ाइल संपीड़न (ZIP) के लिए पुस्तकालय, अन्य के अलावा
  • Yara: नियम स्कैनिंग के लिए (v4.5.4)
  • CrossGuid: GUID/UUID उत्पन्न करने के लिए
  • Inih: कॉन्फ़िगरेशन फ़ाइल पार्स करने के लिए
  • Rapidcsv: CSV फ़ाइलों को पार्स करने के लिए
  • Color Console: कंसोल रंगाई के लिए
  • TLSH (ट्रेंड माइक्रो लोकेलिटी सेंसिटिव हैश) (v4.8.2)

योगदान

पुल अनुरोधों और मुद्दों के लिए खुला है। टिप्पणियाँ और सुझाव अत्यधिक सराहनीय हैं।

लेखक

मोहम्मद मोकबेल (@MFMokbel)

टूल डाउनलोड करें
  • खोजे गए डोमेन शामिल हैं ([site] अनुभाग का भाग)
include_url
id_postfix (प्रकार)विवरण
_t1_pप्रकार 1 सादा बिना आईडी के
_sdउपप्रकार सबडोमेन के लिए
_tldउपप्रकार tlds के लिए
_t2_pप्रकार 2 सादा आईडी के साथ
_t3_sप्रकार 3 स्पाइडर किए गए डोमेन
_t3_scप्रकार 3 स्पाइडर किए गए डोमेन चाइल्ड नोड के साथ
_t3_ssप्रकार 3 जब एक प्रकार 3 (_t3_s) url को प्रकार 1 url में बदल दिया जाता है
_t3_s_eप्रकार 3 स्पाइडर किए गए डोमेन बाहरी लिंक
_obj_गहन स्कैनिंग और ऑब्जेक्ट निष्कर्षण के लिए
_t4_ruरीडायरेक्ट url के लिए (सभी प्रकारों के लिए)
tlds_url
  • tld_dl_time_out, यह dnslookup फ़ंक्शन के लिए अधिकतम टाइमआउट सेट करने के लिए है जब यह जाँचने का प्रयास किया जाता है कि प्रश्न में डोमेन हल होता है या नहीं
  • tld_use_connect, यह विकल्प प्रश्न में डोमेन से पोर्ट की एक सूची पर कनेक्ट करने की कार्यक्षमता को सक्षम करता है, जो विकल्प tlds_connect_ports में परिभाषित है
  • विकल्प tlds_connect_ports पोर्ट की एक सूची स्वीकार करता है, अल्पविराम से अलग, या श्रेणियों की एक सूची, जैसे 25-40,90-100,80,443,8443 (श्रेणी प्रारंभ और अंत शामिल हैं)
    • tld_con_time_out, यह कनेक्ट फ़ंक्शन के लिए अधिकतम टाइमआउट सेट करने के लिए है
  • tld_con_use_ssl, डोमेन से कनेक्ट करने का प्रयास करते समय SSL के उपयोग को सक्षम/अक्षम करें
  • यदि save_to_file_subd सही पर सेट है, तो खोजे गए सबडोमेन को "\expanded\exp_subdomain_<pm|am>.txt" में सहेजा जाएगा
  • यदि save_to_file_tld सही पर सेट है, तो खोजे गए डोमेन को "\expanded\exp_tld_<pm|am>.txt" में सहेजा जाएगा
  • यदि exit_here सही पर सेट है, तो Crawlector इस [site] फ़ंक्शन को निष्पादित करने के बाद बाहर निकल जाता है, अन्य सक्षम विकल्पों की परवाह किए बिना। इसका मतलब है कि पाई गई साइटों को क्रॉल/स्पाइडर नहीं किया जाएगा
  • नियंत्रण कमांडविवरण
    cl_get_dateCrawlector शुरू होने की तिथि और समय तथा वर्तमान तिथि और समय प्राप्त करता है।
    cl_ping"पोंग..." संदेश वापस भेजता है। यह जाँचने के लिए है कि C&C चैनल काम कर रहा है या नहीं।
    cl_get_configवर्तमान में उपयोग किए जा रहे कॉन्फ़िगरेशन (जैसे, cl_config.ini) फ़ाइल को एक टेक्स्ट फ़ाइल के रूप में अपलोड करता है।
    cl_update_delay <मिलीसेकंड में पूर्णांक>नियंत्रण कमांड के लिए प्रत्येक पुल अनुरोध के बीच चेक-इन समय अपडेट करता है।

    - केवल वर्तमान सत्र के लिए मान (ctrl_sleep) बदलता है।

    cl_turn_off_slack_alertवर्तमान में सक्रिय सत्र के लिए Slack अलर्ट सुविधा को बंद करता है।
    cl_turn_on_slack_alertवर्तमान में सक्रिय सत्र के लिए Slack अलर्ट सुविधा को चालू करता है।
    cl_helpइस सहायता संदेश को सूचीबद्ध करता है।
    cl_exitCrawlector को जबरदस्ती समाप्त करता है।