Tutorial Owasp Zap – Revisión completa de esta Herramienta.

Este tutorial explica qué es OWASP ZAP, cómo funciona, cómo instalar y configurar ZAP Proxy. También incluye demostración de autenticación ZAP y gestión de usuarios:

¿Por qué utilizar ZAP para pruebas de penetración?

Para desarrollar una aplicación web segura, es necesario saber cómo serán atacados. Aquí viene el requisito de seguridad de aplicaciones web o pruebas de penetración.

Por motivos de seguridad, las empresas utilizan herramientas pagas, pero OWASP ZAP es una excelente alternativa de código abierto que facilita las pruebas de penetración para los probadores.

Lo que vas a aprender:

¿Qué es OWASP ZAP?

Las pruebas de penetración ayudan a encontrar vulnerabilidades antes de que lo haga un atacante. OSWAP ZAP es una herramienta gratuita de código abierto y se utiliza para realizar pruebas de penetración. El objetivo principal de Zap es permitir pruebas de penetración fáciles para encontrar las vulnerabilidades en las aplicaciones web.

Ventajas de ZAP:

  • Zap proporciona multiplataforma, es decir, funciona en todos los sistemas operativos (Linux, Mac, Windows)
  • Zap es reutilizable
  • Puede generar informes
  • Ideal para principiantes
  • Herramienta gratuita

¿Cómo funciona ZAP?

ZAP crea un servidor proxy y hace que el tráfico del sitio web pase a través del servidor. El uso de escáneres automáticos en ZAP ayuda a interceptar las vulnerabilidades en el sitio web.

Consulte este diagrama de flujo para una mejor comprensión:

 

Terminologías ZAP

Antes de configurar la instalación de ZAP, comprendamos algunas terminologías de ZAP:

# 1) Sesión : Sesión simplemente significa navegar por el sitio web para identificar el área de ataque. Para ello, se puede utilizar cualquier navegador como Mozilla Firefox cambiando su configuración de proxy. O bien, podemos guardar la sesión zap como .session y se puede reutilizar.

# 2) Contexto: Significa una aplicación web o un conjunto de URL juntas. El contexto creado en el ZAP atacará al especificado e ignorará el resto, para evitar demasiados datos.

# 3) Tipos de ataques ZAP: Puede generar un informe de vulnerabilidad utilizando diferentes tipos de ataques ZAP presionando y escaneando la URL.

Escaneo activo: Podemos realizar un escaneo activo usando Zap de muchas maneras. La primera opción es la Inicio rápido, que está presente en la página de bienvenida de la herramienta ZAP. Consulte la siguiente captura de pantalla:

Inicio rápido 1

La captura de pantalla anterior muestra la forma más rápida de comenzar con ZAP. Ingrese la URL en la pestaña Inicio rápido, presione el botón Atacar y luego comenzará el progreso.

Inicio rápido ejecuta la araña en la URL especificada y luego ejecuta el escáner activo. Una araña se arrastra por todas las páginas a partir de la URL especificada. Para ser más precisos, la página de inicio rápido es como ‘apuntar y disparar’.

Inicio rápido 2

Aquí, al establecer la URL de destino, comienza el ataque. Puede ver el estado de Progreso como spidering de la URL para descubrir contenido. Podemos detener manualmente el ataque si está tardando demasiado.

Otra opción para el Escaneo activo es que podemos acceder a la URL en el navegador proxy ZAP ya que Zap la detectará automáticamente. Al hacer clic derecho en la URL -> Se iniciará el análisis activo. Una vez que se complete el rastreo, se iniciará el análisis activo.

El progreso del ataque se mostrará en la pestaña Análisis activo. y la pestaña Spider mostrará la URL de la lista con escenarios de ataque. Una vez que se completa el análisis activo, los resultados se mostrarán en la pestaña Alertas.

Por favor, consulte la siguiente captura de pantalla de Escaneo activo 1 y Exploración activa 2 para una comprensión clara.

Escaneo activo 1

Escaneo activo 2

# 4) Araña: Spider identifica la URL en el sitio web, busca hipervínculos y agrégalo a la lista.

# 5) Araña Ajax: En el caso de que nuestra aplicación haga un uso intensivo de JavaScript, opte por AJAX spider para explorar la aplicación.Voy a explicar el Araña Ajax en detalle en mi próximo tutorial.

Gafas De Realidad Virtual Para Xbox 360

# 6) Alertas : Las vulnerabilidades del sitio web se marcan como alertas altas, medias y bajas.

Instalación ZAP

Ahora, entenderemos la configuración de instalación de ZAP. Primero, descargue el Instalar Zap . Como estoy usando Windows 10, he descargado el instalador de Windows de 64 bits en consecuencia.

Requisitos previos para la instalación de Zap: Se requiere Java 7. Si no tiene Java instalado en su sistema, consígalo primero. Entonces podemos lanzar ZAP.

 

Configurar el navegador ZAP

Primero, cierre todas las sesiones activas de Firefox.

Ejecute la herramienta Zap >> vaya al menú Herramientas >> seleccione opciones >> seleccione Proxy local >> allí podemos ver la dirección como localhost (127.0.0.1) y el puerto como 8080, podemos cambiar a otro puerto si ya está usando, digamos que estoy cambiando a 8099. Por favor, consulte la captura de pantalla siguiente:

Proxy local en Zap 1

Ahora, abra Mozilla Firefox >> seleccione opciones >> pestaña avanzada >> en eso seleccione Red >> Configuración de conexión >> seleccione la opción Configuración manual del proxy. Utilice el mismo puerto que en la herramienta Zap. He cambiado manualmente a 8099 en ZAP y he usado lo mismo en el navegador Firefox. Verifique la siguiente captura de pantalla de la configuración de Firefox configurada como un navegador proxy.

Configuración 1 del proxy de Firefox

Intente conectar su aplicación usando su navegador. Aquí, he intentado conectar Facebook y dice que su conexión no es segura. Por lo tanto, debe agregar una excepción y luego confirmar la Excepción de seguridad para navegar a la página de Facebook. Consulte las capturas de pantalla a continuación:

 

Acceder a la página web – navegador proxy 1

Acceder a la página web – navegador proxy 2

Acceder a la página web – navegador proxy 3

Al mismo tiempo, en la pestaña de sitios de Zap, verifique la nueva sesión creada para la página de Facebook. Cuando haya conectado correctamente su aplicación, podrá ver más líneas en la pestaña de historial de ZAP.

Zap normalmente proporciona una funcionalidad adicional a la que se puede acceder mediante menús contextuales como,

Haga clic con el botón derecho en >> HTML >> escaneo activo, luego zap realizará un escaneo activo y mostrará los resultados.

Si no puede conectar su aplicación mediante el navegador, vuelva a comprobar la configuración del proxy. Deberá comprobar la configuración del navegador y del proxy ZAP.

Generación de informes en ZAP

Una vez que se realiza el escaneo activo, podemos generar informes. Para eso, haga clic en OWASP ZAP >> Informe >> generar informes HTML >> ruta de archivo proporcionada >> informe de escaneo exportado. Necesitamos examinar los informes para identificar todas las posibles amenazas y corregirlas.

Autenticación ZAP, sesión y gestión de usuarios

Pasemos a otra función de Zap, que se ocupa de la autenticación, la gestión de sesiones y de usuarios. Por favor, hágamelo saber cualquier consulta que le venga a la mente relacionada con esto como comentarios.

Conceptos básicos

  • Contexto: Representa una aplicación web o un conjunto de URL juntas. Para un contexto determinado, se agregan nuevas pestañas para personalizar y configurar el proceso de autenticación y administración de sesiones. Las opciones están disponibles en el diálogo de propiedades de la sesión, es decir, diálogo de propiedades de la sesión -> Contexto -> puede usar la opción predeterminada o agregar un nuevo nombre de contexto.
  • Método de gestión de sesiones:Hay 2 tipos de métodos de gestión de sesiones. Principalmente, se utiliza la gestión de sesiones basada en cookies, asociada con el contexto.
  • Método de autentificación:Existen principalmente 3 tipos de métodos de autenticación utilizados por ZAP:
    • Método de autenticación basado en formularios
    • Autenticación manual
    • Autenticación HTTP
  • Gestión de usuarios:Una vez que se ha configurado el esquema de autenticación, se puede definir un conjunto de usuarios para cada contexto. Estos usuarios se utilizan para diversas acciones ( Por ejemplo, Araña URL / contexto como Usuario Y, envíe todas las solicitudes como Usuario X). Próximamente, se proporcionarán más acciones que hagan uso de los usuarios.

Se implementa una extensión de ‘usuario forzado’ para reemplazar la extensión de autenticación anterior que estaba realizando una nueva autenticación. El modo ‘Usuario forzado’ ahora está disponible a través de la barra de herramientas (el mismo icono que la extensión de autenticación anterior).

Después de configurar un usuario como ‘Usuario forzado’ para un contexto dado o cuando está habilitado, cada solicitud enviada a través de ZAP se modifica automáticamente para que se envíe a este usuario. Este modo también realiza la reautenticación automáticamente (especialmente junto con la autenticación basada en formularios) si hay una falta de autenticación, se detecta ‘desconectado’.

Veamos una demostración:

Paso 1:

Primero, inicie ZAP y acceda a la URL en el navegador proxy. Aquí, he tomado la URL de muestra como https://tmf-uat.iptquote.com/login.php . Haga clic en Avanzado -> agregar excepción -> confirme la excepción de seguridad como en las páginas 6 y 7. Luego, se muestra la página de destino. Al mismo tiempo, ZAP carga automáticamente la página web en Sitios como una nueva sesión. Consulte la siguiente imagen.

Paso 2:

Inclúyelo en un contexto. Esto se puede hacer incluyéndolo en un contexto predeterminado o agregándolo como un nuevo contexto. Consulte la siguiente imagen.

Paso 3:

Ahora, el siguiente es el método de autenticación. Puede ver la autenticación en el diálogo de propiedades de esa sesión. Aquí estamos usando el método de autenticación basado en formularios.

Debería ser como authMethodParams como “ login Url = https: //tmf-uat.iptquote.com/login.php&loginRequestData=username=superadmin&password=primo868&proceed=login ”

En nuestro ejemplo, necesitamos establecer el método de autenticación como basado en formulario. Para esto, seleccione la URL de destino, el campo de datos de publicación de solicitud de inicio de sesión se rellena previamente, después de eso, cambie el parámetro como nombre de usuario y contraseña -> haga clic en Aceptar .

Paso 4:

Ahora, configure indicadores que le dirán a ZAP cuando esté autenticado.

Indicadores de inicio y cierre de sesión:

  • Solo uno es necesario
  • Podemos establecer patrones Regex que coincidan en el mensaje de respuesta, es necesario establecer el indicador de inicio o cierre de sesión.
  • Identifique cuándo se autentica una respuesta o cuándo no.
  • Ejemplo de indicador de inicio de sesión:Qhttp: // ejemplo / logout E o Bienvenido usuario. *
  • Ejemplo del indicador Desconectado:jsp o algo así.

Aquí, en nuestra aplicación de demostración, he accedido a la URL en un navegador proxy. Inicie sesión en la aplicación con una credencial válida, nombre de usuario como superadmin y contraseña como primo868. Navegue por las páginas internas y haga clic en cerrar sesión

Puede ver en la captura de pantalla del Paso 3, Zap toma los datos de la solicitud de inicio de sesión como uno utilizado para el inicio de sesión de la aplicación TMF [Inicio de sesión de la aplicación de demostración].

Para Que Se Usa La Programación En C ++

Marcar el patrón Regex registrado de la Respuesta de ZAP como Respuesta -> respuesta desconectada -> marcarlo como registrado en el indicador. Referirse a la captura de pantalla a continuación

Paso 5:

Podemos guardar el indicador y verificar si el cuadro de diálogo de propiedades de la sesión se agrega con el indicador de inicio de sesión o no. Consulte la captura de pantalla a continuación:

Paso 6:

Necesitamos agregar usuarios, usuarios válidos e inválidos. Aplica ataques de araña a ambos y analiza los resultados.

Usuario válido:

Usuario invalido:

Paso 7:

De forma predeterminada, configure la administración de sesiones como un método basado en cookies.

Paso 8:

El ataque de URL de araña se aplica a usuarios válidos y no válidos y revisa los resultados / genera informes.

Vista 1 de ataque de araña de usuario no válido:

Aquí, se aplica un ataque de URL de araña al usuario no válido. En la interfaz ZAP, podemos ver Get: login.php (error _message), lo que significa que la autenticación ha fallado. Además, no pasa las URL a través de páginas TMF internas.

Paso 9:

Para aplicar un ataque de URL de araña para el usuario válido, vaya a la lista de sitios -> ataque -> URL de araña -> usuario válido existente -> aquí está habilitado de forma predeterminada -> iniciar escaneo.

Analizar resultados: como es un usuario autenticado válido, navegará por todas las páginas internas y mostrará el estado de autenticación como exitoso. Consulte la siguiente captura de pantalla.

Usuario válido

Ejemplo de informe ZAP Html

Una vez que se completa un escaneo activo, podemos generar un informe HTML para el mismo. Para ello, seleccione Informe -> Generar informe Html.  Aquí se generarán informes de alertas altas, medias y bajas.

Alertas

Conclusión

En este tutorial, hemos visto qué es ZAP, cómo funciona ZAP, instalación y configuración del proxy ZAP. Diferentes tipos de procesos de escaneo activo, una demostración de autenticación ZAP, administración de usuarios y sesiones, y terminologías básicas. En mi próximo tutorial, explicaré sobre el ataque de araña Ajax, el uso de fuzzers y los sitios de navegación forzada.

Y si ha utilizado el proxy de ataque Zed y tiene algunos consejos interesantes para compartir, comparta los comentarios a continuación.

Referencias:

_________________________________________________________________________
Tomado de: myservername
Se respetan Derechos de Autor.