Usar un escáner auxiliar para la enumeración de SMB en Metasploit

Kali LinuxBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderá a realizar la enumeración de Server Message Block (SMB) utilizando Metasploit Framework. SMB es un protocolo de red utilizado para proporcionar acceso compartido a archivos, impresoras y puertos serie entre nodos en una red. Enumerar la versión de SMB es un primer paso crucial en las pruebas de penetración, ya que ayuda a identificar el software y la versión específicos que se ejecutan en un objetivo, lo que luego se puede cotejar con vulnerabilidades conocidas.

Utilizaremos uno de los módulos de escaneo auxiliar de Metasploit, específicamente auxiliary/scanner/smb/smb_version, para escanear un objetivo y determinar su versión de SMB. Metasploit es un potente framework de pruebas de penetración que facilita la búsqueda, explotación y validación de vulnerabilidades.

Al final de este laboratorio, estará familiarizado con el lanzamiento de Metasploit, la búsqueda de módulos, la configuración de opciones de módulos y la ejecución de un escáner para recopilar información sobre un sistema objetivo.

Buscar el módulo auxiliar smb_version

En este paso, iniciaremos la consola de Metasploit Framework y buscaremos el módulo apropiado para realizar el escaneo de la versión de SMB. msfconsole es la interfaz principal para interactuar con Metasploit.

Primero, abra una terminal e inicie la consola de Metasploit ejecutando el siguiente comando. Puede tardar un momento en inicializarse.

msfconsole -q

La bandera -q hace que el banner de inicio sea silencioso. Una vez cargado, verá el prompt de Metasploit, que se ve así: msf6 >.

Ahora, busquemos el módulo de escaneo de versión de SMB. Podemos usar el comando search para buscar módulos relacionados con smb_version.

search smb_version

Verá una lista de módulos coincidentes. El que nos interesa es un escáner auxiliar. La salida debería ser similar 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

De la salida, podemos ver que auxiliary/scanner/smb/smb_version es el módulo que necesitamos.

Seleccionar el módulo smb_version

En este paso, seleccionará el módulo que encontró en el paso anterior. Después de identificar el módulo correcto, debe cargarlo en el contexto del framework utilizando el comando use.

En su prompt de msfconsole, escriba el siguiente comando para seleccionar el escáner smb_version:

use auxiliary/scanner/smb/smb_version

Notará que su prompt cambia para reflejar el módulo actualmente cargado:

msf6 auxiliary(scanner/smb/smb_version) >

Esto indica que el módulo está ahora activo. Para ver qué opciones podemos configurar para este módulo, use el comando show options:

show options

Esto mostrará una tabla de parámetros que puede configurar para el 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 mucha atención a las opciones RHOSTS y THREADS, ya que las configuraremos en los siguientes pasos. La columna Required muestra que RHOSTS debe establecerse antes de que podamos ejecutar el escáner.

Establecer la opción RHOSTS al rango de IP del objetivo

En este paso, configuraremos el objetivo para nuestro escaneo. La opción RHOSTS (Remote Hosts) le indica a Metasploit qué máquina(s) escanear. Para este laboratorio, hemos instalado un servidor Samba en la máquina local para que sirva como nuestro objetivo. Por lo tanto, estableceremos RHOSTS a la dirección IP de loopback, 127.0.0.1.

Use el comando set para asignar un valor a RHOSTS:

set RHOSTS 127.0.0.1

Metasploit confirmará el cambio:

RHOSTS => 127.0.0.1

Puede verificar que la opción se ha establecido correctamente ejecutando show options nuevamente. Verá que 127.0.0.1 ahora aparece como el Current Setting para RHOSTS. Este es un paso obligatorio, ya que el escáner necesita conocer su objetivo.

Establecer la opción THREADS para un escaneo más rápido

En este paso, ajustaremos la opción THREADS. Esta opción controla cuántos hilos de escaneo concurrentes utilizará Metasploit. Aumentar el número de hilos puede acelerar significativamente el escaneo cuando se apunta a un gran número de hosts.

Aunque escanear un solo host (127.0.0.1) no verá un beneficio de rendimiento con múltiples hilos, es una buena práctica aprender a configurar esta opción. Establezcamos el número de hilos en 50.

Use el comando set nuevamente para cambiar el valor de THREADS:

set THREADS 50

Metasploit confirmará la configuración:

THREADS => 50

Ahora el escáner está configurado para usar hasta 50 hilos, lo que sería muy efectivo para escanear un rango de red como 192.168.1.0/24.

Ejecutar el escáner y analizar la salida

En este paso, con todas las opciones configuradas, estamos listos para ejecutar el escáner. El comando run (o su alias, exploit) iniciará el módulo contra el objetivo especificado.

En su prompt de msfconsole, ejecute el escáner:

run

El módulo intentará ahora conectarse al puerto 445 en 127.0.0.1 y determinar la versión de SMB. La salida se verá similar a la siguiente:

[*] 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

Analicemos la salida:

  • El símbolo [+] indica un resultado exitoso.
  • La línea Host is running Samba 4.15.13-Ubuntu nos dice la versión exacta del software del servidor SMB. Esta información es extremadamente valiosa para un pentester, quien ahora puede buscar vulnerabilidades específicas para esta versión.
  • Las líneas finales confirman que el escaneo está completo.

Ha enumerado con éxito la versión de SMB en el objetivo. Para salir de la consola de Metasploit, simplemente escriba exit.

exit

Resumen

En este laboratorio, ha utilizado con éxito un escáner auxiliar de Metasploit para realizar la enumeración de SMB. Ha aprendido el flujo de trabajo fundamental para usar módulos dentro del Metasploit Framework.

Ha practicado las siguientes habilidades clave:

  • Lanzar la consola de Metasploit (msfconsole).
  • Buscar módulos con el comando search.
  • Seleccionar y cargar un módulo con el comando use.
  • Ver y configurar opciones de módulos como RHOSTS y THREADS con show options y set.
  • Ejecutar un módulo con el comando run.
  • Analizar la salida para recopilar información crítica sobre un objetivo.

Este proceso de recopilación de información es un elemento fundamental de cualquier evaluación de seguridad o prueba de penetración. ¡Felicitaciones por completar el laboratorio!