La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

OWASP Top 10 – 2010 Los Diez Riesgos más importantes en Aplicaciones Web Miguel Guirao Linux+, GCIH, ITIL OWASP México mguirao@gusly.org.

Presentaciones similares


Presentación del tema: "OWASP Top 10 – 2010 Los Diez Riesgos más importantes en Aplicaciones Web Miguel Guirao Linux+, GCIH, ITIL OWASP México mguirao@gusly.org."— Transcripción de la presentación:

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 https://www.onlinebank.com/user?acct=6065

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=www.evilsite.com

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


Descargar ppt "OWASP Top 10 – 2010 Los Diez Riesgos más importantes en Aplicaciones Web Miguel Guirao Linux+, GCIH, ITIL OWASP México mguirao@gusly.org."

Presentaciones similares


Anuncios Google