Introdução
Neste laboratório, você aprenderá a usar um módulo scanner auxiliar dentro do Metasploit Framework para realizar a enumeração de versão SSH (Secure Shell). O Metasploit é uma poderosa ferramenta de teste de penetração que contém uma vasta coleção de exploits, payloads e módulos auxiliares.
Módulos auxiliares não são usados para exploração direta, mas para outros propósitos como scanning, fuzzing e coleta de informações. A enumeração SSH é uma parte chave da fase de reconhecimento de uma avaliação de segurança. Ao identificar a versão específica de um servidor SSH, um atacante pode procurar por vulnerabilidades conhecidas associadas a essa versão.
Você aprenderá a iniciar o console do Metasploit, procurar o módulo apropriado, configurar suas opções e executá-lo contra um alvo para descobrir sua versão SSH.
Procurar pelo módulo auxiliar ssh_version
Nesta etapa, você iniciará o console do Metasploit Framework e procurará por um módulo capaz de escanear versões SSH.
Primeiro, abra um terminal. O console do Metasploit é uma interface de linha de comando para o framework. Você pode iniciá-lo digitando msfconsole. Usaremos o flag -q para uma inicialização "silenciosa" (quiet), que suprime o banner de inicialização.
Execute o seguinte comando para iniciar o console do Metasploit:
msfconsole -q
Assim que o console for carregado, você verá o prompt do Metasploit, que se parece com msf6 >. Agora, você pode usar o comando search para encontrar módulos. Estamos procurando por um módulo relacionado ao escaneamento de versão SSH.
Digite o seguinte comando no console do Metasploit e pressione Enter:
search ssh_version
O Metasploit pesquisará em seu banco de dados de módulos e exibirá quaisquer correspondências. A saída mostrará o módulo auxiliary/scanner/ssh/ssh_version, que é exatamente o que precisamos.
msf6 > search ssh_version
Matching Modules
================
## Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 auxiliary/scanner/ssh/ssh_version normal No Detect SSH Version
Interact with a module by name or index. For example info 0, use 0 or use auxiliary/scanner/ssh/ssh_version
msf6 >
Selecionar o módulo ssh_version
Nesta etapa, você selecionará o módulo ssh_version que encontrou e visualizará suas opções disponíveis.
Agora que você identificou o módulo correto, precisa carregá-lo no contexto do framework. Isso é feito usando o comando use seguido pelo nome completo do módulo.
No prompt do msfconsole, digite o seguinte comando:
use auxiliary/scanner/ssh/ssh_version
Após executar o comando, você notará que o prompt muda. Ele agora inclui o nome do módulo ativo, indicando que ele está pronto para configuração. O novo prompt se parecerá com isto: msf6 auxiliary(scanner/ssh/ssh_version) >.
Para ver quais parâmetros você pode configurar para este módulo, use o comando show options:
show options
Este comando exibirá uma tabela com todas as opções para o módulo ssh_version, incluindo suas configurações atuais, se são obrigatórias e uma breve descrição. Preste muita atenção às opções RHOSTS e THREADS, pois as configuraremos nas próximas etapas.
msf6 auxiliary(scanner/ssh/ssh_version) > show options
Module options (auxiliary/scanner/ssh/ssh_version):
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 22 yes The target port (TCP)
THREADS 1 yes The number of concurrent threads (max one per host)
TIMEOUT 30 yes Timeout for the SSH probe
...
Definir a opção RHOSTS para uma sub-rede alvo
Nesta etapa, você configurará o alvo para o seu escaneamento. A opção RHOSTS especifica o(s) host(s) remoto(s) que o Metasploit irá escanear.
Para este laboratório, escanearemos a própria máquina local, pois o script de configuração instalou e iniciou um servidor SSH nela. O endereço IP para a máquina local é sempre 127.0.0.1.
Você pode definir opções de módulo usando o comando set, seguido pelo nome da opção e o valor que deseja atribuir.
Para definir o alvo para sua máquina local, execute o seguinte comando no seu prompt do msfconsole:
set RHOSTS 127.0.0.1
O Metasploit confirmará a alteração imprimindo a opção e seu novo valor.
RHOSTS => 127.0.0.1
Agora você informou ao scanner qual máquina é o alvo. Se você estivesse escaneando uma rede, poderia fornecer um intervalo de endereços IP aqui (por exemplo, 192.168.1.0/24).
Definir o número de threads concorrentes
Nesta etapa, você ajustará o número de threads concorrentes para o scanner. Esta opção controla quantos hosts são escaneados simultaneamente.
Embora o escaneamento de um único host, como estamos fazendo agora, não se beneficie muito de threads múltiplas, é uma configuração crucial para escanear redes grandes para acelerar o processo. É uma boa prática aprender como configurá-la.
O valor padrão é 1. Vamos aumentá-lo para 10. Usaremos o comando set novamente.
No seu prompt do msfconsole, digite o seguinte comando:
set THREADS 10
O Metasploit confirmará que a configuração foi atualizada.
THREADS => 10
Agora o scanner está configurado para usar até 10 threads, o que o tornaria significativamente mais rápido ao escanear um intervalo de endereços IP.
Executar o módulo e revisar as versões SSH descobertas
Nesta etapa, com todas as opções configuradas, você executará o módulo scanner e analisará a saída.
O comando run (ou seu alias, exploit) executa o módulo atualmente carregado com suas configurações.
Para iniciar o escaneamento, basta digitar run no seu prompt do msfconsole e pressionar Enter:
run
O módulo tentará se conectar à porta 22 em 127.0.0.1. Se encontrar um serviço SSH ativo, ele obterá o banner da versão e o exibirá. A saída deve ser semelhante à seguinte:
[*] 127.0.0.1:22 - Scanned 1 of 1 hosts (100%)
[+] 127.0.0.1:22 - SSH server detected: SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.6
[*] Auxiliary module execution completed
O símbolo [+] indica sucesso. A saída mostra que um servidor SSH foi detectado em 127.0.0.1 na porta 22, e relata a versão como OpenSSH_8.9p1 em um sistema Ubuntu. Esta informação é valiosa para as próximas etapas em um teste de penetração, como a busca por vulnerabilidades específicas para esta versão.
Resumo
Neste laboratório, você utilizou com sucesso um scanner auxiliar do Metasploit para realizar a enumeração de versões SSH.
Você aprendeu a:
- Iniciar o console do Metasploit Framework.
- Procurar um módulo específico usando o comando
search. - Selecionar e carregar um módulo com o comando
use. - Configurar opções do módulo como
RHOSTSeTHREADSusando o comandoset. - Executar o módulo com o comando
run. - Interpretar os resultados para identificar a versão do servidor SSH em um alvo.
Este processo é uma habilidade fundamental para coleta de informações e reconhecimento no campo da cibersegurança e testes de penetração.


