Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
malcom — Malcom - Analizzatore di Comunicazioni di Malware | Kitploit
Strumenti/GitHubGitHub/tomchop/malcom
Network ForensicsAnalisi MalwareThreat Intelligence
GitHubtomchop/malcom

malcom

Malcom - Analizzatore di Comunicazioni di Malware

Vedi Repository
1.2k216268 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Malcom - Analizzatore di Comunicazioni Malware

Malcom è uno strumento progettato per analizzare le comunicazioni di rete di un sistema utilizzando rappresentazioni grafiche del traffico di rete e confrontarle con fonti di malware note. Questo è utile quando si analizza come determinate specie di malware cercano di comunicare con il mondo esterno.

  • Cos'è Malcom?
  • Guida rapida
  • Installazione
  • Opzioni di configurazione
  • Istanza Docker
  • Nota rapida sull'intercettazione TLS
  • Ambiente
  • Feed
  • Specifiche tecniche
  • Roadmap
  • Disclaimer
  • Licenza

Cos'è Malcom?

Malcom può aiutarti a:

  • rilevare server di comando e controllo (C&C)
  • comprendere reti peer-to-peer
  • osservare infrastrutture DNS fast-flux
  • determinare rapidamente se un artefatto di rete è 'noto-cattivo'

L'obiettivo di Malcom è rendere l'analisi del malware e la raccolta di intelligence più veloci fornendo una versione leggibile del traffico di rete proveniente da un dato host o rete. Converti le informazioni sul traffico di rete in intelligence utilizzabile più rapidamente.

Consulta il wiki per una guida rapida con alcuni screenshot e un tutorial su come aggiungere i tuoi feed.

Se hai bisogno di aiuto o vuoi contribuire, sentiti libero di iscriverti alla mailing list o provare a contattare qualcuno su IRC (#malcom su freenode.net, è piuttosto silenzioso ma c'è sempre qualcuno in giro). Puoi anche contattarmi su Twitter @tomchop_

Ecco un esempio di grafico per l'host tomchop.me nodes-tomchop.png

Vista del dataset (filtrata per mostrare solo IP) dataset-view.png

Guida rapida

  • Installa
  • Assicurati che mongodb e redis-server siano in esecuzione
  • Eleva i tuoi privilegi a root (sì, lo so, vedi disclaimer)
  • Avvia il webserver usando la configurazione predefinita con ./malcom.py -c malcom.conf (o visualizza le opzioni con ./malcom.py --help) ** Per un file di configurazione di esempio, puoi copiare malcom.conf.example in malcom.conf ** La porta predefinita è 8080 ** In alternativa, esegui i feed da celery. Vedi la sezione feed per i dettagli su come fare.

Installazione

Malcom è scritto in Python. A condizione che tu abbia le librerie necessarie, dovresti essere in grado di eseguirlo su qualsiasi piattaforma. Raccomando vivamente l'uso di ambienti virtuali Python (virtualenv) per non sporcare le librerie di sistema.

Quanto segue è stato testato su Ubuntu server 14.04 LTS:

  • Installa git, python e le librerie libevent, mongodb, redis e altre dipendenze

      $ 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
    
  • Clona il repository Git:

      $ git clone https://github.com/tomchop/malcom.git malcom
    
  • Crea il tuo virtualenv e attivalo:

      $ cd malcom
      $ virtualenv env-malcom
      $ source env-malcom/bin/activate
    
  • Ottieni e installa scapy:

      $ 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
    
  • Sempre dal tuo virtualenv, installa i pacchetti Python necessari dal file requirements.txt:

      $ cd ../malcom
      $ pip install -r requirements.txt
    
  • Affinché la geolocalizzazione IP funzioni, devi scaricare il database Maxmind ed estrarre il file nella directory malcom/Malcom/auxiliary/geoIP. Puoi ottenere il database gratuito (e quindi più o meno accurato) di Maxmind dal seguente link: http://dev.maxmind.com/geoip/geoip2/geolite2/:

      $ 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
    
  • Avvia il webserver dalla directory malcom usando ./malcom.py. Controlla ./malcom.py --help per l'interfaccia di ascolto e le porte.

    • Per iniziare, puoi copiare il file malcom.conf.example in malcom.conf ed eseguire ./malcom.py -c malcom.conf

Opzioni di configurazione

Database

Per impostazione predefinita, Malcom proverà a connettersi a un'istanza mongodb locale e creerà il proprio database, chiamato malcom. Se per te va bene, puoi saltare i passaggi seguenti. Altrimenti, devi modificare la sezione database del tuo file malcom.conf.

Impostare un altro nome per il tuo database Malcom

Per impostazione predefinita, Malcom utilizzerà un database chiamato malcom. Puoi cambiare questo comportamento modificando il file malcom.conf e impostando la direttiva name nella sezione database a tuo piacimento.

    [database]
    ...
    name = my_malcom_database
    ...
Database remoti

Per impostazione predefinita, Malcom proverà a connettersi a localhost, ma il tuo database potrebbe trovarsi su un altro server. Per cambiare, imposta la direttiva hosts. Puoi usare nomi host o indirizzi IPv4/v6 (ricorda di racchiudere gli indirizzi IPv6 tra [ e ], ad esempio [::1]).

Se desideri utilizzare un database autonomo sull'host my.mongo.server, imposta:

    [database]
    ...
    hosts = my.mongo.server
    ...

Puoi anche specificare la porta su cui mongod è in ascolto indicandola dopo il nome/indirizzo del server, separata da :

    [database]
    ...
    hosts = localhost:27008
    ...

E se stai utilizzando un ReplicaSet che raggruppa my.mongo1.server e my.mongo2.server, imposta:

    [database]
    ...
    hosts = my.mongo1.server,my.mongo2.server
    ...
Usare l'autenticazione

Potresti aver configurato le tue istanze mongod per richiedere connessioni autenticate. In tal caso, devi impostare il nome utente che il driver dovrà usare per connettersi alla tua istanza mongod. Per farlo, aggiungi una direttiva username alla sezione database nel file malcom.conf. Potresti anche dover impostare la password con la direttiva password. Se l'utente non ha una password, ignora (cioè commenta) la direttiva password.

    [database]
    ...
    username = my_user
    password = change_me
    ...

Se l'utente non è collegato al database malcom ma a un altro (ad esempio il database admin per un utente amministratore), dovrai impostare la direttiva authentication_database con il nome di quel database.

    [database]
    ...
    authentication_database = some_other_database
    ...
Caso di un replica set

Quando si utilizza un replica set, potresti dover assicurarti di essere connesso a quello giusto. Per farlo, aggiungi la direttiva replset per forzare il driver mongo a verificare il nome del replicaset

    [database]
    ...
    replset = my_mongo_replica
    ...

Per impostazione predefinita, Malcom proverà a connettersi al nodo primario del replica set. Potresti aver bisogno/volete cambiarlo. Per cambiare questo comportamento, imposta la direttiva read_preference. Vedi la documentazione di Mongo per maggiori informazioni.

Scarica lo strumento