extensión de módulos de webgoat - owasp · 1. captura de credenciales cifradas para las pruebas...
TRANSCRIPT
![Page 1: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/1.jpg)
Daniel Cabezas Molina
Daniel Muñiz Marchante1
Extensión de módulos de pruebas de seguridad de
la herramienta Webgoat Proyecto OWASP
![Page 2: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/2.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones
2
![Page 3: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/3.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones
3
![Page 4: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/4.jpg)
• El servicio más difundido, WWW
• Según la consultora Gartner,• 75% ataques se realizan a aplicaciones web
• 3 de 4 servidores son susceptibles a ataques web
• Según la empresa IBM,• Cada 1500 líneas de código hay una vulnerabilidad
4
![Page 5: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/5.jpg)
• El escenario actual refuerza la necesidad de formación
en seguridad
• Necesidad de desarrollo de aplicaciones con
vulnerabilidades reales
• La comunidad OWASP proporciona WebGoat como herramienta para profesionales y docentes
5
![Page 6: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/6.jpg)
• Estudio y diseño de una plataforma de seguridad web
en entorno Java
• Bases teorico-prácticas sobre seguridad en aplicaciones
web
• Ampliación de conceptos y entendimiento de los
protocolos en un marco práctico
6
![Page 7: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/7.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones
7
![Page 8: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/8.jpg)
• Open Web Application Security Project
• WebGoat: Plataforma de seguridad web orientada a la
formación y desarrollo
• Utilizada para la formación de nuevos profesionales en
empresas: Ernst & Young
8
![Page 9: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/9.jpg)
• Utilización del entorno de desarrollo integrado, Eclipse
• Aplicación realizada en lenguaje Java (J2EE)
• Servidor Jakarta Tomcat: Contenedor de servlets.
• Herramientas proxy y webspider
• Paros Proxy
• WebScarab
9
![Page 10: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/10.jpg)
10
![Page 11: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/11.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones y líneas futuras
11
![Page 12: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/12.jpg)
• Es una de las vulnerabilidades más conocidas y
explotadas
• Debido a las siguientes causas principales:
• Error en implementación de métodos de validación de
datos de entrada
• Error en la gestión de memoria
12
![Page 13: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/13.jpg)
• Análisis de los métodos de validación de la aplicación
• Pruebas para determinar la validación:• Tipos de datos admitidos
• Longitud de los datos
• Lógica y flujo de la aplicación
• Objetivo: Provocar un buffer overflow en la aplicación
13
![Page 14: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/14.jpg)
1. Envío peticiones
HTTP al servidor
2. Estudio de los
métodos de
validación de datos
de entrada y lógica
de la aplicación
3. Forzar el error de la
aplicación haciendo
abuso de los
métodos de validación
14
![Page 15: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/15.jpg)
1. Envío peticiones
15
Variable asignada al número de teléfono
Variable asignada al saldo a cargar
…..
RET
![Page 16: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/16.jpg)
1. Envío peticiones
16
![Page 17: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/17.jpg)
2. Estudio de los métodos de validación
17
![Page 18: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/18.jpg)
2. Estudio de los métodos de validación
18
![Page 19: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/19.jpg)
2. Estudio de los métodos de validación
19
![Page 20: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/20.jpg)
2. Estudio de los métodos de validación
20
![Page 21: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/21.jpg)
3. Forzar el error de la aplicación
21
![Page 22: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/22.jpg)
3. Forzar el error de la aplicación
22
![Page 23: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/23.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones y líneas futuras
23
![Page 24: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/24.jpg)
• SSL: Secure Socket Layer
• Proporciona seguridad a las comunicaciones
• Aporta valores añadidos a la comunicación:• Integridad
• Confidencialidad
• Autenticidad
24
![Page 25: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/25.jpg)
• Unsalted Hash
• Cifrado Débil RSA• Espacio de claves limitado
• Longitud de claves bajo
• Certificados formados a partir de claves débiles• Ejemplo real
25
![Page 26: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/26.jpg)
• No se envía la contraseña en claro, se utiliza el hash de la misma
• Existe el denominado unsalted hash o salted hash
• El uso de salted hash incrementa de forma exponencial la seguridad en el envío de información sensible• Unsalted Hash
• md5(admin) = 21232f297a57a5a743894a0e4a801fc3 (128 bits)
• Salted Hash • Salt(md5(admin)) = 121232f297a57a5a743894a0e4a801fc3
26
![Page 27: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/27.jpg)
• Utilización de cifrado RSA de 16 bits
• Basa su fortaleza en la dificultad de factorizar números
grandes
• Problemas del cifrado implementado:• Espacio de claves limitado
• Longitud de claves baja
27
![Page 28: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/28.jpg)
• Cifrado RSA con el generador de números aleatorios
con una entropía baja
• Ejemplo: el generador utilizado en la distribución Linux,
Debian
• Certificado creado a partir de clave débil de OpenSSL
Debian
28
![Page 29: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/29.jpg)
1. Mediante el proxy
intermedio se
capturan las
credenciales cifradas
para las pruebas 1 y
2.
2. En la tercera prueba
se utiliza una
conexión HTTPS. Se
debe capturar y
analizar el certificado
del servidor29
![Page 30: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/30.jpg)
1. Captura de credenciales cifradas para las pruebas
30
![Page 31: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/31.jpg)
1. Captura de credenciales cifradas para las pruebas
31
![Page 32: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/32.jpg)
1. Captura de credenciales cifradas para las pruebas
32
![Page 33: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/33.jpg)
1. Captura de credenciales cifradas para las pruebas
33
![Page 34: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/34.jpg)
1. Captura de credenciales cifradas para las pruebas
34
Intercambio de mensajes SSL
Client Hello
Server Hello
Certificate (Optional)
Request Certificate (Optional)
Server Key Exchange (Optional)
Server Hello Done
Certificate (Optional)
Client Key Exchange
Certificate Verify (Optional)
Change Cipher Spec
Finished
Change Cipher Spec
Finished
Encrypted Data Encrypted Data
![Page 35: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/35.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones y líneas futuras
35
![Page 36: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/36.jpg)
• HTTPS, permite el uso de protocolo
HTTP a través una conexión segura
• Utilización de cookies para mantener la sesión y
preferencias del usuario
• Técnica de session hijacking o robo de sesión
36
![Page 37: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/37.jpg)
• Existen aplicaciones que permiten el envío de cookies
de sesión a través de un canal no seguro
• El objetivo: cambiar el canal seguro (HTTPS) por un
canal inseguro (HTTP) y capturar la cookie de sesión
37
![Page 38: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/38.jpg)
1. Petición HTTPS para el envío de la cookie de sesión
2. Cambiar la conexión segura por HTTP y reenviar la cookie de sesión
3. Captura de la cookie de sesión
38
![Page 39: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/39.jpg)
1. Petición HTTPS para el envío de la cookie de sesión
39
![Page 40: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/40.jpg)
2. Cambiar la conexión segura
por HTTP y reenviar la cookie de sesión
40
![Page 41: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/41.jpg)
3. Captura de la cookie
41
![Page 42: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/42.jpg)
1. Introducción y objetivos
2. Herramientas utilizadas
3. Prueba de Concepto I: Buffer Overflow
4. Prueba de Concepto II: Cifrado Débil
5. Prueba de Concepto III: HTTPS Inseguro
6. Conclusiones y líneas futuras
42
![Page 43: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/43.jpg)
• Tomar consciencia de la importancia de la seguridad en
aplicaciones web
• WebGoat como herramienta docente para la formación
en seguridad informática
• Base para la creación de un laboratorio de seguridad
• Participación en un proyecto abierto para la comunidad
OWASP
43
![Page 44: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/44.jpg)
GRACIAS POR SU ATENCIÓN
44
![Page 45: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/45.jpg)
45
![Page 46: Extensión de módulos de Webgoat - OWASP · 1. Captura de credenciales cifradas para las pruebas 34 Intercambio de mensajes SSL Client Hello Æ Å Server Hello Å Certificate (Optional)](https://reader034.vdocuments.site/reader034/viewer/2022042909/5f3ccbd4b3ba5d0c9470cd22/html5/thumbnails/46.jpg)
46