Proyecto Seguridad 2 2020
Proyecto Seguridad 2 2020
Proyecto Seguridad 2 2020
Proyecto Final
Seguridad y Vulnerabilidades de Aplicaciones Web
Estudiantes:
Pablo García: 4-786-2036
César Ayarza: 4-778-736
Irving Lezcano: 4-800-1329
Grupo: 21R241
I Semestre
2020
Página 2
Indice
Introducción ……………………………………………………………….…
Framework…………………………………………………………………..5-6
DVWA….……………..………………………………………………………7
Golismero….……………..………………………………………………..…15
Configuración de Golismero…………………………………………..….16-21
Nikto….……………..……………………………………………………22-24
Configuración de Nikto…………………………………………………..25-26
OWASP-ZAP….……………..………………………………………………27
Configuración de OWASP-ZAP………………………………………….28-33
Conclusión…………………………………………………………………....34
Página 3
Bibliografía…………………………………………………………………..34
Introducción
En diversos sitios web estan en riesgo de diversas amenazas, mediante algunos entornos de
trabajo de la distribución de linux KALI, lo importante no es que podamos hacer despues
de que ocurra un ataque, sino detectarlos a tiempo y asi evitarlos definitivamente. En este
caso usaremos los enterores de KALI:
1. GoLismero.
2. Nikto.
3. OWASP ZAP.
Objetivo General
El objetivo de de este proyecto es buscar información sobre la confidencialidad,
integridad y disponibilidad de datos, busca identificar amenazas y riesgos de un
sistema. Una vez puestas las medidas requeridas, es posible medir y cuantificar los
riesgos a los cuales se ven expuestos los aplicativos tanto en la infraestructura
interna, tanto externa.
El proyecto se trata de revisar los framekors antes mencionados de kali para buscar
vulnerabilidades de los sitios. Este proceso se realiza bajo diversas fases tales como
el diseño de amenazas de acuerdo al tipo de aplicación, la ejecución de las pruebas
de seguridad, el analisis de los resultados y posteriormente la entrega de los
hallazgos encontrados junto con el analisis que se hizo con los frameworks, asi ver
las vulnerbilidaes y asi podriamos ver como arreglarlos.
Objetivos Especificos
Identificar posibles amenazas y riesgos a nivel de aplicación.
Establecer umbrales y criterios de aceptación.
Identificar vulnerabilidades y puntos de acceso a nivel de infraestructura.
Analizar impacto de no cumplimiento sobre el negocio.
Implementar buenas practicas para prevenir ataques.
Página 5
Framework
Un entorno de trabajo, o marco de trabajo es un conjunto estandarizado de conceptos,
prácticas y criterios para enfocar un tipo de problemática particular que sirve como
referencia, para enfrentar y resolver nuevos problemas de índole similar. En el desarrollo de
software, un entorno de trabajo es una estructura conceptual y tecnológica de asistencia
definida, normalmente, con artefactos o módulos concretos de software, que puede servir
de base para la organización y desarrollo de software. Típicamente, puede incluir soporte
de programas, bibliotecas, y un lenguaje interpretado, entre otras herramientas, para así
ayudar a desarrollar y unir los diferentes componentes de un proyecto. Representa una
arquitectura de software que modela las relaciones generales de las entidades del dominio,
y provee una estructura y una especial metodología de trabajo, la cual extiende o utiliza las
aplicaciones del dominio. Los marcos de trabajo tienen como objetivo principal ofrecer una
funcionalidad definida, auto contenida, siendo construidos usando patrones de diseño, y su
característica principal es su alta cohesión y bajo acoplamiento. Para acceder a esa
funcionalidad, se construyen piezas, objetos, llamados objetos calientes, que vinculan las
necesidades del sistema con la funcionalidad que este presta. Algunos entornos de trabajo
conocidos son Spring Framework o Hibernate, donde lo esencial para ser denominados
entornos de trabajo es estar constituidos por objetos casi estáticos con funcionalidad
definida a nivel grupo de objetos y no como parte constitutiva de estos, por ejemplo en sus
métodos, en cuyo caso se habla de una API o librería. Algunas características notables que
se pueden observar:
cuanto a extensibilidad. Los usuarios pueden ampliar sus características, pero no deben
ni necesitan modificar su código.
Evitar escribir código repetitivo: La mayoría de los proyectos tienen partes comunes
necesarias para el funcionamiento como, por ejemplo, acceso a base de datos,
validación de formularios o seguridad. Un framework nos evita tener que programar
estas partes, de esta manera nos resulta más fácil centrarnos en programar la aplicación.
Utilizar buenas prácticas: Los frameworks están basados en patrones de desarrollo,
normalmente MVC (Modelo-Vista-Controlador) que ayudan a separar los datos y la
lógica de negocio de la interfaz con el usuario. Vamos, que gracias a ellos, lo tenemos
todo más ordenado.
Permitir hacer cosas avanzadas que tú no harías: Está claro que un framework
siempre te va permitir hacer cosas de una manera fácil y segura, que para ti serían
imposibles o al menos te costaría mucho tiempo hacerlas.
Desarrollar más rápido: Si tenemos en cuenta los puntos anteriores, sabremos que
desarrollar una aplicación con un framework nos permite hacerlo más rápido, más
limpio y más seguro.
Página 7
DVWA
Damn Vulnerable Web App (DVWA) es una aplicación web PHP / MySQL que es muy
vulnerable. Sus objetivos principales son ayudar a los profesionales de seguridad a probar
sus habilidades y herramientas en un entorno legal, ayudar a los desarrolladores web a
comprender mejor los procesos de seguridad de las aplicaciones web y ayudar a los
maestros / estudiantes a enseñar / aprender la seguridad de las aplicaciones web en un
entorno de clase.
¿Cuáles son los beneficios de la DVWA?
1) Violar la seguridad informática de cualquier cosa sin permiso es un crimen. Entonces,
como estudiante o principiante aquí tienes ese permiso, puedes usarlo. Para que los
usuarios avanzados mejoren su habilidad, la DVWA es la mejor plataforma.
2) En DVWA, no tienes que pedir el permiso de otros. Simplemente puedes instalarla en
un entorno virtual y comenzar a usarla.
3) Es muy sencillo de instalar.
4) Este es el mejor lugar para hacer hacking.
5) De hecho, esto se está ejecutando en tu entorno local y es totalmente legal.
Tiene niveles de seguridad, que estos son:
Imposible: En este nivel, enfrentarás desafíos como CTF y es más difícil que el otro
nivel. Este nivel da dificultades que enfrentamos en el mundo real.
Alto: Este nivel de vulnerabilidad brinda al usuario un ejemplo de cómo proteger la
vulnerabilidad a través de métodos de programación seguros. Permite al usuario
comprender cómo se puede medir la vulnerabilidad. Este nivel de seguridad debe ser
imposible de violar la seguridad, sin embargo, como todos sabemos, este no es siempre
el caso. Así que, si logras evitarlo, estarás haciendo lo correcto.
Medio: el propósito de este nivel de seguridad es dar al ‘atacante’ un desafío en la
explotación y también servir como un ejemplo de malas prácticas de
programación/seguridad.
Bajo: este nivel de seguridad está destinado a simular un sitio web sin ningún tipo de
seguridad implementado en su programación. Le da al “atacante” la oportunidad de
refinar sus habilidades de explotación.
En DVWA podemos probar varios tipos diferentes de vulnerabilidades, entre esas están:
Fuerza bruta, Inyección de comando, Carga de archivos, Captcha inseguro, Inyección
de sql, Sql injection blind, Id de sesión débil, Xss(dom), Xss (reflect), Xss (stored).
Página 8
Paso #1
Actualizamos el sistema y sus drivers, tecleando lo siguiente: sudo apt-get upfate && sudo
apt-get dist-upgrade –y.
Paso #2
Vamos a firebox y vamos al siguiente enlace https://github.com/ethicalhack3r/DVWA y
copiamos el link de la página.
Página 9
Paso #3
Nos vamos a la carpeta de html tecleando cd /var/www/html y allí mismo descargamos los
paquetes de DVWA allí mismo tecleando: sudo git clone
https://github.com/ethicalhack3r/DVWA.git
Paso #4
Verificamos que el archivo este, ya viendo que esta, le cambiamos su nombre, tecleando:
mv DVWA dvwa, luego verificamos si se cambió.
Paso #5
Le damos los permisos a la carpeta dvwa, tecleando: sudo chmod –R 777 dvwa.
Paso #6
Nos vamos la carpeta dvwa y verificamos si esta la carpeta config.
Paso #7
Página 10
Paso #9
Modificamos el archivo config.inc.php, tecleando: nano config.inc.php, ya dentro,
cambiamos el db_user, en nuestro caso (group420) y la db_password (pass) y guardamos.
Paso #10
En otra pestaña de la terminal, ya en root, iniciamos mysql, tecleando mysql start, luego
sudo mysql –u root –p, nos pedirá la contraseña, esperamos a que cargue y podemos
comenzar.
Página 11
Paso #11
Vinculamos el usuario del DVWA en la base de datos, tecleando create user ‘group420
(nuestro usuario)’@‘127.0.0.1 (la ip de nuestro servidor)’ identified by ‘pass (nuestra
contraseña)’ y luego ponemos nuestro usaurio en mysql definitivamente, tecleando: select
user from mysql.user;
Paso #12
Le damos los privilegios tecleando: grant all privileges on dvwa.* to
‘group420’@’127.0.0.1’;
Paso #13
En otra máquina vamos a la carpeta etc, luego a la de php, luego a la carpeta 7.3, luego a la
carpeta apache2, y allí mismo abrimos el archivo php.ini.
Página 12
Paso #14
Ya dentro del archivo php.ini, tocando ctrl + w, aparecerá la opción buscar, buscamos
allow_ y si alguna de la opciones allow_url_fopen o allow_url_include está en off,
cambiarlo a Off, en este caso, la segunda opción, osea, allow_url_include estaba en off, se
cambió a On.
Paso #15
Para comenzar con el apache, se debe estar en la carpeta apache 2, allí mismo tecleamos
sudo service apache2 start.
Página 13
Paso #16
Sin cerrar la terminal, vamos al navegador y ponemos la ip asignada, osea 127.0.0.1, esto
para comprobar el Apache2.
Paso #17
Ahora en el buscador, ponemos 127.0.0.1/dvwa y ponemos nuestro usuario y contraseña.
Paso #18
Y listo, ya tendríamos DVWA activado.
Página 14
Probar las diferentes vulnerabilidades que posee la aplicación. En este caso, para probar
una de estas, decidimos por ejemplo hacerlo en “Command Execution”. Este panel presenta
una vulnerabilidad a la hora de comprobar la conectividad haciendo uso del comando ping,
la cual sin embargo desde ese mismo campo de entrada de dirección IP es posible saltear el
comando ping para ejecutar otro comando como por ejemplo leer el archivo /etc/passwd:
De esta forma, se pueden probar las diferentes vulnerabilidades que posee la aplicación en
sus diferentes niveles. Este tipo de plataformas educativas tienen como finalidad ayudar a
comprender cómo funcionan algunas de las más conocidas, permitiendo obtener el
conocimiento necesario para detectar proactivamente estas fallas en sitios propios, y
corregirlas antes de que sean explotadas por atacantes.
Estos conocimientos serán muy útiles a la hora de montar sitios web propios y revisar al
menos las vulnerabilidades básicas, permitiendo realizar las correcciones correspondientes
en tiempo y forma.
Página 16
Golismero
GoLismero es una herramienta de seguridad que han presentado en la convención OWASP
orientada a realizar auditorías de páginas web para buscar posibles agujeros de seguridad
existentes en estas, aunque también podría ser utilizado para buscar fallos en cualquier otro
tipo de servicios (redes, servidores, etc).
Las características de GoLismero son:
Es una herramienta multiplataforma con soporte para Windows, Linux, Mac y BSD
No necesita dependencias, todo el código está escrito en Python.
En comparación con otros frameworks escritos en Python, GoLismero está optimizado
y ofrece un resultado óptimo.
Es una herramienta muy fácil de usar.
La herramienta puede recopilar y analizar resultados recogidos por otras herramientas
de seguridad como sqlmap, xsser, openvas, dnsrecon, theharvester, etc.
Permite la creación de plugins de forma sencilla.
GoLismero se encuentra disponible en GitHub. Desde esta web lo podemos descargar,
descomprimir y comenzar a utilizarlo. No necesitamos instalar nada en nuestro sistema,
salvo el intérprete de Python si aún no lo hemos instalado.
Para comenzar una auditoría web, desde un terminal teclearemos la siguiente línea:
python golismero.py www.redeszone.net -o prueba_redeszone.txt
También podemos volcar los resultados como una página web para un análisis más claro.
python golismero.py www.redeszone.net -o análisis_redeszone.html
La anterior línea nos lanzará una auditoría completa sobre nuestra web y nos copiará los
resultados obtenidos sobre el archivo prueba_redeszone.txt que se guardará en la carpeta
desde la que estemos ejecutando GoLismero.
Página 17
Paso #1
Descargamos la aplicación golismero en www.golismero.com
Paso #2
Vamos a la carpeta Downloads y extraemos la carpeta del zip.
Paso #3
sudo bash
Paso #4
apt-get install python2.7 python2.7-dev python-pip python-docutils git perl nmap sslscan
Página 18
Paso #5
cd /opt
Paso #6
rm -r golismero
Paso #6
git clone https://github.com/golismero/golismero.git
Paso #7
cd golismero.
Página 19
Paso #9
pip install -r requirements.txt
Paso #10
pip install -r requirements_unix.txt
Paso #11
ln -s ${PWD}/golismero.py /usr/bin/golismero
Página 20
Paso #12
Exit y cerramos la terminal.
Paso #13
Abrimos otra terminal y tecleamos golismero.
Paso #14
Página 21
Paso #15
Página 22
Tecleamos golismero plugins, donde nos muestra las herramientas que utiliza golismero.
Paso #16
Dentro de golismero podemos declarar que plugins usar y cuales no.
Página 23
Tenemos la opción: -e
Que nos indica que solo usaremos el plugins señalado.
Ejemplo: golismero scan -e nmap http//127.0.0.1/dvwa
Página 24
Paso #17
Dentro de golismero podemos declarar que plugins usar y cuales no.
Tenemos la opción: -b
Que nos indica que solo usaremos todos los plugins menos el señalado.
Ejemplo: golismero scan -b nmap http//127.0.0.1/dvwa
Paso #18
Como último paso, pondríamos para verificar las vulnerabilidades de un sitio web, en este
caso, el servidor dvwa.
Paso #19
Página 25
Paso #20
Buscar el archivo html y eso nos llevara al navegador y allí veremos el reporte html.
Página 26
Nikto
Si ejecuta Nikto por sí mismo en un sitio web específico, es posible que no sepa qué hacer
con la información del análisis. Nikto es en realidad más como un primer paso para llamar
a un golpe mucho más grande.
Primero, hablemos de la superficie del objetivo (target surface). Esto es casi cualquier lugar
donde un hacker intente atacar y podría incluir cosas como impresoras expuestas a la red o
un servidor web. Cuando lleguemos a usar Nikto más tarde, en relación al objetivo,
tendremos que proporcionarle alguno de los siguientes datos: una dirección IP para un
servicio local, un dominio web para atacar o un sitio web SSL/HTTPS.
Antes de comenzar el escaneo con Nikto, quizás es mejor hacer un reconocimiento
adicional utilizando una herramienta de inteligencia de código abierto como Maltego.
Herramientas como ésta pueden ayudar a crear un perfil y una lista más centrada de
objetivos disponibles en los que se debería concentrar la atención. Una vez hecho esto,
Nikto puede ser usado para afinar las vulnerabilidades potenciales de los objetivos de la
lista.
Con algo de suerte, se encontrará una vulnerabilidad con su respectivo exploit, lo que
significa que ya existe una herramienta para aprovechar la debilidad. Con la herramienta
adecuada, que explotará automáticamente la vulnerabilidad, un hacker puede acceder al
objetivo para realizar cualquier número de ataques entre bastidores, como añadir código
para realizar una actividad maliciosa.
Nikto no está diseñado como una herramienta sigilosa. Probará un servidor web en el
menor tiempo posible, y es obvio en los archivos de registro o en un IPS / IDS. Sin
embargo, hay soporte para los métodos anti-IDS de LibWhisker en caso de que quiera
probarlo (o probar su sistema IDS).
No todos los chequeos son un problema de seguridad, aunque la mayoría lo son. Hay
algunos elementos que son verificaciones de tipo "solo información" que buscan cosas que
pueden no tener un defecto de seguridad, pero que el webmaster o el ingeniero de seguridad
pueden no saber que están presentes en el servidor. Estos elementos generalmente están
marcados adecuadamente en la información impresa. También hay algunas comprobaciones
de elementos desconocidos que se han visto escaneados en archivos de registro.
Nikto tiene muchas opciones, pero para nuestros propósitos, nos ceñiremos a la sintaxis
básica de la siguiente manera. Sustituiremos el <IP o nombre de host> por la dirección IP
real o el nombre de host sin corchetes angulares.
Sin embargo, Nikto es capaz de realizar un análisis que puede ir tras el SSL y el puerto 443,
el puerto que utilizan los sitios web HTTPS (HTTP utiliza el puerto 80 de forma
predeterminada). Por lo tanto, podemos realizar evaluaciones de vulnerabilidades en sitios
que utilizan SSL, lo que hoy en día es casi un requisito para ser indexados en los resultados
de búsqueda en Google.
Página 27
Si sabemos que es un sitio SSL al que estamos apuntando, podemos especificarlo en Nikto
para ahorrar tiempo en el análisis añadiendo -ssl al final del comando.
Una de las mejores cosas de Nikto es que puedes exportar información a un formato que
Metasploit pueda leer. Para ello, basta con utilizar los comandos anteriores para realizar el
escaneo, pero añadiendo -Format msf+ al final de los mismo.
Por lo tanto, en este trabajo, pasamos de determinar la superficie del objetivo a encontrar
una vulnerabilidad y luego encontrarle su respectivo exploit para no tener que hacer todo el
trabajo. Dado que Nikto no es una herramienta sigilosa, es aconsejable realizar este tipo de
escaneos desde una VPN, a través de Tor, u otro tipo de servicio para que su dirección IP
real no se marque por comportamiento sospechoso.
Características:
Soporte SSL (Unix con OpenSSL o tal vez Windows con Perl / NetSSL de
ActiveState).
Soporte completo de proxy HTTP.
Comprueba los componentes del servidor obsoletos.
Guarde informes en texto plano, XML, HTML, NBE o CSV.
Motor de plantillas para personalizar fácilmente los informes.
Escanee múltiples puertos en un servidor, o múltiples servidores a través de un archivo
de entrada (incluida la salida de nmap).
Técnicas de codificación IDS de LibWhisker.
Se actualiza fácilmente a través de la línea de comando.
Identifica el software instalado a través de encabezados, favicons y archivos.
Autenticación de host con Basic y NTLM.
Subdominio adivinando.
Apache y enumeración de nombre de usuario cgiwrap.
Técnicas de mutación para "pescar" contenido en servidores web.
Ajuste de escaneo para incluir o excluir clases enteras de comprobaciones de
vulnerabilidad.
Adivina las credenciales para los reinos de autorización (incluidos muchos combos
predeterminados de id / pw).
Las conjeturas de autorización manejan cualquier directorio, no solo el directorio raíz.
Reducción de falsos positivos mejorada a través de múltiples métodos: encabezados.
contenido de la página y hashing de contenido.
Reporta encabezados "inusuales" vistos.
Estado interactivo, pausa y cambios en la configuración de verbosidad.
Guardar solicitud / respuesta completa para pruebas positivas.
Repetir solicitudes positivas guardadas.
Tiempo máximo de ejecución por objetivo.
Pausa automática a una hora especificada.
Página 28
Si solo ejecuta Nikto en un sitio web específico, es posible que no sepa qué hacer con la
información del escaneo. Nikto es en realidad más como un puntero láser para llamar a un
ataque mucho más grande, y verás cómo se desarrolla eso en un momento.
Primero, hablemos de la superficie objetivo. Esto es prácticamente cualquier lugar donde
un ciberdelincuente intente atacar y podría incluir cosas como impresoras expuestas a la red
y un servidor web. Cuando lleguemos a usar Nikto más tarde, necesitaremos proporcionarle
uno de los tres tipos diferentes de información: una dirección Herramientas como esta
pueden ayudar a construir un perfil y una lista más focalizada de objetivos disponibles que
deberían concentrarse. Una vez hecho esto, Nikto se puede utilizar para centrarse en
posibles vulnerabilidades para los objetivos de la lista.
Ventajas
1. Es Gratis
2. Tiene una base de datos constantemente actualizada y libre (OSVDB)
3. Realiza tests comprensivos de todas las vulnerabilidades existentes y reconocidas hasta
ahora.
4. Puede utilizar con NMAP para afinar escaneos de vulnerabilidad encontradas.
5. Puede utilizarse con Metasploit para determinas grados de penetración en una red/sistema
Desventajas
Paso #1
Vamos a aplicaciones, análisis de vulnerabilidades y escogemos a Nikto.
Paso #2
Tecleamos lo siguiente para comenzar a verificar las fallas de la web: nikto -host
http://127.0.0.1/dvwa -ouput niktoreport.html
Página 30
Paso #3
Tecleamos lo siguiente para comenzar a verificar las fallas de la web: nikto -host
http://127.0.0.1/dvwa -ouput niktoreport.html
Paso #4
Buscamos el archivo html y vemos el reporte web.
Página 31
OWASP ZAP
OWASP ZAP es un escáner de seguridad web de código abierto. Pretende ser utilizado
como una aplicación de seguridad y como una herramienta profesional para pruebas de
penetración. La prueba de seguridad de software es el proceso de evaluar y probar un
sistema para descubrir riesgos de seguridad y vulnerabilidades del sistema y sus datos. No
existe una terminología universal, pero para nuestros propósitos, definimos las evaluaciones
como el análisis y descubrimiento de vulnerabilidades sin intentar explotar esas
vulnerabilidades.
Definimos las pruebas como el descubrimiento y el intento de explotación de
vulnerabilidades. Las pruebas de seguridad a menudo se desglosan, de manera algo
arbitraria, según el tipo de vulnerabilidad que se prueba o el tipo de prueba que se realiza.
Tenga en cuenta que la evaluación de riesgos, que comúnmente se incluye como parte de
las pruebas de seguridad, no se incluye en esta lista. La prueba de penetración se lleva a
cabo como si el probador fuera un atacante externo malintencionado con el objetivo de
ingresar al sistema y robar datos o realizar algún tipo de ataque de denegación de servicio.
El pentesting también se utiliza para probar los mecanismos de defensa, verificar los planes
de respuesta y confirmar el cumplimiento de la política de seguridad. Ayuda a descubrir
nuevas vulnerabilidades, así como regresiones para vulnerabilidades anteriores en un
entorno que cambia rápidamente y para el cual el desarrollo puede ser altamente
colaborativo y distribuido.
Pentesting generalmente sigue estas etapas: Esto incluye tratar de determinar qué software
está en uso, qué puntos finales existen, qué parches están instalados, etc. También incluye
buscar en el sitio contenido oculto, vulnerabilidades conocidas y otras indicaciones de
debilidad. En esencia, ZAP es lo que se conoce como un «proxy del hombre en el medio».
Se encuentra entre el navegador del probador y la aplicación web para que pueda
interceptar e inspeccionar los mensajes enviados entre el navegador y la aplicación web,
modificar el contenido si es necesario y luego reenviar esos paquetes al destino. Se puede
usar como una aplicación independiente y como un proceso de demonio.
Página 32
Paso #1
Vamos a aplicaciones, aplicaciones de análisis de red y escogemos al programa ZAP para
comenzar.
Paso #2
Marcamos la opción: No, no quiero persistir esta sesión en este momento, y le damos start.
Página 33
Paso #3
Ya dentro de la herramienta OWASP ZAP, le damos a escaneo automatico.
Paso #4
Ponemos el sitio que queremos atacar, en nuestro caso, el sitio del DVWA y le damos en
atacar. Este es un ataque activo.
Página 34
Paso #5
Y abrimos sites, aparecerá nuestra página de DVWA y sus contextos, esto fue el modo
activo. Las en la pestaña de alertas, las banderas son posibles amenazas que debemos
erradicar de nuestro sitio.
Paso #5
Lo siguiente es ver el ataque pasivo, zap hace un proxi que se puede configurar, los puertos
entre otros elementos, el escaneo pasivo sólo intercepta las respuestas del server y no es
intrusivo. Para eso, hacemos una nueva sesión, luego nos vamos a herramientas, opciones,
ya en la ventana de opciones, escogemos la opción Dynamic SSL Certificates, le damos en
genérate y le damos en sí, luego le damos en guardar y lo guardamos en donde queramos,
en este caso, usaremos la carpeta wasa, que se creó en el escritorio.
Página 35
Paso #6
Ahora sin cerrar ZAP, nos vamos al navegador (Firefox), nos vamos a opciones, a opciones
de red, le damos a la opción ajustes y ponemos la página que queremos atacar, en nuestro
caso, es el localhost y el puerto 8080, marcamos la casilla de procolos, y le damos OK.
Página 36
Paso #7
Ya guardados las configuraciones del proxy, vamos con la certificación, allí mismo en la
misma ventana de opciones del navegador (Firefox), buscamos certificación (buscando
certificate), luego nos aparecerán unas opciones, elegimos ver certificaciones (view
certificates).
Paso #8
Alli mismo en el manager de certificación, bajamos un poco con la ruedita del ratón y
veremos un par de opciones más, y le damos a la opción, importar.
Página 37
Paso #9
Buscamos el archivo de certificación, es un archivo .cer, acordémonos, estaba en el
escritorio, para eso, tras haber dado la opción importar, nos mandara buscar ese archivo .cer
lo buscamos y le damos en abrir (open).
Paso #10
Rellenamos con ganchos las opciones de los desarrolladores, y damos ok y en la otra
pestaña ok.
Página 38
Paso #11
“Proxis Locales” se puede cambiar el puerto, también la dirección, pero por estos
momentos la dejare así mismo.
Paso #12
Con eso, ya detectaría por el lado de contextos todas las fallas de las páginas que
pongamos.
Página 39
Prueba 1
Paso #1
Para esto tendremos que tener la opción de proxy activado en nuestro OWASP ZAP y en
nuestro buscador, nos estará funcionando como intermediario en las peticiones de recursos
que realiza un cliente (A) a otro servidor.
Luego procedemos a dar click derecho y seleccionamos la opción atacar luego de Fuzz.
Página 40
2. Le damos
click
ingresar.
3. Le damos
click
ingresar.
1. Seleccionamos el
campo asignado que
aloja la contraseña.
Seleccionamos el archivo
de texto que contiene
nuestro diccionario para
aplicar la fuerza fruta.
Una vez hagamos el ataque el va proceder a probar en el campo de contraseñas las posibles
contraseñas montadas en nuestro archivo de texto, una por una hasta que alguna de ellas el
servidor que da la respuesta admita como la correcta.
En este caso logramos identificar la contraseña correcta ya que es la que nos género menos
cantidad en bytes y siendo un tamaño diferente al resto de respuestas.
Página 42
Conclusión
Bibliografía
Damn Vulnerable Web Application (DVWA). (2015). Estados Unidos. Obtenido de
http://www.dvwa.co.uk/
Onwenu, F. (s.f.). OWASP ZAP - Setting Up ZAP for Browser. Estados Unidos. Obtenido de
https://www.youtube.com/watch?v=ntUSFP0Af1k
Orix. (2017). ¿Qué es un framework y para qué se utiliza? Estados Unidos. Obtenido de
https://www.orix.es/que-es-un-framework-y-para-que-se-utiliza#:~:text=Un
%20framework%2C%20seg%C3%BAn%20wikipedia%2C%20es,hacernos%20m%C3%A1s
%20f%C3%A1cil%20la%20programaci%C3%B3n.
Velazco, R. (23 de Agosto de 2013). GoLismero, una nueva herramienta para auditar webs. México.
Obtenido de https://www.redeszone.net/2013/08/23/golismero-una-nueva-herramienta-
para-auditar-webs/