La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Defensa contra ataques web comunes

Presentaciones similares


Presentación del tema: "Defensa contra ataques web comunes"— Transcripción de la presentación:

1 Defensa contra ataques web comunes
MGB 2003 Defensa contra ataques web comunes Isabel Gomez Miguel Jimenez © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2 Defensa Contra Ataques
MGB 2003 Defensa Contra Ataques Securizar una Aplicación: Validación de Datos de Entrada Buffer Overrun Inyección SQL Cross-Site Scripting Robo de Sesión © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

3 Holística de la seguridad
MGB 2003 Holística de la seguridad Aplicación Validación de INput Autenticación Autorización Gestión de Configuración Datos Sensibles Gestión de Sesiones Criptografía Manipulación de Parámetros Gestión de Excepciones Auditoría y Logging Red Servidor Web Servidor de Aplicaciones Servidor de BD Firewall Router Firewall Switch Servidor Parches Servicios Protocolos Cuentas Ficheros y Directorios Shares Puertos Registro Auditoría y Logging © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

4 Securizar la Aplicación
MGB 2003 Securizar la Aplicación Validación de Datos de Entrada Autentificación Autorización Gestión de Configuración Datos Sensibles Gestión de Sesiones Criptografía Manipulación de Parámetros Gestión de Excepciones Auditoría y Logging © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

5 Securizar la Aplicación Validación de Datos de Entrada
MGB 2003 Securizar la Aplicación Validación de Datos de Entrada Ataques posibles: Desbordamiento de buffer Inyección de código Inyección SQL Cross-Site Scripting (xss) Entrada de datos: Cookies, cabeceras, campos html, controles Viewstate,QueryString Servicios Web/Remoting/DCOM Datos de base de datos, ficheros o fuentes remotas Siempre dudar de su contenido!! Validación de datos en servidor © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

6 Validación de la entrada Buffer overruns
MGB 2003 Validación de la entrada Buffer overruns Stack void UnSafe (const char* datoSinValidar) { 0x char[4] char variableLocal[4]; 0x int int otraVariableLocal; strcpy (variableLocal, datoSinValidar); 0x0A3BA429 Return address } 0x01 0x01 0x01 0x01 0x0A 0x3B 0xA4 0x29 0x00 0x14 0x5B 0xB1 0xDA 0xC1 0x42 ... datoSinValidar PUSH 0x PUSH [0x0A2EF4D9] CALL 0x0A3BA78C © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

7 Validación de la entrada Buffer overruns
MGB 2003 Validación de la entrada Buffer overruns Causas más comunes Copia de cadenas Arrays Reserva de memoria insuficiente Defensas Utilizar código manejado Vigilar P/Invoke, código unsafe Usar con cuidado strcpy, memcpy Mejor equivalentes en strsafe.h Opción compilador C++: /GS © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

8 Validación de la entrada Inyección SQL
MGB 2003 Validación de la entrada Inyección SQL Qué es? SqlConnection conn= new SqlConnection( “server=localhost;Database=Northwind” + “user id=sa;password=pass*word;"); string sqlString="SELECT * FROM Orders WHERE “ + “CustomerID='" + idCliente + "'"; SqlCommand cmd = new SqlCommand(sqlString, conn); conn.Open(); SqlDataReader reader = cmd.ExecuteReader(); // ... © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

9 Validación de la entrada Inyección SQL
MGB 2003 Validación de la entrada Inyección SQL La gente buena introduce VINET SELECT * FROM Orders WHERE CustomerID=‘VINET' SELECT * FROM Orders WHERE CustomerID=‘VINET‘OR 1=1 --’ Los malos VINET’ OR 1=1 -- SELECT * FROM Orders WHERE CustomerID=‘VINET‘; DROP TABLE ORDERS --’ Los malísimos VINET’; DROP TABLE ORDERS -- SELECT * FROM Orders WHERE CustomerID= ‘VINET‘;exec xp_cmdshell ‘format C:’ VINET’;exec xp_cmdshell ‘format C: © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

10 Validación de la entrada Inyección SQL
MGB 2003 Validación de la entrada Inyección SQL Utilizar comandos parametrizables Al menos minimizarlo Validar entrada en servidor Usar cuentas SQL restringidas No volcar mensajes de error string sqlString="SELECT * FROM Orders WHERE SqlCommand cmd = new SqlCommand(sqlString, conn); idCliente); © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

11 MGB 2003 Inyección SQL © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

12 Validación de la entrada Cross-site scripting
MGB 2003 Validación de la entrada Cross-site scripting ¿Que es XSS? Un agujero de seguridad que permite al hacker ejecutar código script en un cliente web Dos entradas principales Contempladas (foros, s, librerías…) Ocultas (querystring, campos HTML…) Efectos habituales Modificación del contenido Envío de información Robo de sesión © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

13 Validación de la entrada Anatomía de una ataque XSS
MGB 2003 Validación de la entrada Anatomía de una ataque XSS Hacker Victima Envia correo al usuario con link a un sitio inocente 3. En el contexto del usuario, el sitio envia datos a traves de un post malformado 2. El usuario visita el sitio web Sitio Web © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

14 Validación de la entrada Tipos de Cross-site scripting
MGB 2003 Validación de la entrada Tipos de Cross-site scripting Tipo 0 – Local ó DOM-based Un script local accede a parametros request de la URL y los utiliza para construir código script. Tipo 1 – No Persistente ó Reflejada Se utilizan l os datos de entrada de formularios para construir scripts, permitiendo la inyección de código. Tipo 2 – Persistente ó Segundo Orden Es la más poderosa. Los datos se almacenan en una bbdd y posteriormente se muestran a los usuarios, inyectando el código continuamente. © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

15 Cross-site scripting MGB 2003
© 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

16 Validación de la entrada Protección contra Cross-site scripting
MGB 2003 Validación de la entrada Protección contra Cross-site scripting Validar y limpiar cualquier entrada Vigilar <script>, <object>… Especialmente la que es mostrada después Utilizar HttpOnly en IE6.1 Aprovechar ASP.NET HTMLEncode para limpiar ValidateRequest para validar todas las entradas © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

17 Autenticación falseable Robos de passwords
MGB 2003 Autenticación falseable Robos de passwords Nunca enviar por canales inseguros Cuidado con RPC, Remoting Proteger su almacenamiento Establecer políticas Utilizar hash con salt Password Salt SHA1CryptoServiceProvider.ComputeHash Hash © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

18 Autenticación falseable Modificación de ticket
MGB 2003 Autenticación falseable Modificación de ticket ASP.NET utiliza tickets en forma de URL o cookie Robo de cookie Cuidado con XSS Usar RequireSSL y !Persistent Modificación de cookie Si contiene información del usuario Utilizar MAC © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

19 MGB 2003 Cookie Tampering © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

20 MGB 2003 Sumario La gran mayoría de las aplicaciones tienen agujeros de seguridad Reglas de protección Validación de entrada Evitar SQL dinámico Aplicar Encoding a toda la salida Ejecutar con los mínimos privilegios Cifrar los secretos (connstr, pass’s, etc.) Minimizar la superficie de exposición Y si fallamos, hacerlo de modo privado © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

21 Próximas acciones 8 Junio Evento Windows Workflow Mad.nug
MGB 2003 Próximas acciones 8 Junio Evento Windows Workflow Mad.nug 13 Junio. Seguridad Práctica para Empresas Hacking Web Sites © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

22 Isabel Gomez - Microsoft isabelg@microsoft.com
MGB 2003 Isabel Gomez - Microsoft Miguel Jiménez – Ilitia / MAD.NUG © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Descargar ppt "Defensa contra ataques web comunes"

Presentaciones similares


Anuncios Google