Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porPaloma Monsalve Modificado hace 10 años
1
OWASP Top 10 – 2010 Los Diez Riesgos más importantes en Aplicaciones Web Miguel Guirao Linux+, GCIH, ITIL OWASP México
2
¿Que ha cambiado?
3
Metodologia de Valoración
1 2 3 Ejemplo de Inyección 1.66 valoración de riesgo
4
OWASP Top Diez (Edición 2010)
The red ones are the new ones.
5
OWASP Top Diez (Edición 2010)
The red ones are the new ones.
6
A1 – Inyección
7
A1 – Inyección 7
8
Inyección SQL – Ilustrado
Account: SKU: Account: SKU: "SELECT * FROM accounts WHERE acct=‘’ OR 1=1--’" Account Summary Acct: Acct: Acct: Acct: Respuesta HTTP Tabla DB SolicitudHTTP SQL query Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions Application Layer Databases Legacy Systems Web Services Directories Human Resrcs Billing APPLICATION ATTACK Custom Code 1. La aplicación presenta una forma al atacante 2. El atacante envía un ataque a traves de los datos de la forma App Server 3. La aplicación reenvía el ataque a la base de datos por medio de una consulta SQL Web Server Hardened OS 4. La base de datos ejecuta la consulta que contiene el ataque y envía los resultados cifrados a la aplicación Network Layer Firewall Firewall 5. La aplicación descifra los datos como normales y envía los resultados al usuario
9
A2 – Secuencia de Comandos en Sitios Cruzados (XSS)
10
A2 –Secuencia de Comandos en Sitios Cruzados (XSS)
10
11
XSS Ilustrado 1 Atacante coloca la trampa – actualiza perfil
App con vuln. XSS almacenado Atacante ingresa script malicioso en sitio web que guarda los datos en el servidor Custom Code Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions 2 La victima consulta la página – ve el perfil del atacante El script se ejecuta en el browser de la victima con acceso completo al DOM y cookies 3 Silenciosamente el script envía las cookies de sesión de la victima
12
A3 – Perdida de Autenticación y Gestión de Sesiones
13
A3 – Perdida de Autenticación y Gestión de Sesiones
13
14
Perdida de Autenticación Ilustrado
1 Usuario envía credenciales Custom Code Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions El sitio usa reescritura de URL (coloca la sesión en el URL) 2 3 Usuario da click en un link a en un foro Hacker verifica las bitacoras de referencia en y encuentra la JSESSIONID del usuario 4 5 Hacker usa JSESSIONID y se apodera de la cuenta de la victima
15
A4 – Referencia Directa Insegura a Objetos
16
A4 – Referencia Directa Insegura a Objetos
16
17
Referencia Directa Insegura a Objetos Ilustrado
Atacante se da cuenta que su parametro acct es 6065 ?acct=6065 Lo modifica a un número cercano ?acct=6066 Atacante ve la información de la cuenta de la victima
18
A5 – Falsificación de Peticiones en Sitios Cruzados (CSRF)
19
A5 – Falsificación de Peticiones en Sitios Cruzados (CSRF)
19
20
Patrón de la Vulnerabilidad CSRF
El Problema Los navegadores web incluyen automaticamente las credenciales en cada consulta Aún para consultas generadas por una forma, script, o imagen en otro sitio Todos los sitios que emplean unicamente en credenciales automaticas son vulnerables! (y la gran mayoria de los sitios son así) Credenciales Enviadas Automaticamente Cookies de sesión Encabezado basico de autenticación Dirección IP Certificados SSL de lado del cliente Autenticación de dominio Windows
21
CSRF Ilustrado Atacante coloca la trampa en algún sitio de Internet (o incluso vía ) 1 App con la vulnerabilidad CSRF La etiqueta oculta <img> contiene el ataque contra el sitio vulnerable Custom Code Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions Mientras está firmado en el sitio vulnerable, la victima consulta el sitio del atacante 2 3 El sitio vulnerable ve la consulta legitima de la victima y ejecuta la acción solicitada La etiqueta <img> cargada por el navegador – envía la solicitud GET (incluyendo credenciales) al sitio vulnerable
22
A6 – Defectuosa Configuración de Seguridad
23
A6 – Defectuosa Configuración de Seguridad
23
24
Defectuosa Configuración de Seguridad Ilustrado
Database Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions Custom Code App Configuration Development Framework App Server QA Servers Web Server Hardened OS Insider Test Servers Source Control
25
A7 – Almacenamiento Criptográfico Inseguro
26
A7 – Almacenamiento Criptográfico Inseguro
26
27
Almacenamiento Criptográfico Inseguro Ilustrado
Victima ingresa número de TDC en la forma 1 Custom Code Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions Log files 4 El atacante malicioso se rroba 4 millones de números de TDC 2 El manejador de errores registra en la bitacora el número de TDC porque el sistema del vendedor no está disponible 3 Las bitacoras son accesibles por todos los miembros del staff de TI para propositos de correción de errores
28
A8 – Falla de Restricción de Acceso a URL
29
A8 – Falla de Restricción de Acceso a URL
29
30
Falla de Restricción de Acceso a URL Ilustrado
Atacante nota que el URL indica su rol /user/getAccounts Lo modifica a otro directorio (rol) /admin/getAccounts, o /manager/getAccounts Atacante consulta más cuentas que solo la propia
31
A9 – Protección Insuficiente en la Capa de Transporte
32
A9 – Protección Insuficiente en la Capa de Transporte
32
33
Protección Insuficiente en la Capa de Transporte Ilustrado
Socios de Negocio Victima Externa Custom Code Backend Systems Empleados 2 1 Atacante externo roba las credenciales y datos de la red Atacante interno roba las credenciales y datos de la red Atacante Externo Atacante Interno
34
A10 – Redirecciones y reenvíos no validados
35
A10 – Redirecciones y reenvíos no validados
36
Redirecciones no validados Ilustrado
1 Atacante envía el ataque a la victima a traves de un sitio o De: Secretaría de Hacienda Tema: Su Retorno de Impuestos No Reclamados Nuestros registros indican que no ha reclamado el regreso de sus impuestos. De click aquí para iniciar el tramite. 3 Aplicación redirecciona a la victima al sitio del atacante Custom Code Accounts Finance Administration Transactions Communication Knowledge Mgmt E-Commerce Bus. Functions La victima da clic en el enlace que contiene parametros no validados 2 Solicitud enviada al sitio vulnerable, incluyendo el sitio destino del atacante como un parametro. El redireccionamiento envía a la victima al sitio del atacante. Evil Site 4 El sitio malicioso instala malware en la victima, o busca información privada con phishing … &dest=
37
Reenvíos no validados Ilustrado
1 Atacante envía ataque a la página vulnerable a la cual tiene acceso La solicitud enviada a la página vulnerable a la cual el usuario tiene acceso. El reenvío toma al usuario directamente a la página privada, pasando por alto los controles de acceso. public void sensitiveMethod( HttpServletRequest request, HttpServletResponse response) { try { // Do sensitive stuff here. ... } catch ( ... 2 Aplicación autoriza la solicitud, la cual continua a la página vulnerable Filtro 3 La página de reenvío falla en validar el parametro, enviando al atacante a una página no autorizada, pasando por alto los controles de acceso public void doPost( HttpServletRequest request, HttpServletResponse response) { try { String target = request.getParameter( "dest" ) ); ... request.getRequestDispatcher( target ).forward(request, response); } catch ( ...
38
Resumén: ¿Cómo solucionamos estos problemas?
Desarrollemos Código Seguro Sigamos las mejores practicas en la Guía para Construir Aplicaciones Web Seguras de OWASP Utilicemos el Estandar de Verificación de la Seguridad de Aplicaciones de OWASP como una guía de lo que una aplicación requiere para ser segura Utilicemos componentes de seguridad estandar que encajen en tu organización Utilicemos ESAPI de OWASP como una base para nuestros compoenentes estandar Auditemos nuestras aplicaciones Que un equipo experno audite nuestra aplicación Revicemos nosotros mismos nuestras aplicaciones siguiendo los lineamientos de OWASP Guía de Auditoria de Código de OWASP: Guía de Pruebas de OWASP:
39
Reconocimientos Documento Original
Dave Wichers COO, Aspect Security OWASP Board Member Adaptación y Traducción al Español Mtro. Miguel Guirao, MGTI, Linux+, GCIH, ITIL OWASP Capitulo México
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.