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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Hale — monitor de comando e controle de botnet | Kitploit
Ferramentas/GitHubGitHub/pjlantz/hale
OSINT (Inteligência de Fontes Abertas)ReconhecimentoColeta de InformaçõesSegurança de RedeAnálise de MalwareComando e ControleInteligência de AmeaçasResposta a Incidentes
GitHubpjlantz/hale

Hale

monitor de comando e controle de botnet

Ver Repositório
2026059há 4 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

Sobre

Hale é um monitor/espião de comando e controle (C&C) para botnets, com design modular para facilitar o desenvolvimento de novos módulos que monitoram novos protocolos usados por servidores C&C. Hale vem com monitores IRC e HTTP desenvolvidos com Twisted para lidar com escalabilidade de um grande número de conexões. Esses módulos possuem gramática de protocolo e configurações de bot configuráveis, mas também podem ser modificados para atender às suas necessidades. Todos os logs e arquivos capturados são salvos em um banco de dados e, no caso do IRC, os números de IP rastreados também.

Para ocultar a localização do operador, as conexões podem ser feitas através de proxies SOCKSv5, e isso é configurável através da interface web, onde também todos os logs estão disponíveis para navegação, juntamente com gráficos estatísticos e linhas do tempo. A interface foi desenvolvida com Django e a API de Visualização do Google. Alguns extras na interface web incluem suporte para uma API RESTful com suporte a OAuth e um mecanismo de busca.

A ideia principal do Hale é ajudar na caça a botnets e na pesquisa, colaborando através da criação de uma rede de sensores (monitores Hale). Para melhorar essa ideia, um bot XMPP está disponível para se conectar a um servidor XMPP centralizado, onde atualmente duas salas de grupo diferentes são usadas para coordenar entre sensores e uma sala para compartilhar logs e arquivos. A sala de coordenação faz uso de hashes de botnet que são gerados a partir das chaves únicas nas configurações do botnet, dessa forma, duas botnets não precisam ser monitoradas simultaneamente se tiverem o mesmo hash (identidade), melhorando a utilização. Para ajudar terceiros a usarem essa rede, um bot pode entrar na sala de coordenação e pedir a um sensor para começar a rastrear uma botnet se ela não estiver sendo rastreada, enviando as configurações para isso. Além disso, na sala de compartilhamento, bots de terceiros podem obter logs e arquivos capturados pelos sensores em tempo real. Para auxiliar no histórico de logs, a API web pode ser usada, suportando solicitações GET.

Instalação

Hale tem as seguintes dependências:

Python == 2.6
Django == 1.2.1
Twisted == 10.1.0
GeoIP-Python == 1.2.4 (e lib C do GeoIP)
Whoosh == 0.3.18
django-haystack == 1.0.1-final
django-piston == 0.2.3rc1
pefile == 1.2.10-63
sleekxmpp == 0.9Rrc1
wsgiref == 0.1.2
zope.interface == 3.6.1
oauth2 == 1.2.0
httplib2 == 0.6.0

Além disso, o monitor requer um driver de backend de banco de dados correspondente ao banco de dados usado pelo Django. Quando essas bibliotecas estiverem instaladas, baixe o código-fonte daqui e extraia em qualquer lugar.

Configuração

  1. Primeiro, crie um banco de dados que será usado pelo Hale. O mecanismo do banco de dados pode ser de sua escolha. Se você estiver usando um banco de dados existente, pule esta etapa.

  2. O próximo passo é instalar os drivers de backend de banco de dados Python correspondentes ao mecanismo do servidor.

  3. Edite settings.py em hale/src/webdb/ e edite as seguintes configurações: ENGINE, NAME, USER, PASSWORD, HOST e PORT, onde a configuração do mecanismo é, por exemplo, django.db.backends.mysql se o mecanismo do seu servidor for MySQL. A configuração de nome é o nome do seu banco de dados usado ao criá-lo.

  4. Se você não quiser iniciar sua própria interface web, pule esta etapa e vá para 8). Em settings.py, altere PATH_TO_APP para apontar para o caminho completo do aplicativo Django, por exemplo: '/home/..../Hale/src/webdb'. No diretório webdb, execute o seguinte comando: python manage.py syncdb. Se você receber algum erro aqui, provavelmente as configurações do banco de dados em settings.py estão incorretas. Além disso, durante a sincronização, defina o superusuário que será usado ao administrar os usuários.

  5. Para suportar a pesquisa na interface web, execute python manage.py rebuild_index para permitir que o mecanismo de busca indexe pela primeira vez. Isso criará um diretório chamado whoosh.index/. Para permitir que o servidor web escreva aqui, execute chmod o+w whoosh.index/. Depois disso, execute python manage.py update_index e coloque isso como uma tarefa cron para atualizar os índices em um intervalo regular de sua escolha.

  6. Execute python manage.py runserver e acesse http://127.0.0.1:8000 para verificar se a configuração foi feita corretamente.

  7. O comando runserver implanta um servidor de desenvolvimento que não é recomendado para uso em produção devido a problemas de desempenho. Em vez disso, implante a interface web instalando o mod_wsgi para Apache. Supondo que você esteja usando Ubuntu, execute apt-get install libapache2-mod-wsgi. Em /etc/apache2/sites-available/default adicione o seguinte:

    Alias /media /usr/local/lib/python2.6/dist-packages/django/contrib/admin/media/
    <Location /media>
      Order allow,deny
      Allow from all
    </Location>


    WSGIDaemonProcess username processes=2 maximum-requests=500 threads=10
    WSGIProcessGroup group

    WSGIScriptAlias / /home/..../webdb/django.wsgi

e edite o nome de usuário e o grupo para os quais o daemon WSGI deve ser executado. WSGIScriptAlias deve ser definido como o caminho completo para o arquivo django.wsgi localizado no diretório webdb. O alias especificado acima é necessário para que a página de administração seja renderizada corretamente. Para poder enviar módulos através da interface web, execute chmod o+w webdb/modules.

  1. Envie os módulos que serão usados de hale/src/modules/ ou escreva os seus próprios (consulte a seção Desenvolvimento). Envie o módulo desejado na interface de administração e edite, por exemplo, o nome do módulo para irc e o nome do arquivo para ircModule.py . Especifique regras de configuração para o módulo na seção correspondente localizada em hale/conf/modules.conf e coloque-as na caixa de texto. Adicione também as seções uniqueKeys para o módulo que está sendo enviado.

  2. Antes de executar o monitor, edite hale.conf em hale/src/conf/ se desejar usar um servidor XMPP. Para ativar o bot XMPP, defina a configuração de uso como True e edite as informações de login para uma conta e servidor existentes ou inicie seu próprio servidor XMPP. Uma etapa importante ao iniciar um servidor XMPP é aumentar o tamanho máximo do stanza do valor padrão para algo como 10Mb. Caso contrário, a publicidade de malware não será possível. As configurações de canal em hale.conf são usadas para a sala de grupo de compartilhamento usada pelo bot, e a configuração coord é usada para a sala de grupo onde toda a coordenação entre sensores ocorre.

  3. Edite hale.conf e defina as configurações do cliente e do servidor.

Uso

Para iniciar o monitor, vá para hale/src/ e execute python server.py. Se ele iniciar com erros, o arquivo settings.py do Django não está configurado corretamente ou faltam algumas bibliotecas. Com o cliente, é possível emitir comandos para o servidor, mas requer que o usuário se autentique no servidor; o acesso é concedido para usuários que são definidos como membros da equipe através da interface web. Quando o cliente estiver em execução, digite help ou ? para obter os comandos disponíveis. Digite help comando para obter mais informações sobre o comando específico. Iniciar um bot monitor é feito primeiro editando o arquivo hale/src/conf/modules.conf, por exemplo usando uma configuração IRC da seguinte forma:

[uniqueKeys]
irc = botnet, *grammar
Baixar ferramenta