Concepto clave
Un pentesting completo es una evaluación de seguridad autorizada que simula un ataque real contra un sistema, red o aplicación para identificar vulnerabilidades antes que los atacantes maliciosos. Imagina que eres un cerrajero profesional contratado para probar la seguridad de una casa: tu trabajo es intentar abrir todas las puertas y ventanas usando diferentes métodos, documentando cada punto débil encontrado, pero sin causar daño real. En ciberseguridad, este proceso sigue metodologías estructuradas como PTES (Penetration Testing Execution Standard) o OWASP, que garantizan cobertura completa y resultados reproducibles.
El objetivo final no es solo encontrar vulnerabilidades, sino producir un informe de seguridad profesional que los clientes puedan usar para priorizar y corregir problemas. Este informe debe ser claro, técnico pero comprensible, y sobre todo accionable. Piensa en un médico que no solo diagnostica una enfermedad, sino que explica el tratamiento paso a paso: tu informe es esa receta para mejorar la seguridad.
Cómo funciona en la práctica
Un pentesting completo sigue cinco fases principales, que aplicaremos en nuestro ejercicio:
- Reconocimiento: Recopilar información pública sobre el objetivo (ej. dominios, direcciones IP, empleados).
- Escaneo: Usar herramientas como Nmap para descubrir puertos abiertos, servicios y sistemas.
- Ganar acceso: Explotar vulnerabilidades identificadas para entrar al sistema.
- Mantener acceso: Establecer persistencia para demostrar el impacto.
- Análisis y reporte: Documentar hallazgos y generar recomendaciones.
Ejemplo paso a paso para un servidor web:
1. Reconocimiento: whois ejemplo.com
2. Escaneo: nmap -sV -O ejemplo.com
3. Análisis de vulnerabilidades: nikto -h ejemplo.com
4. Explotación: usar Metasploit para una vulnerabilidad conocida
5. Documentación: capturar pantallas y registrar comandosCaso de estudio
Una pequeña empresa de comercio electrónico contrata un pentesting para su sitio web. El pentester:
- En fase de reconocimiento, encuentra que el dominio usa un CMS WordPress desactualizado.
- En escaneo, descubre el puerto 80 abierto con WordPress 5.0.
- Investiga y encuentra que WordPress 5.0 tiene una vulnerabilidad crítica de inyección SQL.
- Usa sqlmap para explotar la vulnerabilidad y extraer datos de la base de datos.
- Documenta todo en un informe con:
Severidad: Crítica
Vulnerabilidad: Inyección SQL en WordPress 5.0
Impacto: Acceso a información de clientes
Recomendación: Actualizar a WordPress 5.1+ inmediatamente
La empresa actualiza su sistema en 24 horas, evitando un posible robo de datos.
Errores comunes
1. Saltarse la fase de reconocimiento: Muchos principiantes van directo al escaneo, perdiendo información valiosa como subdominios o tecnologías ocultas. Solución: Dedicar al menos 20% del tiempo a investigación pasiva.
2. No documentar durante el proceso: Esperar al final para tomar notas lleva a olvidar detalles cruciales. Solución: Usar herramientas como KeepNote o Dradis desde el inicio.
3. Informes demasiado técnicos: Escribir para otros pentesters en lugar de para el cliente. Solución: Incluir resumen ejecutivo y clasificar vulnerabilidades por riesgo empresarial.
4. Probar en sistemas sin autorización: El error más grave legalmente. Solución: Siempre tener un acuerdo por escrito (scope) antes de comenzar.
Checklist de dominio
- Puedo ejecutar las cinco fases de pentesting en orden lógico.
- Sé usar al menos tres herramientas de Kali Linux (Nmap, Nikto, Metasploit).
- Documento cada paso con capturas de pantalla y comandos exactos.
- Clasifico vulnerabilidades usando CVSS (Common Vulnerability Scoring System).
- Genero un informe con secciones claras: resumen, metodología, hallazgos, recomendaciones.
- Incluyo evidencia reproducible para cada hallazgo.
- Entrego el informe en formato PDF profesional.
Pentesting completo a un servidor web de práctica
Objetivo
Realizar un pentesting completo al servidor Metasploitable2 (máquina virtual de práctica) y generar un informe profesional.
Preparación
- Descarga e instala Metasploitable2 desde SourceForge.
- Configúra una red NAT entre tu Kali Linux y Metasploitable2.
- Verifica la conectividad con
ping [IP-de-Metasploitable2].
Pasos del pentesting
- Reconocimiento: Usa
whoissi hay dominio, o identifica la IP. Anota todo en tu herramienta de documentación. - Escaneo: Ejecuta
nmap -sV -sC -O [IP]para descubrir servicios y sistema operativo. - Análisis de vulnerabilidades: Para cada servicio encontrado (ej. puerto 80 web), usa herramientas específicas:
- Web:
nikto -h http://[IP] - FTP:
nmap --script ftp-anon [IP]
- Web:
- Explotación: Elige una vulnerabilidad crítica (ej. en WordPress si existe) y explótala con Metasploit:
msfconsole
search [vulnerabilidad]
use [exploit]
set RHOSTS [IP]
exploit - Post-explotación: Si logras acceso, prueba comandos básicos como
whoamioipconfig. - Documentación: Toma capturas de cada paso, guarda los comandos exactos.
Generación del informe
Crea un documento con:
- Portada con título y fecha
- Resumen ejecutivo (1 párrafo)
- Metodología usada
- Tabla de hallazgos con: Vulnerabilidad, Severidad (Alta/Media/Baja), Descripción, Evidencia
- Recomendaciones específicas
- Anexos con capturas completas
Entrega en PDF.
Pistas- Metasploitable2 tiene credenciales por defecto en muchos servicios, prueba combinaciones comunes como admin/admin.
- Si no encuentras vulnerabilidades en el puerto 80, revisa otros puertos como 21 (FTP) o 22 (SSH).
- Usa la herramienta 'searchsploit' en Kali para buscar exploits conocidos para los servicios encontrados.
Evalua tu comprension
Completa el quiz interactivo de arriba para ganar XP.