Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

42
Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática WEB VULNERABLE DVWA

description

Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática WEB VULNERABLE DVWA. 01 Introducción a DVWA ¿Qué es DVWA? Requisitos instalación. ¿Por qué php? 02 Vulnerabilidades. Tipos Contenido Ejemplo 03 Conclusiones. ÍNDICE. 2. - PowerPoint PPT Presentation

Transcript of Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Page 1: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Universidad de Almería

Máster en Administración, Comunicaciones y Seguridad

Informática

WEB VULNERABLE DVWA

Page 2: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2

ÍND

ICE 01 Introducción a DVWA

• ¿Qué es DVWA?• Requisitos

instalación.• ¿Por qué php?

02 Vulnerabilidades.• Tipos• Contenido• Ejemplo

03 Conclusiones.

Page 3: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

33

Introducción a DVWA.

¿Qué es DVWA?

Entorno de entrenamiento en explotación de seguridad web.

Programación deliberadamente vulnerable para realizar pruebas de seguridad en un entorno legal.

Tres niveles de seguridad: low, medium y high. LiveCD.

Page 4: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

44

Introducción a DVWA.

Requisitos de instalación LAMP.

Page 5: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

55

Introducción a DVWA.

¿Por qué PHP?

Más de 20 millones de sitios web.

Un millón de servidores. Sitios web personales. Webs corporativas. Organizaciones.

Page 6: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Introducción a DVWA.

Problemas de seguridad.

Exploit: Comportamientos extraños en la aplicación Deformar la web(defacement) Extraer información sensible:

Servidor web Usuarios visitantes

Page 7: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

77

Vulnerabilidad.

Fuerza bruta.

Estracción de autenticación al sistema mediante ensayo-error.

Uso de diccionarios. Software adicional:

Burpsuite. THC-Hydra.

Page 8: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

88

Vulnerabilidad.

Ejemplo de fuerza bruta

Page 9: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

99

Vulnerabilidad.

Ejemplo de fuerza bruta

Page 10: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1010

Vulnerabilidad.

Ejemplo de fuerza bruta

Page 11: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Contramedidas de fuerza bruta.

Uso de captchas.Uso de tokens.Funciones de PHP: sleep()

Page 12: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1212

Vulnerabilidad.

Command execution.

Ejecuta comandos de sistema en el servidor desde la web por un filtrado indebido.

Page 13: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1313

Vulnerabilidad.

Ejemplo command execution.

Page 14: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1414

Vulnerabilidad.

Ejemplo command execution.

Page 15: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1515

Vulnerabilidad.

Contramedidas command execution.

Comprobación del tipo de datos esperado con funciones PHP: Explode() Comprobación is_numeric() Tamaño size()

Page 16: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1616

Vulnerabilidad.

CSRF

CROSS-site request forgery también conocido como ataque por explotar la confianza que el sitio web tiene en el usuario, dando lugar a que éste realice acciones de manera inconsciente.

Software adicional: OWAST CSRF Tester.

Page 17: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1717

Vulnerabilidad.

Ejemplo de CSRF.

Page 18: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo de CSRF.

Page 19: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

1919

Vulnerabilidad.

Ejemplo de CSRF.

Page 20: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2020

Vulnerabilidad.

Ejemplo de CSRF.

Page 21: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2121

Vulnerabilidad.

Ejemplo de CSRF.

Page 22: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2222

Vulnerabilidad.

Ejemplo de CSRF.

Page 23: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2323

Vulnerabilidad.

Contramedidas de CSRF.

El uso de token: $token = md5($secret.$sid.$form);$token = md5($secret.$sid.$form);

Page 24: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

2424

Vulnerabilidad.

File inclusion.

La inclusión de archivos está referida a la ejecución en el servidor web de ficheros locales o externos. Hay dos tipos, LFI(Local File Inclusion) y RFI(Remote File Inclusion)

Page 25: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo File inclusion.

Page 26: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo File inclusion.

Page 27: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Contramedidas de File Inclusion.

Directivas de seguridad: allow_url_include allow_url_fopen

Page 28: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

SQL injection.

Inyección de código invasor SQL con intenciones maliciosas. Existen dos tipos de SQL injection:

SQL injection: Inyección de datos y devolución de errores SQL injection blind: Inyección de datos sin devolución de

errores

Page 29: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo SQL injection.

Page 30: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo SQL injection.

Page 31: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo SQL injection.

Page 32: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Contramedidas de SQL injection.

Funciones de PHP: addcslashes()

mysql_real_escape_string()stripslashes()

Page 33: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

File Upload.

Subida de archivo no controlada que contiene código malicioso dejando una puerta abierta a todo el sistema.

Software adicional:

Tamper data.

Page 34: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo File Upload.

Page 35: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo File Upload.

Page 36: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo File Upload.

Page 37: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Contramedidas File Upload.

Función de seguridad:• Getimagesize()• Header(Content-Type)

Page 38: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

XSS.

Cross site scripting permite a una tercera parte insertar código en páginas visitadas por usuarios. Existen dos tipos, XSS reflected o indirecto, en el cual se inserta código para modificar valores y pasar entre dos páginas. XSS stored, que permite insertar el código en la base de datos y se ejecutado cada vez que se acceda.

Software adicional:

Firebug.

Page 39: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo XSS.

Page 40: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Ejemplo XSS.

Page 41: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Vulnerabilidad.

Contramedidas XSS.

Funciones de PHP:Stripslashes()mysql_real_escape_string()htmlspecialchars()

Page 42: Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática

Web

Vu

lner

able

DV

WA

Conclusión.

No existe ningún sistema libre de fallos, por eso el programador debe de ser capaz de minimizar riesgos y garantizar en medida de lo posible la integridad del sitio web y su información Gracias a DVWA se puede comprender y nejorar la destreza como programador de páginas web.Nos enseñas las siguientes pautas:

Validar/filtrar cualquier parámetro del usuario. No ofrecer nada mas que la información que sea

estrictamente necesaria. Conocer las directivas de seguridad de PHP. Controlar los permisos de subida de ficheros.