![]() |
| |||||||
| Registrarse | Preguntas Frecuentes | Lista de Foreros | Calendario | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
| | LinkBack | Herramientas | Desplegado |
| |||
| Tercera Protección: No ejecución de Datos ---------------------------------------------------------------- DEP (Data Execution Prevention) Bit NX (Non Execute) ---------------------------------------------------------------- La tecnología DEP está disponible en Windows XP SP2, Windows Server SP1, Windows Server 2003 R2 y además viene incluida también en Windows Vista y puede aplicarse tanto por Software como por Hardware. ¿Qué quiere decir que puede aplicarse por Hardware o por Software? ¿Funcionan igual? DEP por Hardware Para activar DEP por hardware es necesario que el microprocesador que estemos utilizando venga con esta característica, ya que éste es un avance tecnológico de la industria de microprocesadores que es aprovechada por los sistemas operativos. El objetivo es evitar que un programa pueda ser inyectado en un sistema por medio de un desbordamiento de buffer. Para ello se dividen, en tiempo de ejecución, las páginas de la memoria en dos clases: Paginas de ejecución en las que se cargarán los procesos o páginas de NO ejecución donde se van a almacenar datos y/o parámetros de llamada a procedimientos. Para realizar esto las páginas de memoria llevan asociadas un NX (Non eXecute) que indica si se puede ejecutar lo que esté allí o sí por el contrario, nada que esté almacenado en esa zona de memoria puede ser ejecutado. El realizar esta división y marcado de las páginas permite, que, aunque se produzca un desbordamiento de buffer, este nunca podrá ser utilizado para inyectar un código a través de un parámetro, con lo cual estamos garantizando que el sistema no ejecuta nada que no esté ya introducido previamente. Imagen 1: Desbordamiento de Buffer Aplicar DEP por hardware previene que se pueda introducir código inyectado, si el contador de programa se quedara apuntando a una zona de memoria marcada como NX el sistema intentaría recuperarse y si no pudiera se produciría una parada. Debido a esto, es posible que ciertas aplicaciones, que utilicen la inyección de código como forma normal de trabajar dejen de funcionar correctamente No es una práctica correcta de desarrollo pero en algunos casos se utiliza. Para intentar garantizar la compatibilidad de aplicaciones de este tipo se pueden crear listas blancas en Windows Vista. DEP por Software Como protección adicional, DEP en Windows Vista, tiene una versión basada solo en software que vino ya en XP SP2 y cuyo objetivo es garantizar la integridad de las funciones que son invocadas en el tratamiento de los mensajes de excepciones que deben ser gestionados por el sistema operativo. Para ello se comprueba la integridad de los binarios del sistema que se encargan del tratamiento de los mensajes de error. ---------------------------------------------------------------- /SafeSEH (Safe Exception Handler) ---------------------------------------------------------------- Esta es una opción del linkador que se puede usar en Visual C++ para poder comprobar, de forma segura, que las funciones de tratamiento de excepciones de un determinado programa son las correctas. Para ello el ejecutable lleva almacenada la tabla de las funciones con las referencias a las funciones que deben procesar cada uno de los mensajes de excepción. El sistema operativo comprobará si el manejador de esa excepción corresponde con el que marca el programa en la tabla de manejadores y si no es así, matará el proceso. Estas opciones son utilizadas en conjunción de la protección DEP por software. Configuración en Vista Para configurar las opciones de DEP en Windows Vista deberemos acceder a la opción de configuración en: 1.. Panel de Control 2.. Sistema y Mantenimiento 3.. Sistema 4.. Configuración Avanzada 5.. Avanzadas 6.. Opciones de Rendimiento 7.. Data Execution Prevention Tras una petición de Microsoft y en concreto de Michael Howard, todos los equipos que vendrán con Windows Vista en versión OEM vendrán por defecto con DEP Activado. Imagen 2: Prevención de Ejecución de Datos Referencias Externas ---------------------------------------------------------------- - La protección contra Desbordamientos de Buffer en Windows Vista (I de IV) - La protección contra Desbordamientos de Buffer en Windows Vista (II de IV) - DEP en Windows XP SP2 en Technet - Data Excution Prevention en la Wikipedia - Bit NX en la Wikipedia Bueno, ya sólo queda un post más para terminar esta serie en el que veremos las técnicas de Ofuscación de Punteros a Funciones y la tecnología ASLR (Address Space Layout Randomization). Publicado Tuesday, February 06, 2007 11:36 AM por Chema Alonso http://geeks.ms/blogs/vista-tecnica/...iii-de-iv.aspx -- El dia que Pablo Lleó Gárcia deje de hacer el imbecil en los foros tecnicos de MS y de falsificar a la gente, yo dejaré de cantaros las 40 aquí. Hasta el momento soy comedido: solo pongo los mismos mensajes, copiados, que Pablo ha puesto allí y segun los va poniendo. Por tanto, ya sabeis quien es el culpable. Y por cierto, los pongo por ahora aquí sin hacer el crossposting que él hace en MS. Y digo "por ahora". |
| | ||||
| ||||
| |
![]() |
| Herramientas | |
| Desplegado | |
| |
Temas Similares | ||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ZERT: Parche no oficial contra vulnerabilidad Stack buffer overflowin ANI Handling under Microsoft Windows 0Day | c.b. | Newsgroup es.comp.virus | 18 | 04-04-2007 17:36:25 |
| La protección contra Desbordamientos de Buffer en Windows Vista (II de IV) | TCdM | Newsgroup es.charla.economia.bolsa | 0 | 14-02-2007 13:23:48 |
| INFO. Sobre autor "La protección contra Desbordamientos de Buffer en Windows Vista" | TCdM | Newsgroup es.charla.economia.bolsa | 0 | 14-02-2007 13:22:34 |
| La protección contra Desbordamientos de Buffer en Windows Vista (I de IV) | TCdM | Newsgroup es.charla.economia.bolsa | 0 | 14-02-2007 13:22:15 |
| La protección contra Desbordamientos de Buffer en Windows Vista (IV de IV) | TCdM | Newsgroup es.charla.economia.bolsa | 0 | 14-02-2007 13:21:15 |