Herramienta Proxy de ataques Zed OWASP

Interfaz de OWASP ZAP
Interfaz de OWASP Zed Attack Proxy (ZAP) para pruebas de seguridad web

Esta guía ofrece una visión general de los componentes automáticos y manuales de OWASP Zed Attack Proxy (ZAP), recomendados para evaluar los riesgos del OWASP Top Ten Project.

Para obtener más información sobre los riesgos del OWASP Top Ten 2017, consulta ZAPping the OWASP Top 10.

¿Qué es OWASP?

OWASP (Open Worldwide Application Security Project) es una organización dedicada a mejorar la seguridad de las aplicaciones web mediante recursos, herramientas y estándares abiertos. Su proyecto más conocido, el OWASP Top Ten, identifica los riesgos de seguridad más críticos en aplicaciones web.

Zed Attack Proxy (ZAP): Una herramienta esencial

Logo de OWASP ZAP por Checkmarx
ZAP, desarrollado por Checkmarx, es una herramienta líder para pruebas de seguridad

Conceptos básicos de pruebas de seguridad

Las pruebas de seguridad de software evalúan un sistema para identificar riesgos y vulnerabilidades en su código y datos. En este contexto, distinguimos entre:

  • Evaluación de vulnerabilidades: Escaneo y análisis de problemas de seguridad sin intentar explotarlos.
  • Pruebas de penetración (Pentesting): Simulación de ataques maliciosos para explotar vulnerabilidades.
  • Pruebas de tiempo de ejecución: Análisis desde la perspectiva de un usuario final.
  • Revisión de código: Inspección detallada del código fuente para detectar fallos de seguridad.

La evaluación de riesgos no se considera una prueba, sino un análisis de la gravedad de los riesgos y las medidas de mitigación necesarias.

Pruebas de penetración (Pentesting)

El pentesting simula ataques de un atacante malicioso para identificar y explotar vulnerabilidades, como accesos no autorizados o denegaciones de servicio. Este enfoque reduce falsos positivos, pero puede ser más lento que los escaneos automáticos.

El pentesting también verifica mecanismos de defensa, planes de respuesta y cumplimiento de políticas de seguridad, siendo clave en entornos de integración continua para detectar nuevas vulnerabilidades o regresiones.

Etapas del pentesting

  1. Exploración: Identificar software, puntos finales, parches y contenido oculto.
  2. Ataque: Explotar vulnerabilidades conocidas o sospechosas.
  3. Informe: Documentar vulnerabilidades, métodos de explotación y su gravedad.

Introducción a ZAP

Zed Attack Proxy (ZAP), desarrollado por Checkmarx, es una herramienta gratuita y de código abierto diseñada para pruebas de penetración en aplicaciones web. Funciona como un proxy man-in-the-middle, interceptando y analizando el tráfico entre el navegador y la aplicación web, con capacidad para modificar paquetes si es necesario.

Diagrama de ZAP sin proxy
Configuración de ZAP como proxy sin red adicional

ZAP es compatible con Windows, Linux, macOS y Docker, y puede configurarse para usar un proxy corporativo si es necesario.

Diagrama de ZAP con proxy de red
Configuración de ZAP con un proxy de red adicional

ZAP es ideal para desarrolladores, principiantes en seguridad y expertos en pentesting, con complementos gratuitos disponibles en el ZAP Marketplace.

Instalación y configuración de ZAP

ZAP cuenta con instaladores para Windows, Linux y macOS, así como imágenes de Docker. Descarga el instalador desde la página oficial de descargas.

Requisitos: ZAP requiere Java 11+ (incluido en el instalador de macOS, pero debe instalarse por separado en Windows y Linux). Las imágenes de Docker no requieren instalación de Java.

Instrucciones de instalación

  1. Descarga e instala ZAP desde la página de descargas.
  2. Acepta los términos de la licencia y completa la instalación.
  3. En macOS, si aparece un mensaje de “desarrollador no verificado”, ve a Preferencias del Sistema > Seguridad y Privacidad y selecciona Abrir de todos modos.
  4. Al iniciar ZAP, elige si deseas persistir la sesión. Por ahora, selecciona No, no quiero persistir esta sesión y haz clic en Empezar.
Configuración de sesión en ZAP
Opciones para persistir sesiones en ZAP
Explora cursos sobre seguridad web en Tsociety

Interfaz de usuario de ZAP Desktop

La interfaz de ZAP Desktop incluye:

  1. Barra de menú: Acceso a herramientas automáticas y manuales.
  2. Barra de herramientas: Botones para funciones comunes.
  3. Ventana de árbol: Muestra los sitios y scripts explorados.
  4. Ventana de espacio de trabajo: Permite editar solicitudes, respuestas y scripts.
  5. Ventana de información: Detalles de herramientas y resultados.
  6. Pie de página: Resumen de alertas y estado de herramientas.

Accede a la ayuda contextual mediante Ayuda en la barra de menú o presionando F1. Consulta la Guía del usuario de ZAP para más detalles.

Ejecutar un escaneo automatizado

La pestaña Inicio rápido es ideal para comenzar con ZAP. Sigue estos pasos:

  1. Abre ZAP y selecciona la pestaña Inicio rápido.
  2. Haz clic en Escaneo automatizado.
  3. Ingresa la URL completa de la aplicación web en el campo URL para atacar.
  4. Haz clic en Ataque.
Escaneo automatizado en ZAP
Configuración de un escaneo automatizado en ZAP

ZAP rastreará la aplicación con su araña (tradicional o AJAX) y escaneará pasivamente cada página. Luego, realizará un escaneo activo para atacar vulnerabilidades conocidas.

Advertencia: El escaneo activo es un ataque real y puede dañar la aplicación. Úsalo solo con permiso explícito. Para mayor seguridad, activa el Modo Seguro desde la barra de herramientas.

Exploración manual

El escaneo automático es útil, pero la exploración manual permite descubrir páginas protegidas por autenticación o formularios complejos. Para explorar manualmente:

  1. Abre la pestaña Inicio rápido.
  2. Haz clic en Explorar manual.
  3. Ingresa la URL de la aplicación web.
  4. Selecciona un navegador y haz clic en Iniciar Navegador.
Exploración manual en ZAP
Configuración de exploración manual en ZAP

Heads Up Display (HUD)

El Heads Up Display (HUD) es una interfaz que integra las funciones de ZAP directamente en el navegador, ideal para principiantes y expertos. Se activa por defecto en la exploración manual y es compatible con navegadores como Firefox y Chrome.

Pantalla de bienvenida del HUD de ZAP
Pantalla de bienvenida del HUD en ZAP

En Firefox, puede ser necesario desactivar la Protección de Seguimiento Mejorada desde el ícono de escudo en la barra de URL para ver el HUD.

Características avanzadas de ZAP

ZAP ofrece funciones avanzadas accesibles a través de pestañas ocultas (activadas con el ícono +) y menús contextuales. Por ejemplo, la pestaña Websockets aparece automáticamente si la aplicación usa esta tecnología.

El ZAP Marketplace ofrece complementos gratuitos para ampliar la funcionalidad, accesibles desde el botón Manage Add-ons.

ZAP Marketplace
Explora complementos en el ZAP Marketplace

Automatización con ZAP

ZAP es ideal para automatización en entornos CI/CD, con soporte para:

Interpretar resultados

ZAP genera un mapa de la aplicación web, registrando solicitudes, respuestas y alertas de posibles vulnerabilidades. Para revisar los resultados:

  1. Ve a la pestaña Sitios en la Ventana de Árbol para explorar las páginas detectadas.
  2. Consulta la pestaña Alertas en la Ventana de Información para ver vulnerabilidades, con detalles en la pestaña Respuesta.
Íconos de alertas en ZAP
Íconos de categorías de riesgo en ZAP

Las alertas se clasifican por nivel de riesgo, visible en el pie de página de ZAP.

Para más información, consulta la Guía del usuario de ZAP o usa el botón Learn More en la pestaña Inicio rápido.

Pantalla Learn More de ZAP
Recursos adicionales en la pestaña Learn More

Compartir este artículo:

error:
1
Escanea el código