Content Available in Spanish Only
This article is currently available only in Spanish. We're working on translations.
Available in: ES • Tip: Use your browser's translation feature or visit the Spanish version
¿Qué es OWASP ZAP?
OWASP ZAP (Zed Attack Proxy) es el escáner de seguridad de aplicaciones web más usado del mundo y el principal proyecto de DAST (Dynamic Application Security Testing) de OWASP. Es completamente open source, gratuito y está mantenido por la comunidad con el respaldo de la Linux Foundation.
ZAP actúa como un proxy HTTP/HTTPS que intercepta el tráfico entre el navegador y la aplicación, permitiendo analizarlo, modificarlo y lanzar ataques automatizados o manuales para detectar vulnerabilidades.
ZAP 2.15+ y el proyecto Crawljax
Modos de uso de ZAP
1. Spider (Rastreador tradicional)
Rastrea la aplicación siguiendo links HTML. Ideal para aplicaciones tradicionales con rendering server-side. Rápido pero no ejecuta JavaScript.
2. Ajax Spider
Usa un navegador real (Chrome/Firefox via Selenium) para rastrear SPAs y aplicaciones con JavaScript pesado. Más lento pero necesario para React/Vue/Angular.
3. Passive Scan
Analiza el tráfico en tiempo real mientras navegas manualmente la aplicación. No envía ninguna petición adicional → completamente seguro en producción. Detecta: cabeceras de seguridad ausentes, cookies sin Secure/HttpOnly, información sensible en respuestas, cache-control incorrecto.
4. Active Scan
Lanza payloads de ataque activos (SQLi, XSS, Path Traversal, etc.). Solo usar en entornos de prueba con permiso explícito. Puede generar alertas en WAF, crear datos de prueba en BD, activar protecciones de rate-limit.
5. Automated Scan (DAST en CI/CD)
Combina spider + passive scan + active scan en un proceso automatizado. Diseñado para integración en pipelines de CI/CD mediante GitHub Actions o la API REST de ZAP.
ZAP en CI/CD — GitHub Actions
Full Scan en staging
Baseline Scan (solo passive scan — seguro en producción)
Configurar reglas — .zap/rules.tsv
ZAP API — automatización avanzada
ZAP expone una API REST completa que permite controlar todas sus funciones programáticamente. Esto permite integraciones más avanzadas que las GitHub Actions: testing de APIs específicas, autenticación compleja, scripts de ataque personalizados.