Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
BSF — Framework de Simulação de Botnet | Kitploit
Ferramentas/GitHubGitHub/tklab-tud/bsf
Segurança de RedeAnálise de MalwareTestes de PenetraçãoPapers e PesquisaAprendizado e EducaçãoRed Teaming
GitHubtklab-tud/bsf

BSF

Framework de Simulação de Botnet

Ver Repositório
8032há 6 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
BSF Logo

BSF - Framework de Simulação de Botnet

O BSF fornece um ambiente de simulação discreto para implementar e estender botnets peer-to-peer, ajustar suas configurações e permitir que defensores avaliem mecanismos de monitoramento e contramedidas.

Sinopse

Na corrida armamentista entre botmasters e defensores, os botmasters têm vantagem, pois os defensores precisam reagir a ações e novas ameaças introduzidas pelos botmasters. O Botnet Simulation Framework (BSF) aborda esse problema nivelando o campo de atuação. Ele permite que defensores se adiantem na corrida armamentista ao desenvolver e avaliar novas técnicas de monitoramento de botnets e contramedidas. Isso é crucial, pois experimentar no mundo real interferiria com outros pesquisadores e possivelmente alertaria botmasters.

O BSF permite a simulação realista de botnets peer-to-peer para explorar e estudar o design e o impacto de mecanismos de monitoramento e tentativas de desmantelamento antes de serem implantados no mundo real. O BSF é um simulador de botnet baseado em eventos discretos que oferece um conjunto de funcionalidades de botnet altamente configuráveis (e personalizáveis), incluindo:

  • comportamento de churn realista
  • comportamento variável dos bots
  • mecanismos de monitoramento (crawlers e sensores)
  • mecanismos de anti-monitoramento

Além disso, o BSF fornece um módulo de visualização interativa para estudar ainda mais o resultado de uma simulação. O BSF tem como objetivo capacitar pesquisadores e defensores a estudar o design de diferentes mecanismos de monitoramento na presença de mecanismos de anti-monitoramento [1,2,3]. Além disso, esta ferramenta permite que os usuários explorem e compreendam o impacto das escolhas de design das botnets observadas até o momento.

Instalação

O BSF consiste no framework de simulação e em uma ferramenta de visualização. O framework de simulação em si é construído sobre o OMNeT++. A visualização é construída sobre o Dash para fornecer uma visualização interativa no seu navegador favorito.

Configurando o OMNeT++

A versão atual do BSF foi construída e testada com o OMNeT++ versão 5.4.1.

Consulte a documentação do OMNeT++ para diretrizes de instalação, tutoriais e referências sobre as funcionalidades fornecidas.

Configurando os componentes de visualização

Para visualizar as simulações de botnet, são necessários os seguintes pacotes Python:

root@kitploit:~
pip install dash==1.2.0      # O core do dash backend
pip install dash-daq==0.1.0  # Componentes DAQ (recém disponibilizados como open source!)

pip install networkx
pip install natsort 
pip install numpy

Primeiros Passos

As simulações no OMNeT++ são baseadas em configurações definidas em arquivos .ini. A pasta simulations deste repositório contém um conjunto de configurações predefinidas localizadas nos arquivos tests.ini e sample.ini.

Para executar uma configuração, você pode usar a IDE do OMNeT++ ou a linha de comando. Como o BSF não utiliza nenhum dos recursos gráficos do OMNeT++, recomendamos executar todas as simulações no cmdenv, ou seja, usando apenas a saída do console.

Executando Simulações na IDE

Para executar uma simulação na IDE, você precisa configurar uma configuração de execução. Para isso, clique com o botão direito no arquivo *.ini e selecione Run As -> Run Configurations. Em seguida, configure seu arquivo de configuração conforme mostrado na imagem abaixo:

Configuração de execução na IDE

Agora basta clicar em Apply e Run. A saída da simulação aparecerá no console da IDE.

Executando Simulações a partir da Linha de Comando

Para executar a partir da linha de comando, primeiro precisamos compilar o projeto. Navegue até a pasta raiz e execute:

root@kitploit:~
make MODE=release all 

Depois, navegue até a pasta simulations e execute:

root@kitploit:~
../BSF -r 0 -m -u Cmdenv -c SampleConfig_Crawler -n .. samples.ini

Saída da Simulação

Independentemente de executar a simulação pela IDE ou pela linha de comando, você deve ver uma saída semelhante a esta:

root@kitploit:~
** Event #577792   t=64831.46985369179   Elapsed: 4.21157s (0m 04s)  37% completed  (37% total)
     Speed:     ev/sec=180486   simsec/sec=14682   ev/simsec=12.293
     Messages:  created: 406512   present: 2108   in FES: 487
Just crawled: 24 nodes at 88983.25891616358
Just crawled: 40 nodes at 92583.25891616358
** Event #1050880   t=93607.74036896409   Elapsed: 6.28757s (0m 06s)  54% completed  (54% total)
     Speed:     ev/sec=227885   simsec/sec=13861.4   ev/simsec=16.4402
     Messages:  created: 729732   present: 2106   in FES: 630
Just crawled: 108 nodes at 96183.25891616358
Just crawled: 286 nodes at 99783.25891616358
Just crawled: 570 nodes at 103383.25891616358

Os blocos que começam com ** são saídas padrão do OMNeT++ que indicam o progresso e as estatísticas da simulação. Na configuração selecionada, temos saídas adicionais do crawler informando o número de nós descobertos a cada intervalo de rastreamento. Embora isso não nos diga muito, mostraremos na próxima seção como visualizar a saída tanto da botnet quanto dos resultados do crawler.

Visualizando Resultados

A visualização é desacoplada do framework de simulação e funciona sobre os arquivos de log de monitoramento e grafos gerados. Também disponibilizamos alguns dados de exemplo para explorar as visualizações sem executar o framework principal.

Para visualizar os resultados das simulações, navegue até a pasta visualization e execute app.py. Em seguida, abra seu navegador favorito e acesse http://127.0.0.1:8050/. Isso deve fornecer uma visualização em grafo de uma das configurações de exemplo, algo parecido com isto:

Demonstração da visualização

O menu suspenso no canto superior direito da tela permite escolher entre os resultados de diferentes configurações. Na parte inferior da tela, você pode ver uma linha do tempo que indica todas as capturas disponíveis da botnet. Isso permite visualizar mudanças na atividade e na conectividade dos bots. Além disso, o menu à direita permite visualizar as informações coletadas pelos crawlers ou sensores. Um exemplo pode ser visto na figura a seguir, onde a visão do crawler é destacada em verde.

Demonstração da visualização

Além disso, estamos atualmente trabalhando em visualizações mais avançadas para auxiliar a análise de operações de monitoramento e desmantelamento.

Referências

As seguintes publicações apresentam exemplos de casos de uso do BSF:

[1] Leon Böck, Emmanouil Vasilomanolakis, Jan Helge Wolf, Max Mühlhäuser: Autonomously detecting sensors in fully distributed botnets. Computers & Security 83: 1-13 (2019)

[2] Leon Böck, Emmanouil Vasilomanolakis, Max Mühlhäuser, Shankar Karuppayah: Next Generation P2P Botnets: Monitoring Under Adverse Conditions. RAID 2018: 511-531

[3] Emmanouil Vasilomanolakis, Max Mühlhäuser, Jan Helge Wolf, Leon Böck, Shankar Karuppayah

Baixar ferramenta