Use um Scanner Auxiliar para Enumeração SMB no Metasploit

Kali LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como realizar a enumeração do Server Message Block (SMB) usando o Metasploit Framework. SMB é um protocolo de rede usado para fornecer acesso compartilhado a arquivos, impressoras e portas seriais entre nós em uma rede. Enumerar a versão do SMB é um primeiro passo crucial em testes de penetração, pois ajuda a identificar o software e a versão específicos em execução em um alvo, que podem então ser cruzados com vulnerabilidades conhecidas.

Usaremos um dos módulos de scanner auxiliar do Metasploit, especificamente auxiliary/scanner/smb/smb_version, para escanear um alvo e determinar sua versão do SMB. Metasploit é um poderoso framework de testes de penetração que facilita a localização, exploração e validação de vulnerabilidades.

Ao final deste laboratório, você estará familiarizado com o lançamento do Metasploit, a busca por módulos, a configuração de opções de módulos e a execução de um scanner para coletar informações sobre um sistema alvo.

Procurar o módulo auxiliar smb_version

Nesta etapa, iniciaremos o console do Metasploit Framework e procuraremos o módulo apropriado para realizar a varredura da versão do SMB. O msfconsole é a interface principal para interagir com o Metasploit.

Primeiro, abra um terminal e inicie o console do Metasploit executando o seguinte comando. Pode levar um momento para inicializar.

msfconsole -q

O sinalizador -q torna o banner de inicialização silencioso. Uma vez carregado, você verá o prompt do Metasploit, que se parece com msf6 >.

Agora, vamos encontrar o módulo de varredura da versão do SMB. Podemos usar o comando search para procurar módulos relacionados a smb_version.

search smb_version

Você verá uma lista de módulos correspondentes. O que nos interessa é um scanner auxiliar. A saída deve ser semelhante a esta:

Matching Modules
================

   ##  Name                                 Disclosure Date  Rank    Check  Description
   -  ----                                 ---------------  ----    -----  -----------
   0  auxiliary/scanner/smb/smb_version                     normal  No     SMB Version Detection
   1  exploit/windows/smb/smb_doublepulsar_eternalblue      2017-04-14  extraordinary Yes    SMBv1/SMBv2 DoublePulsar/EternalBlue Unauthenticated RCE

Da saída, podemos ver que auxiliary/scanner/smb/smb_version é o módulo que precisamos.

Selecionar o módulo smb_version

Nesta etapa, você selecionará o módulo que encontramos na etapa anterior. Após identificar o módulo correto, você precisa carregá-lo no contexto do framework usando o comando use.

No seu prompt msfconsole, digite o seguinte comando para selecionar o scanner smb_version:

use auxiliary/scanner/smb/smb_version

Você notará que seu prompt muda para refletir o módulo atualmente carregado:

msf6 auxiliary(scanner/smb/smb_version) >

Isso indica que o módulo está agora ativo. Para ver quais opções podemos configurar para este módulo, use o comando show options:

show options

Isso exibirá uma tabela de parâmetros que você pode definir para o módulo.

Module options (auxiliary/scanner/smb/smb_version):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   RHOSTS                    yes       The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
   THREADS  1                yes       The number of concurrent threads (max one per host)

Preste muita atenção às opções RHOSTS e THREADS, pois as configuraremos nas próximas etapas. A coluna Required mostra que RHOSTS deve ser definido antes que possamos executar o scanner.

Definir a opção RHOSTS para o intervalo de IPs do alvo

Nesta etapa, configuraremos o alvo para nossa varredura. A opção RHOSTS (Remote Hosts) informa ao Metasploit qual(is) máquina(s) escanear. Para este laboratório, instalamos um servidor Samba na máquina local para servir como nosso alvo. Portanto, definiremos RHOSTS para o endereço IP de loopback, 127.0.0.1.

Use o comando set para atribuir um valor a RHOSTS:

set RHOSTS 127.0.0.1

O Metasploit confirmará a alteração:

RHOSTS => 127.0.0.1

Você pode verificar se a opção foi definida corretamente executando show options novamente. Você verá que 127.0.0.1 agora está listado como o Current Setting para RHOSTS. Este é um passo obrigatório, pois o scanner precisa saber seu alvo.

Definir a opção THREADS para uma varredura mais rápida

Nesta etapa, ajustaremos a opção THREADS. Esta opção controla quantos threads de varredura concorrentes o Metasploit usará. Aumentar o número de threads pode acelerar significativamente a varredura quando você está visando um grande número de hosts.

Embora a varredura de um único host (127.0.0.1) não veja um benefício de desempenho com múltiplos threads, é uma boa prática aprender como configurar esta opção. Vamos definir o número de threads para 50.

Use o comando set novamente para alterar o valor de THREADS:

set THREADS 50

O Metasploit confirmará a configuração:

THREADS => 50

Agora o scanner está configurado para usar até 50 threads, o que seria muito eficaz para escanear um intervalo de rede como 192.168.1.0/24.

Executar o scanner e analisar a saída

Nesta etapa, com todas as opções configuradas, estamos prontos para executar o scanner. O comando run (ou seu alias, exploit) iniciará o módulo contra o alvo especificado.

No seu prompt do msfconsole, execute o scanner:

run

O módulo tentará agora conectar-se à porta 445 em 127.0.0.1 e determinar a versão do SMB. A saída será semelhante à seguinte:

[*] 127.0.0.1:445     - Sending SMBv1 request
[+] 127.0.0.1:445     - Host is running Samba 4.15.13-Ubuntu (Samba 4.15.13-Ubuntu)
[*] 127.0.0.1:445     - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

Vamos analisar a saída:

  • O símbolo [+] indica um resultado bem-sucedido.
  • A linha Host is running Samba 4.15.13-Ubuntu nos informa a versão exata do software do servidor SMB. Esta informação é extremamente valiosa para um testador de penetração, que agora pode procurar por vulnerabilidades específicas para esta versão.
  • As linhas finais confirmam que a varredura foi concluída.

Você enumerou com sucesso a versão do SMB no alvo. Para sair do console do Metasploit, basta digitar exit.

exit

Resumo

Neste laboratório, você utilizou com sucesso um scanner auxiliar do Metasploit para realizar a enumeração SMB. Você aprendeu o fluxo de trabalho fundamental para usar módulos dentro do Metasploit Framework.

Você praticou as seguintes habilidades-chave:

  • Iniciar o console do Metasploit (msfconsole).
  • Pesquisar módulos com o comando search.
  • Selecionar e carregar um módulo com o comando use.
  • Visualizar e configurar opções de módulo como RHOSTS e THREADS com show options e set.
  • Executar um módulo com o comando run.
  • Analisar a saída para coletar informações críticas sobre um alvo.

Este processo de coleta de informações é um elemento fundamental de qualquer avaliação de segurança ou teste de penetração. Parabéns por completar o laboratório!