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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
malcom — Malcom - मैलवेयर संचार विश्लेषक | Kitploit
उपकरण/GitHubGitHub/tomchop/malcom
नेटवर्क फोरेंसिकमालवेयर विश्लेषणखतरा खुफिया
GitHubtomchop/malcom

malcom

Malcom - मैलवेयर संचार विश्लेषक

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

Malcom - मैलवेयर संचार विश्लेषक

Malcom एक उपकरण है जिसे नेटवर्क ट्रैफ़िक के ग्राफिकल प्रतिनिधित्व का उपयोग करके सिस्टम के नेटवर्क संचार का विश्लेषण करने और उन्हें ज्ञात मैलवेयर स्रोतों से क्रॉस-रेफरेंस करने के लिए डिज़ाइन किया गया है। यह तब काम आता है जब यह विश्लेषण किया जाता है कि कुछ मैलवेयर प्रजातियाँ बाहरी दुनिया से संवाद करने का प्रयास कैसे करती हैं।

  • मैलकॉम क्या है?
  • त्वरित कैसे-करें
  • स्थापना
  • कॉन्फ़िगरेशन विकल्प
  • डॉकर इंस्टेंस
  • TLS इंटरसेप्शन पर त्वरित नोट
  • पर्यावरण
  • फीड
  • तकनीकी विशिष्टताएँ
  • रोडमैप
  • अस्वीकरण
  • लाइसेंस

मैलकॉम क्या है?

Malcom आपकी मदद कर सकता है:

  • केंद्रीय कमांड और कंट्रोल (C&C) सर्वरों का पता लगाना
  • पीयर-टू-पीयर नेटवर्क को समझना
  • DNS फास्ट-फ्लक्स बुनियादी ढाँचे का निरीक्षण करना
  • जल्दी से यह निर्धारित करना कि कोई नेटवर्क आर्टिफैक्ट 'ज्ञात-खराब' है या नहीं

Malcom का उद्देश्य किसी दिए गए होस्ट या नेटवर्क से उत्पन्न नेटवर्क ट्रैफ़िक का मानव-पठनीय संस्करण प्रदान करके मैलवेयर विश्लेषण और इंटेल संग्रह को तेज़ बनाना है। नेटवर्क ट्रैफ़िक की जानकारी को तेज़ी से कार्रवाई योग्य खुफिया जानकारी में बदलें।

त्वरित आरंभ के लिए कुछ अच्छे स्क्रीनशॉट और अपने स्वयं के फीड कैसे जोड़ें पर एक ट्यूटोरियल के लिए wiki देखें।

यदि आपको कुछ सहायता चाहिए, या योगदान देना चाहते हैं, तो मेलिंग सूची में शामिल होने या IRC पर किसी को पकड़ने का प्रयास करें (#malcom on freenode.net, यह काफी शांत है लेकिन आसपास हमेशा कोई न कोई होता है)। आप मुझे ट्विटर पर भी संपर्क कर सकते हैं @tomchop_

यहाँ होस्ट tomchop.me के लिए एक उदाहरण ग्राफ़ है nodes-tomchop.png

डेटासेट दृश्य (केवल IP दिखाने के लिए फ़िल्टर किया गया) dataset-view.png

त्वरित कैसे-करें

  • इंस्टॉल करें
  • सुनिश्चित करें कि mongodb और redis-server चल रहे हैं
  • अपने विशेषाधिकारों को रूट तक बढ़ाएँ (हाँ, मुझे पता है, अस्वीकरण देखें)
  • वेबसर्वर को डिफ़ॉल्ट कॉन्फ़िगरेशन के साथ ./malcom.py -c malcom.conf का उपयोग करके शुरू करें (या ./malcom.py --help के साथ विकल्प देखें) ** एक उदाहरण कॉन्फ़िगरेशन फ़ाइल के लिए, आप malcom.conf.example को malcom.conf पर कॉपी कर सकते हैं ** डिफ़ॉल्ट पोर्ट 8080 है ** वैकल्पिक रूप से, celery से फीड चलाएँ। यह कैसे करें, इसके विवरण के लिए फीड अनुभाग देखें।

स्थापना

Malcom पायथन में लिखा गया है। बशर्ते आपके पास आवश्यक लाइब्रेरी हों, आप इसे किसी भी प्लेटफ़ॉर्म पर चला सकें। मैं पायथन वर्चुअल एनवायरनमेंट (virtualenv) के उपयोग की अत्यधिक अनुशंसा करता हूँ ताकि आपके सिस्टम लाइब्रेरीज़ खराब न हों।

निम्नलिखित Ubuntu server 14.04 LTS पर परीक्षण किया गया था:

  • git, python और libevent लिब्स, mongodb, redis, और अन्य निर्भरताएँ स्थापित करें

    root@kitploit:~
      $ sudo apt-get install build-essential git python-dev libevent-dev mongodb libxml2-dev libxslt-dev zlib1g-dev redis-server libffi-dev libssl-dev python-virtualenv
    
  • Git रेपो क्लोन करें:

    root@kitploit:~
      $ git clone https://github.com/tomchop/malcom.git malcom
    
  • अपना virtualenv बनाएँ और इसे सक्रिय करें:

    root@kitploit:~
      $ cd malcom
      $ virtualenv env-malcom
      $ source env-malcom/bin/activate
    
  • scapy प्राप्त करें और स्थापित करें:

    root@kitploit:~
      $ cd .. 
      $ wget http://www.secdev.org/projects/scapy/files/scapy-latest.tar.gz
      $ tar xvzf scapy-latest.tar.gz
      $ cd scapy-2.1.0
      $ python setup.py install
    
  • अभी भी अपने virtualenv से, फ़ाइल से आवश्यक पायथन पैकेज स्थापित करें:

कॉन्फ़िगरेशन विकल्प

डेटाबेस

डिफ़ॉल्ट रूप से, Malcom एक स्थानीय mongodb इंस्टेंस से कनेक्ट करने का प्रयास करेगा और अपना स्वयं का डेटाबेस बनाएगा, जिसका नाम malcom होगा। यदि यह आपके लिए ठीक है, तो आप निम्नलिखित चरणों को छोड़ सकते हैं। अन्यथा, आपको अपनी malcom.conf फ़ाइल के database अनुभाग को संपादित करने की आवश्यकता होगी।

अपने Malcom डेटाबेस के लिए कोई अन्य नाम सेट करें

डिफ़ॉल्ट रूप से, Malcom malcom नामक डेटाबेस का उपयोग करेगा। आप malcom.conf फ़ाइल को संपादित करके और database अनुभाग से name निर्देश को अपनी पसंद के अनुसार सेट करके इस व्यवहार को बदल सकते हैं।

root@kitploit:~
    [database]
    ...
    name = my_malcom_database
    ...
रिमोट डेटाबेस

डिफ़ॉल्ट रूप से, Malcom localhost से कनेक्ट करने का प्रयास करेगा, लेकिन आपका डेटाबेस किसी अन्य सर्वर पर हो सकता है। इसे बदलने के लिए, बस hosts निर्देश सेट करें। आप होस्टनाम या IPv4/v6 पतों का उपयोग कर सकते हैं (बस ध्यान रखें कि अपने IPv6 पतों को [ और ] के बीच संलग्न करें, उदा. [::1])।

यदि आप होस्ट my.mongo.server पर एक स्टैंडअलोन डेटाबेस का उपयोग करना चाहते हैं, तो बस सेट करें:

root@kitploit:~
    [database]
    ...
    hosts = my.mongo.server
    ...

आप अपने सर्वर के नाम/पते के बाद : से अलग करके उस पोर्ट को भी निर्दिष्ट कर सकते हैं जिस पर mongod सुन रहा है:

root@kitploit:~
    [database]
    ...
    hosts = localhost:27008
    ...

और यदि आप my.mongo1.server और my.mongo2.server को पुनर्समूहित करने वाले ReplicaSet का उपयोग कर रहे हैं, तो बस सेट करें:

root@kitploit:~
    [database]
    ...
    hosts = my.mongo1.server,my.mongo2.server
    ...
प्रमाणीकरण का उपयोग करें

हो सकता है कि आपने अपने mongod इंस्टेंस को प्रमाणित कनेक्शन लागू करने के लिए कॉन्फ़िगर किया हो। उस स्थिति में, आपको उपयोगकर्ता नाम सेट करना होगा जिसका उपयोग ड्राइवर को अपने mongod इंस्टेंस से कनेक्ट करने के लिए करना होगा। ऐसा करने के लिए, बस malcom.conf फ़ाइल में database अनुभाग में एक username निर्देश जोड़ें। आपको password निर्देश के साथ पासवर्ड भी सेट करना पड़ सकता है। यदि उपयोगकर्ता के पास पासवर्ड नहीं है, तो बस password निर्देश को अनदेखा करें (यानी टिप्पणी करें)।

root@kitploit:~
    [database]
    ...
    username = my_user
    password = change_me
    ...

यदि उपयोगकर्ता malcom डेटाबेस से नहीं बल्कि किसी अन्य डेटाबेस से जुड़ा है (उदा. एक व्यवस्थापक उपयोगकर्ता के लिए admin डेटाबेस), तो आपको उस डेटाबेस के नाम के साथ authentication_database निर्देश सेट करना होगा।

root@kitploit:~
    [database]
    ...
    authentication_database = some_other_database
    ...
रेप्लिका सेट का मामला

रेप्लिका सेट का उपयोग करते समय, आपको यह सुनिश्चित करने की आवश्यकता हो सकती है कि आप सही से जुड़े हैं। इसके लिए, बस mongo ड्राइवर को रेप्लिकासेट के नाम की जाँच करने के लिए बाध्य करने के लिए replset निर्देश जोड़ें:

root@kitploit:~
    [database]
    ...
    replset = my_mongo_replica
    ...

डिफ़ॉल्ट रूप से, Malcom रेप्लिका सेट के प्राथमिक नोड से कनेक्ट करने का प्रयास करेगा। आपको इसे बदलने की आवश्यकता/इच्छा हो सकती है। उस व्यवहार को बदलने के लिए, बस read_preference निर्देश सेट करें। अधिक जानकारी के लिए mongo दस्तावेज़ीकरण देखें।

root@kitploit:~
    [database]
    ...
    read_preference = NEAREST
    ...

समर्थित रीड प्रेफरेंसेस हैं:

  • PRIMARY
  • PRIMARY_PREFERRED
  • SECONDARY
  • SECONDARY_PREFERRED
  • NEAREST

डॉकर इंस्टेंस

आरंभ करने का सबसे तेज़ तरीका सार्वजनिक डॉकर रेपो से डॉकर इमेज खींचना है। पुराने, अधिक स्थिर डॉकर बिल्ड को खींचने के लिए, tomchop/malcom-automatic के बजाय tomchop/malcom का उपयोग करें।

root@kitploit:~
    $ sudo docker pull tomchop/malcom-automatic
    $ sudo docker run -p 8080:8080 -d --name malcom tomchop/malcom-automatic

http://<docker_host>:8080/ से कनेक्ट करने पर आप आरंभ कर सकते हैं।

TLS इंटरसेप्शन पर त्वरित नोट

Malcom अब TLS इंटरसेप्शन का समर्थन करता है। इसके काम करने के लिए, आपको Malcom/networking/tlsproxy/keys में कुछ कुंजियाँ उत्पन्न करने की आवश्यकता है। यह कैसे करें, इस पर अधिक जानकारी के लिए वहाँ KEYS.md फ़ाइल देखें।

सुनिश्चित करें कि आपके पास IPtables (आपके पास पहले से होना चाहिए) और इसके साथ कुछ पोर्ट फ़ॉरवर्डिंग करने की अनुमतियाँ हैं (इसके लिए आमतौर पर आपको रूट होने की आवश्यकता होती है)। आप इसके लिए सुविधाजनक forward_port.sh स्क्रिप्ट का उपयोग कर सकते हैं। उदाहरण के लिए, पोर्ट 443 की ओर सभी TLS संचार को इंटरसेप्ट करने के लिए, forward_port.sh 443 9999 का उपयोग करें। फिर आपको malcom को पोर्ट 9999 पर एक इंटरसेप्शन प्रॉक्सी चलाने के लिए कहना होगा।

भविष्य के रिलीज़ में इस प्रक्रिया को स्वचालित करने की अपेक्षा करें।

पर्यावरण

Malcom को Ubuntu Server 14.04 LTS VM पर डिज़ाइन और परीक्षण किया गया था।

यदि आप मैलवेयर विश्लेषण करने के आदी हैं, तो आपके पास शायद पहले से ही होस्ट OS पर ढेरों वर्चुअल मशीनें चल रही हैं। बस एक नए VM पर Malcom स्थापित करें, और अपने अन्य VM के कनेक्शन को Malcom के माध्यम से रूट करें। Malcom चलाने वाले VM पर रूटिंग / NATing सक्रिय करने के लिए enable_routing.sh का उपयोग करें। आपको गेस्ट OS में एक अतिरिक्त नेटवर्क कार्ड जोड़ने की आवश्यकता होगी।

जब तक इसे लेयर-3 नेटवर्क डेटा मिल रहा है, Malcom को कहीं भी तैनात किया जा सकता है। हालाँकि उच्च-उपलब्धता नेटवर्क पर इसका उपयोग करने की अनुशंसा नहीं की जाती है (इसे तेज़ होने के लिए डिज़ाइन नहीं किया गया था, अस्वीकरण देखें), आप इसे अपने स्विच के मिरर पोर्ट के अंत में या अपने गेटवे पर चला सकते हैं।

फीड

Malcom का एक इंस्टेंस लॉन्च करने के लिए जो केवल फीड से जानकारी प्राप्त करता है, Malcom को --feeds विकल्प के साथ चलाएँ या कॉन्फ़िगरेशन फ़ाइल को ट्वीक करें।

आपका डेटाबेस स्वचालित रूप से पॉप्युलेट होना चाहिए। यदि आप कोड में खुदाई कर सकते हैं, तो फीड जोड़ना काफी सीधा है (यह मानते हुए कि आप Evil ऑब्जेक्ट उत्पन्न कर रहे हैं)। आप /feeds/zeustracker में एक उदाहरण फीड पा सकते हैं। एक अधिक विस्तृत ट्यूटोरियल यहाँ उपलब्ध है।

आप फीड चलाने के लिए celery का भी उपयोग कर सकते हैं। सुनिश्चित करें कि celery आपके virtualenv से $ pip install celery चलाकर स्थापित है। फिर आप 12 समकालिक कर्मचारियों के साथ फीडिंग प्रक्रिया लॉन्च करने के लिए celery worker -E --config=celeryconfig --loglevel=DEBUG --concurrency=12 का उपयोग कर सकते हैं।

तकनीकी विशिष्टताएँ

Malcom ज्यादातर स्क्रैच से, पायथन में लिखा गया था। यह काम करने के लिए निम्नलिखित फ्रेमवर्क का उपयोग करता है:

  • flask - एक हल्का पायथन वेब फ्रेमवर्क
  • mongodb - एक NoSQL डेटाबेस। यह पायथन के साथ pymongo का उपयोग करके इंटरफ़ेस करता है
  • redis - एक उन्नत इन-मेमोरी की-वैल्यू स्टोर
  • d3js - एक जावास्क्रिप्ट लाइब्रेरी जो शानदार फोर्स-डायरेक्टेड ग्राफ़ तैयार करती है (https://github.com/mbostock/d3/wiki/Gallery)
  • bootstrap - एक CSS फ्रेमवर्क जो अंततः वेबडिज़ाइन को मार देगा, लेकिन उन अनुप्रयोगों को "वेबीकृत" करना बेहद आसान बनाता है जो केवल कमांड प्रॉम्प्ट के माध्यम से काम करेंगे।

रोडमैप

सहयोग - मुख्य दिशा जो मैं इस उपकरण को लेना चाहता हूँ वह सहयोगी बनना है। इसके लिए मेरे पास कुछ विचार हैं, और मुझे लगता है कि डेटा साझाकरण लागू होने के बाद यह 100x अधिक उपयोगी हो जाएगा।

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

एक बार सहयोग और विस्तार चालू हो जाने के बाद, मुझे लगता है कि यह बाहर के एक से अधिक घटना प्रतिक्रियाकर्ताओं के लिए सहायक होगा। :-)

अस्वीकरण

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

  • यह टूटा हुआ हो सकता है, इसमें सुरक्षा अंतराल हो सकते हैं (अनियंत्रित वातावरण में इसे रूट के रूप में चलाना शायद एक अच्छा विचार नहीं है), या बिल्कुल काम नहीं कर सकता है।
  • यह पायथन में लिखा गया है, इसलिए उम्मीद न करें कि यह अल्ट्रा-फास्ट होगा या आसानी से बड़ी मात्रा में डेटा संभालेगा।
  • मैं कोडर नहीं हूँ, इसलिए उम्मीद न करें कि आप जहाँ भी देखेंगे, सुंदर पायथोनिक कोड दिखाई देगा। या बहुत सारी टिप्पणियाँ।

यह विकास के शुरुआती चरणों में है, जिसका अर्थ है "यह मेरे लिए काम करता है"। आप इसे साझा करने, इसे बेहतर बनाने, पुल अनुरोधों के लिए पूछने के लिए स्वतंत्र हैं।

लाइसेंस

Malcom - मैलवेयर संचार विश्लेषक कॉपीराइट (C) 2013 Thomas Chopitea

यह प्रोग्राम मुफ़्त सॉफ़्टवेयर है: आप इसे पुनर्वितरित और/या संशोधित कर सकते हैं GNU जनरल पब्लिक लाइसेंस की शर्तों के तहत जैसा कि फ्री सॉफ़्टवेयर फाउंडेशन द्वारा प्रकाशित किया गया है, या तो लाइसेंस का संस्करण 3, या (आपके विकल्प पर) कोई बाद का संस्करण।

यह प्रोग्राम इस उम्मीद में वितरित किया जाता है कि यह उपयोगी होगा, लेकिन बिना किसी वारंटी के; यहां तक कि व्यापारिकता की निहित वारंटी या किसी विशेष उद्देश्य के लिए उपयुक्तता के बिना। अधिक जानकारी के लिए GNU जनरल पब्लिक लाइसेंस देखें।

आपको इस प्रोग्राम के साथ GNU जनरल पब्लिक लाइसेंस की एक प्रति प्राप्त होनी चाहिए थी। यदि नहीं, तो http://www.gnu.org/licenses/ देखें।

कृपया ध्यान दें कि Redis, MongoDB, d3js, Maximind और Bootstrap (और Malcom में शामिल अन्य तृतीय-पक्ष लाइब्रेरी) के अपने GPL संगत लाइसेंस हो सकते हैं।

टूल डाउनलोड करें
requirements.txt
root@kitploit:~
  $ cd ../malcom
  $ pip install -r requirements.txt
  • IP भू-स्थान के काम करने के लिए, आपको Maxmind डेटाबेस डाउनलोड करना होगा और फ़ाइल को malcom/Malcom/auxiliary/geoIP निर्देशिका में निकालना होगा। आप निम्नलिखित लिंक से Maxmind का मुफ़्त (और इस प्रकार कमोबेश सटीक) डेटाबेस प्राप्त कर सकते हैं: http://dev.maxmind.com/geoip/geoip2/geolite2/:

    root@kitploit:~
      $ cd Malcom/auxiliary/geoIP
      $ wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
      $ gunzip -d GeoLite2-City.mmdb.gz
      $ mv GeoLite2-City.mmdb GeoIP2-City.mmdb
    
  • वेबसर्वर को malcom निर्देशिका से ./malcom.py का उपयोग करके लॉन्च करें। सुनने के इंटरफ़ेस और पोर्ट के लिए ./malcom.py --help देखें।

    • शुरुआत के लिए, आप malcom.conf.example फ़ाइल को malcom.conf पर कॉपी कर सकते हैं और ./malcom.py -c malcom.conf चला सकते हैं