OWASP Zed Attack Proxy

El Zed Attack Proxy (ZAP) es una herramienta libre escrita en Java proveniente del Proyecto OWASP para realizar, en primera instancia, tests de penetración en aplicaciones web aunque también puede ser usado por desarrolladores en su trabajo diario. Al día de hoy se encuentra en su versión 2.1.0 y necesita Java 7 para ejecutarse, aunque yo lo uso en Debian GNU/Linux bajo OpenJDK 7. Para los que estamos iniciando en el mundo de las seguridad en aplicaciones web, es una excelente herramienta para pulir nuestras habilidades.

Algunas características (por ejemplo Active Scan) del Proxy ZAP no deben ser utilizadas contra sitios que no sean nuestros o que no tengamos previa autorización para ello, ya que se podrían considerar como actividades ilegales

Entre las muchas características de ZAP, les voy comentar las siguientes:

  • Proxy de interceptación: Ideal para los que somos newbies en este campo de la seguridad, configurado de la manera correcta, permite ver todo el tráfico entre el navegador y el servidor web de turno, dejando ver de forma sencilla las cabeceras y cuerpo de los mensajes HTTP sin importar el método usado (HEAD, GET, POST, etc). Además podremos modificar el tráfico HTTP a nuestro antojo en ambas direcciones de la comunicación (entre el servidor web y el navegador).
  • Spider: Es una característica que ayuda a descubrir nuevas URL’s en el sitio auditado. Una de las maneras que realiza esto es analizando el código HTML de la página para descubrir etiquetas <a> y seguir sus atributos href.
  • Forced Browsing: Intenta descubrir directorios y archivos no indexados en el sitio como pueden ser páginas de inicio de sesión. Para lograrlo cuenta por defecto con una serie de diccionarios que utilizará para realizar peticiones al servidor esperando status code de respuesta 200.
  • Active Scan: Genera de manera automatizada diferentes ataques web contro el sitio como CSRF, XSS, Inyección SQL entre otros.
  • Y muchas otras: En realidad son muchas otras características como:  Soporte para web sockets desde las versión 2.0.0, AJAX Spider, Fuzzer, y otras cuantas.

Configuración con Firefox

Podemos configurar el socket por el cual quedará escuchando ZAP si vamos a Tools -> Options -> Local Proxy. En mi caso lo tengo escuchando por el puerto 8018:

Configuración "Local proxy"

Configuración «Local proxy»

Luego abrimos las preferencias de Firefox y vamos a Avanzadas -> Red -> Configuración -> Configuración manual de proxy. Indicamos el socket que previamente configuramos en ZAP:

Configurar proxy en Firefox

Configurar proxy en Firefox

Si todo ha salido bien, estaremos enviando todo nuestro tráfico HTTP hacia ZAP y este se encargará de redirigirlo como lo haría cualquier proxy. A manera de ejemplo ingreso desde el navegador a este blog y observemos qué pasa en ZAP:

Vista general de ZAP

Vista general de ZAP

Podemos ver que se han generado más de 100 mensajes HTTP (la mayoría usando el método GET) para cargar completamente la página. Como vemos en la pestaña Sites no solamente se ha generado tráfico hacía este blog, sino también hacía otra páginas. Una de ellas es Facebook y se genera por el plugin social al pie de la página «Síguenos en Facebook». También hacía Google Analytics lo que indica la presencia de dicha herramienta para el análisis y visualización de estadísticas de este blog por parte de los administradores del sitio.

Podemos también observar detalladamente cada uno de los mensajes HTTP intercambiados, veamos la respuesta que se generó por parte del servidor web de este blog cuando ingresé a la dirección http://desdelinux.net escogiendo su respectiva petición HTTP GET:

Detalle de mensaje HTTP

Detalle de mensaje HTTP

Observamos que se recibió un status code 301, el cual indica una redirección que va dirigida hacia https://blog.desdelinux.net/.

ZAP se convierte en una excelente alternativa completamente libre a BurpSuite para los que nos estamos iniciando en este apasionante mundo de la seguridad web, seguramente pasaremos horas y horas al frente de esta herramienta aprendiendo diferentes técnicas de hacking web, yo llevo unas cuantas. 😛


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   nano dijo

    Eso es algo que e tengo que poner a hacer, mas que todo para probar lo que hago.

    Es bastante interesante

  2.   eliotime3000 dijo

    Esta herramienta se ve mucho más completa que el Microsoft Network Monitor. Se agradece el aporte.

  3.   Carper dijo

    Excelente, muchas gracias por la información y explicación.
    Saludos.

  4.   XaviP dijo

    IMHO, creo que se tendrían que dejar estas herramientas para ámbitos de seguridad, y no publicarlo en un blog de linux. Hay gente que la puede usar de manera irresponsable o inconsciente.

    1.    pablox dijo

      Las herramientas siempre van a ser herramientas de doble filo, ya que son usadas por los buenos y por los malos, lamentablemente eso no se puede evitar. OWASP ZAP es una herramienta reconocida por la comunidad EH en el ámbito de la seguridad web y se usa para auditorías web. Recuerden: «Con un gran poder viene una gran responsabilidad».

      Publiqué dicha entrada porque me encuentro estudiando de manera autodidacta para ofrecer servicios de EH en un futuro y lo creí de interés para los demás lectores. El fin no es que lo usen de manera ilícita ni mucho menos, de ahí la advertencia al inicio del post.

      ¡Saludos!

      PD1 -> :that’ssuspicious: ¿Troll detected? me queda la duda….
      PD2 -> Jjajaja Por favor que esto no se vuelva un flame war de acá para abajo como en otros post.