Laboratorio de Owasp Zap
Contenido
Objetivo
Este laboratorio tiene como objetivo enseñar a los estudiantes a utilizar OWASP ZAP, una herramienta de seguridad que nos permite realizar pruebas de seguridad en aplicaciones web.
Owasp Zap es una herramienta de seguridad que nos permite realizar pruebas de seguridad en aplicaciones web. En este laboratorio vamos a aprender a utilizar Owasp Zap para realizar pruebas de seguridad en una aplicación web.
Introducción
En este laboratorio vamos a aprender a utilizar OWASP ZAP, una herramienta de seguridad que nos permite realizar pruebas de seguridad en aplicaciones web.
Requisitos
Para este laboratorio necesitamos tener instalado OWASP ZAP en nuestra máquina. Puedes descargarlo desde la página oficial de OWASP: https://www.zaproxy.org/
Además, necesitamos tener una aplicación web vulnerable para realizar pruebas de seguridad con OWASP ZAP. En este laboratorio vamos a utilizar una aplicación web vulnerable llamada DVWA (Damn Vulnerable Web Application). Puedes descargar DVWA desde el siguiente enlace: https://github.com/digininja/DVWA
Escenario
Vamos a utilizar una aplicación web vulnerable llamada DVWA (Damn Vulnerable Web Application) para realizar pruebas de seguridad con OWASP ZAP. Puedes descargar DVWA desde el siguiente enlace: https://github.com/digininja/DVWA/
Puede utilizar git para clonar el repositorio de DVWA en su máquina:
git clone https://github.com/digininja/DVWA.git
A continuación necesitamos ejecutar en local el servidor web de DVWA. Para ello, podemos utilizar un servidor web como Apache o Nginx. En este laboratorio vamos a utilizar Docker, por lo que necesitamos tener instalado Docker en nuestra máquina.
En este laboratorio vamos a utilziar DVWA con Docker, para inciciar el laboratorio podemos utilizar el siguiente comando:
docker compose up --build -d
Una vez que el contenedor de DVWA esté en ejecución, podemos acceder a la aplicación web en la dirección http://localhost:4280. La aplicación web de DVWA nos pedirá que iniciemos sesión con un usuario y contraseña. Por defecto, el usuario es admin y la contraseña es password.
Una vez que hayamos iniciado sesión en la aplicación web de DVWA, podemos comenzar a realizar pruebas de seguridad con OWASP ZAP.
Ejercicio 1: Escaneo Ayutomático de la aplicación web de DVWA
En este ejercicio vamos a configurar OWASP ZAP para realizar pruebas de seguridad en la aplicación web de DVWA.
- Abre OWASP ZAP en tu máquina. Puedes abrir OWASP ZAP
- Una vez que OWASP ZAP esté abierto, haz clic en el botón Modo Estandar para cambiar al modo estándar.
- Vamos a realizar un Escaneo Automático de la aplicación web de DVWA. Para ello, haz clic en la pestaña Escaneo y selecciona la opción Escaneo Automático.
- En la ventana de configuración del escaneo automático, selecciona el objetivo de escaneo. En este caso, vamos a escanear la URL de la aplicación web de DVWA. En la sección URL a atacar introduce la URL de la aplicación web de DVWA: http://localhost:4280. Haz clic en el botón Atacar para iniciar el escaneo automático.
- Espera un momento mientras se procesa el escaneo automático. Una vez que el escaneo haya finalizado, puedes ver los resultados del escaneo en la pestaña Alertas. Aquí puedes ver una lista de las vulnerabilidades encontradas en la aplicación web de DVWA.
- Puedes hacer clic en cada alerta para ver más detalles sobre la vulnerabilidad encontrada. Aquí puedes ver información detallada sobre la vulnerabilidad, incluyendo una descripción de la vulnerabilidad, el impacto de la vulnerabilidad y una recomendación sobre cómo solucionar la vulnerabilidad.
- Una vez terminado el escaneo, puedes exportar los resultados del escaneo en un archivo HTML. Para ello, haz clic en la pestaña Informe y selecciona la opción Generar Informe. Puedes guardar el archivo HTML en tu máquina para revisarlo más tarde.
- Finalmente puedes observar los resultados del escaneo en el archivo HTML generado.
Felicitaciones! Has completado el ejercicio 1.
Ejericio 2: Escaneo Manual de la aplicación web de DVWA
En este ejercicio vamos a realizar un escaneo manual de la aplicación web de DVWA utilizando OWASP ZAP.
- Abre OWASP ZAP en tu máquina. Puedes abrir OWASP ZAP
- Una vez que OWASP ZAP esté abierto, haz clic en el botón Modo Estandar para cambiar al modo estándar.
- Vamos a realizar un Escaneo Manual de la aplicación web de DVWA. Para ello, haz clic en la pestaña Atacar y selecciona la opción Iniciar Ataque Activo.
- En la ventana de configuración del ataque activo, selecciona el objetivo de ataque. En este caso, vamos a atacar la URL de la aplicación web de DVWA. En la sección URL a atacar introduce la URL de la aplicación web de DVWA: http://localhost:4280. Haz clic en el botón Iniciar Navegador para iniciar el ataque activo.
En esta sección podemos observar como se abre el navegador bajo el control de OWASP ZAP.
- Una vez que el navegador esté abierto, puedes navegar por la aplicación web de DVWA y realizar pruebas de seguridad manualmente. Puedes hacer clic en los enlaces de la aplicación web para explorar las diferentes páginas de la aplicación web.
- Podemos observar los distintos tipos de ataques que podemos realizar en la aplicación web. Para hacer una prueba vamos a empezar por Vulnerability: Brute Force.
Esta sería la vista que podemos observar al utilizar el ataque por Fuerza Bruta
- Agreguemos algunos ataques más, por ejemplo, el ataque de SQL Injection.
En la imagen anterior podemos observar como se realiza un ataque de SQL Injection. Utilizando la información disponible en los enlaces que proporciona la misma página.
- https://en.wikipedia.org/wiki/SQL_injection
- https://www.netsparker.com/blog/web-security/sql-injection-cheat-sheet/
- https://owasp.org/www-community/attacks/SQL_Injection
- https://bobby-tables.com/
- Un ataque muy utilizado es CSRF, en la siguiente imagen podemos observar como se realiza un ataque de CSRF.
- Una vez que hayas realizado las pruebas de seguridad manualmente, puedes ver los resultados de la misma forma que en el ejercicio anterior.
Recursos adicionales
Conclusiones
En este laboratorio hemos aprendido a utilizar OWASP ZAP para realizar pruebas de seguridad en aplicaciones web.
Aprendimos a realizar escaneos automáticos y manuales de aplicaciones web, y a identificar vulnerabilidades en aplicaciones web.
OWASP ZAP es una herramienta muy potente que nos permite identificar vulnerabilidades en aplicaciones web y mejorar la seguridad de las mismas.
Recomendaciones
Se recomienda revisar la documentación oficial de OWASP ZAP para obtener más información sobre cómo utilizar la herramienta y realizar pruebas de seguridad en aplicaciones web.
Autoevaluación
- ¿Qué es OWASP ZAP?
- ¿Para qué se utiliza OWASP ZAP?
- ¿Cómo se realiza un escaneo automático de una aplicación web con OWASP ZAP?
- ¿Cómo se realiza un escaneo manual de una aplicación web con OWASP ZAP?
- ¿Qué tipos de vulnerabilidades se pueden identificar con OWASP ZAP?
- ¿Qué recomendaciones puedes dar para mejorar la seguridad de una aplicación web?
- ¿Qué es DVWA y para qué se utiliza?
- ¿Cómo se puede descargar DVWA?
- ¿Cómo se puede ejecutar DVWA con Docker?
- ¿Qué es un ataque de SQL Injection y cómo se puede prevenir?
Referencias
- OWASP ZAP: https://www.zaproxy.org/
- Damn Vulnerable Web Application (DVWA): https://github.com/digininja/DVWA
- Damn Vulnerable Web Application Docker container: https://hub.docker.com/r/vulnerables/web-dvwa