Universidad de Almería Máster en Administración, Comunicaciones y Seguridad Informática
description
Transcript of 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
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.
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.
Web
Vu
lner
able
DV
WA
44
Introducción a DVWA.
Requisitos de instalación LAMP.
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.
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
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.
Web
Vu
lner
able
DV
WA
88
Vulnerabilidad.
Ejemplo de fuerza bruta
Web
Vu
lner
able
DV
WA
99
Vulnerabilidad.
Ejemplo de fuerza bruta
Web
Vu
lner
able
DV
WA
1010
Vulnerabilidad.
Ejemplo de fuerza bruta
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Contramedidas de fuerza bruta.
Uso de captchas.Uso de tokens.Funciones de PHP: sleep()
Web
Vu
lner
able
DV
WA
1212
Vulnerabilidad.
Command execution.
Ejecuta comandos de sistema en el servidor desde la web por un filtrado indebido.
Web
Vu
lner
able
DV
WA
1313
Vulnerabilidad.
Ejemplo command execution.
Web
Vu
lner
able
DV
WA
1414
Vulnerabilidad.
Ejemplo command execution.
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()
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.
Web
Vu
lner
able
DV
WA
1717
Vulnerabilidad.
Ejemplo de CSRF.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo de CSRF.
Web
Vu
lner
able
DV
WA
1919
Vulnerabilidad.
Ejemplo de CSRF.
Web
Vu
lner
able
DV
WA
2020
Vulnerabilidad.
Ejemplo de CSRF.
Web
Vu
lner
able
DV
WA
2121
Vulnerabilidad.
Ejemplo de CSRF.
Web
Vu
lner
able
DV
WA
2222
Vulnerabilidad.
Ejemplo de CSRF.
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);
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)
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo File inclusion.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo File inclusion.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Contramedidas de File Inclusion.
Directivas de seguridad: allow_url_include allow_url_fopen
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
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo SQL injection.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo SQL injection.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo SQL injection.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Contramedidas de SQL injection.
Funciones de PHP: addcslashes()
mysql_real_escape_string()stripslashes()
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.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo File Upload.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo File Upload.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo File Upload.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Contramedidas File Upload.
Función de seguridad:• Getimagesize()• Header(Content-Type)
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.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo XSS.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Ejemplo XSS.
Web
Vu
lner
able
DV
WA
Vulnerabilidad.
Contramedidas XSS.
Funciones de PHP:Stripslashes()mysql_real_escape_string()htmlspecialchars()
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.