Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
malcom — Malcom - Analisador de Comunicações de Malware | Kitploit
Ferramentas/GitHubGitHub/tomchop/malcom
Forensia de RedeAnálise de MalwareInteligência de Ameaças
GitHubtomchop/malcom

malcom

Malcom - Analisador de Comunicações de Malware

Ver Repositório
1.2k21623há 8 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Malcom - Analisador de Comunicação de Malware

Malcom é uma ferramenta projetada para analisar a comunicação de rede de um sistema usando representações gráficas do tráfego de rede e referenciá-las com fontes conhecidas de malware. Isso é útil ao analisar como certas espécies de malware tentam se comunicar com o mundo exterior.

  • O que é Malcom?
  • Guia rápido
  • Instalação
  • Opções de configuração
  • Instância Docker
  • Nota rápida sobre interceptação TLS
  • Ambiente
  • Feeds
  • Especificações técnicas
  • Roadmap
  • Aviso
  • Licença

O que é Malcom?

Malcom pode ajudá-lo a:

  • detectar servidores de comando e controle (C&C) centrais
  • entender redes peer-to-peer
  • observar infraestruturas DNS fast-flux
  • determinar rapidamente se um artefato de rede é 'conhecido como ruim'

O objetivo do Malcom é tornar a análise de malware e a coleta de inteligência mais rápidas, fornecendo uma versão legível por humanos do tráfego de rede originado de um determinado host ou rede. Converta informações de tráfego de rede em inteligência acionável mais rapidamente.

Verifique a wiki para um Quickstart com algumas capturas de tela e um tutorial sobre como adicionar seus próprios feeds.

Se precisar de ajuda ou quiser contribuir, sinta-se à vontade para se juntar à lista de e-mails ou tente encontrar alguém no IRC (#malcom no freenode.net, é bem tranquilo, mas sempre tem alguém por perto). Você também pode me encontrar no twitter @tomchop_

Aqui está um exemplo de gráfico para o host tomchop.me nodes-tomchop.png

Visualização do conjunto de dados (filtrado para mostrar apenas IPs) dataset-view.png

Guia rápido

  • Instale
  • Certifique-se de que mongodb e redis-server estejam em execução
  • Eleve seus privilégios para root (sim, eu sei, veja o aviso)
  • Inicie o servidor web usando a configuração padrão com ./malcom.py -c malcom.conf (ou veja as opções com ./malcom.py --help) ** Para um arquivo de configuração de exemplo, você pode copiar malcom.conf.example para malcom.conf ** A porta padrão é 8080 ** Alternativamente, execute os feeds a partir do celery. Veja a seção feeds para detalhes de como fazer isso.

Instalação

Malcom é escrito em Python. Desde que você tenha as bibliotecas necessárias, deve ser capaz de executá-lo em qualquer plataforma. Recomendo fortemente o uso de ambientes virtuais Python (virtualenv) para não bagunçar as bibliotecas do seu sistema.

O seguinte foi testado no Ubuntu Server 14.04 LTS:

  • Instale as bibliotecas git, python e libevent, mongodb, redis e outras dependências

      $ 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
    
  • Clone o repositório Git:

      $ git clone https://github.com/tomchop/malcom.git malcom
    
  • Crie seu virtualenv e ative-o:

      $ cd malcom
      $ virtualenv env-malcom
      $ source env-malcom/bin/activate
    
  • Obtenha e instale o 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
    
  • Ainda no seu virtualenv, instale os pacotes Python necessários do arquivo requirements.txt:

      $ cd ../malcom
      $ pip install -r requirements.txt
    
  • Para que a geolocalização IP funcione, você precisa baixar o banco de dados Maxmind e extrair o arquivo para o diretório malcom/Malcom/auxiliary/geoIP. Você pode obter o banco de dados gratuito (e portanto mais ou menos preciso) da Maxmind no seguinte 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
    
  • Inicie o servidor web a partir do diretório malcom usando ./malcom.py. Verifique ./malcom.py --help para interface e portas de escuta.

    • Para começar, você pode copiar o arquivo malcom.conf.example para malcom.conf e executar ./malcom.py -c malcom.conf

Opções de configuração

Banco de dados

Por padrão, o Malcom tentará se conectar a uma instância local do MongoDB e criar seu próprio banco de dados, chamado malcom. Se isso for suficiente para você, pode pular as etapas seguintes. Caso contrário, você precisa editar a seção database do seu arquivo malcom.conf.

Definir outro nome para o seu banco de dados Malcom

Por padrão, o Malcom usará um banco de dados chamado malcom. Você pode alterar esse comportamento editando o arquivo malcom.conf e definindo a diretiva name na seção database de acordo com sua preferência.

    [database]
    ...
    name = my_malcom_database
    ...
Banco(s) de dados remoto(s)

Por padrão, o Malcom tentará se conectar a localhost, mas seu banco de dados pode estar em outro servidor. Para alterar isso, basta definir a diretiva hosts. Você pode usar nomes de host ou endereços IPv4/v6 (lembre-se de colocar endereços IPv6 entre [ e ], por exemplo, [::1]).

Se você quiser usar um banco de dados independente no host my.mongo.server, basta definir:

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

Você também pode especificar a porta em que o mongod está ouvindo, especificando-a após o nome/endereço do servidor, separado por :

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

E se você estiver usando um ReplicaSet que agrupa my.mongo1.server e my.mongo2.server, basta definir:

    [database]
    ...
    hosts = my.mongo1.server,my.mongo2.server
    ...
Usar autenticação

Você pode ter configurado suas instâncias mongod para exigir conexões autenticadas. Nesse caso, você precisa definir o nome de usuário que o driver deverá usar para se conectar à sua instância mongod. Para fazer isso, adicione uma diretiva username à seção database no arquivo malcom.conf. Você também pode precisar definir a senha com a diretiva password. Se o usuário não tiver senha, basta ignorar (ou seja, comentar) a diretiva password.

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

Se o usuário não estiver vinculado ao banco de dados malcom, mas a outro (por exemplo, o banco de dados admin para um usuário administrador), você precisará definir a diretiva authentication_database com o nome desse banco de dados.

    [database]
    ...
    authentication_database = some_other_database
    ...
Caso de um replica set

Ao usar um replica set, pode ser necessário garantir que você está conectado ao conjunto correto. Para isso, basta adicionar a diretiva replset para forçar o driver do MongoDB a verificar o nome do replicaset.

    [database]
    ...
    replset = my_mongo_replica
    ...
Baixar ferramenta