La protección contra Desbordamientos de Buffer en Windows Vista (III de IV)

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).



 

33 comentarios sobre “La protección contra Desbordamientos de Buffer en Windows Vista (III de IV)”

  1. Hola, te comento que hice los pasos que detallas en la pagina. Cuando quiero agregar el Mensseger para desabilitar el DEP, me dice que este programa se debe ejecutar con la proteccion y que no se puede desabilitar la opcion DEP, igualmente me fue de mucha ayuda llegar hasta donde me indicastes, te doy las gracias y si podes darme otra respuesta te lo agradezco.
    Saludos Federico

  2. Hola Federico, deshabilitar el DEP no debes hacerlo con aquellos programas que están depurados y programados con soporte DEP, ¿Por qué quieres deshabilitarlo?

    Saludos!

  3. hola, me ha sido de ayuda tu post pero cuando quiero activar un juego q se juega por internet me salta esta proteccion y cuando quiero sacarla me da ese mismo error q a federico.. si pudieras ayudarme te lo agradeceria.

    Saludo

  4. Hola a todos!

    Tengo un portatil con windows vista, a los dias de utlizar el messenger windowslive dejo de funcionar, porque DEP me lo impedia por mas que intento agregarlo como programa seguro, no me funciona me dice que este programa a de ser protegido por DEP. Alguien me puede dcir como puedo solucionarlo?? Gracias de antemano

  5. Hola Laura.

    No se si el equipo desde el que estás teniendo el problema es un Acer. Te lo comento porque está dando una problemática generalizada con el Software Preinstalado para Windows Vista en estos equipos, en concreto con el siguiente software: «Acer’s eDataSecurity Management software» y la version 8.1.

    Acer ha sacado una actualización que impide el cierre de Live en equipos que tengan esta problemática. Aunque la instalación de la versión 8.0 y no actualizarla, pudiera ser también la solución.

    Aquí te dejo un enlace donde explican el problema y el acceso a la solución.

    http://www.fanatic.net.nz/2007/03/14/how-to-stop-dep-crashing-messenger-on-vista/

    Saludos

  6. YO tengo el mismo problema ke laura, pro no es con msn sino con un juego, por mas ke intento desactivarle el dep, este no me lo permite porque dice ke ha de ser protegido, tengo un acer. xfavor necesito ayuda! jeje gracias

  7. Hola kaku,

    reportale tu problema a la página del juego para que te den la solución. Son ellos los que fuerzan el uso de DEP.

    Hola Ivonne, me temo que vas a tener que usar servicios de traducción online de Google o Live, porque esa es la página de un blog.

    Saludos!

  8. Hola, yo tengo un problema al imprimir desde una Lapto con vista a un nodo de red con xp el cual tiene una impresora compartida, de vez en vez manda el error que dejo de funcionar la cola por que el DEP la cerro. Que puedo hacer ?

  9. Hola, tienes un problema con el driver de la impresora, mira a ver si el fabricante ha sacado una nueva versión de ese driver para la impresora.

    Saludos!

  10. hola a ver si alguien me puede ayudar desde hace unos dias,y especialmente desde que instale el msn el ordenador(acer windws vista) cada vez que lo enciendo me salen un monton de ventanas que me dicen que dejo de funciona distitos programas bastante raros como edatasucurity managents y varios mas con iniciales raras os lo agradeceria mucho si pe pudierais ayudar ates de ir a una tienda y que me claven muchisimas gracias

  11. Hola joe,

    si tienes un ACER tendrá que venirte con un CD de reinstalación. Es raro que pase eso, pues los programas que se montan vienen testados cuando se distribuyen en OEM. Te recomiendo que te revises la web de tu modelo a ver si tienen alguna indicación al respecto.

    Saludos.

  12. Hola, tengo un hp con el vista y acaba de sucederme exactamente lo que todos cuentan pero en mi caso, con el windows sidebar, pero con razón (supongo). Estuve batallando con el kaspersky, instalando y desinstalando y me dio problemas en una ocasión (y tuve que reinicar por fuerza bruta…). Desde entonces, nada más encender, sale error por DEP desde el windows sidebar y luego igual pero con no se qué de la cola de no se qué cosa. Vamos que, acabaré volviendo a un punto de recuperación porque ya sin rastro de kaspersky esto sigue patas arriba.

    Saludos.

  13. TENGO UNA HP DV2635 Y TENGO EL MISMO PROBLEMAS CON MESSENGER Q LOS USUARIOS DE EQUIPOS ACER PERO EL PARCHE DEL VINCULO NO SIRVE EN MI COMPUTADORA….HAY ALGUNA MANERA DE SOLUCIONAR MI PROBLEMA??? GRACIAS

  14. Hola, tengo problemas para utilizar muvee autoproducer la mesa de ayuda de muvee me solicita que active el DEP for essential windows program and services only y que agregue el programa de muvee pero no tengo la posibilidad de agregar, que debo hacer compre un software y no lo puedo utilizar , necesito ayuda, gracias, ricardo

  15. mi problema tambien es con el DEP sucede que ami si me deja ejecutar el live msn pero al momento de iniciar una conversacion de varios participantes lo cierra sea yo quien la inicie o sea algun otro de mis contactos. mi pc es hp y no sirve el parche para acer ya probe con el comando para deshabilitar el DEP pero tampoco funciona. 🙁

  16. Hola Diana,

    prueba a actualizar tu messenger, puede que estes siendo atacada por algún exploit o incluso puede que tengas un troyano instalado. Tal vez deberías analizar el ordenador a fondo con algún antimalware.

    DEP es una protección contra código malicioso, así que puede ser que algo esté yendo mal.

    Saludos!

  17. Tengo un portatil con windows vista, y me lansa un pantallaso azul, creo que es desbordamientos de memoria
    pero solo me pasa algunas veces con algunos programas en especificos, por ejemplo con el apache 2.2.8 cuando lo trato de iniciar me lanza el pantallaso y me reinicia la maquina, pese que era el programa que tenia el problema pero vi que tambien es con otros programas por ejemplo centro de dispositivos de windows movil tambien, mi portatil es una dell inspirion 1420 el que me pueda ayudar se lo agradesco, esto solo pasa en algunas oportunidades con eso programas no siempre. estoy tratando de comprender que es lo que secede.

  18. He leído todo tu post, me parece muy interesante, y tengo ese pequeño problema con mi Acer, el windows vista y tooodo el funcionamiento del ordenador.
    Resulta q me compre el portátil hace algo menos de un año, y en cuestión de 7 meses ya tuve q llevarlo a reparar por un problema de disco duro. Esta semana me lo han devuelto con un disco duro nuevo y el ordenador, supuestamente, en perfecto estado, pero me va más lento que antes y tanto el explorer como el msn me van mal (sí, todo por el DEP este…q estoy intentando corregir).
    Mi pregunta es la siguiente: Estoy pensando en instalarle mañana mismo el Windows XP, pues considero q todos mis problemas vienen a raíz del «maravilloso Vista». ¿Es acertado cambiarlo?
    Gracias.

  19. Jesús, si un programa te lanza una caida con DEP es que el programa no está bien desarrollado para este sistema. Si lo necesitas entonces prueba a deshabilitar el DEP para ese programa en la lista de excepciones.

    Tati, salvo que tu ordenador sea muy, muy antiguo mi recomendación es que te quedes con Vista. ¿Tienes el SP1? Si no, instálalo y además Vista mejora con el uso pq va aprendiendo el uso que le das y el sistema de Superfetch y el ReadyBoot harán que vaya mucho más rápido con el uso.

    Saludos Malignos!

  20. hola quisiera que aguien me oriente con respecto a mi problema que cuando uso mi explorador de windos al usar varias ventanas se cierran tosa y hasta se reinicia el sistema al revisar mi McAfee,me sale que se ha detectado y bloqueado un desbordamiento en el bufer de mi equipo en windos media player, tambien me sale un dato a continuacion PRIMERO LA FECHA HORA Y DIA , LUEGO LA UBICACION DEL DESBORDAMIENTO YA (MENSIONADO)Y EL API ,que dice KERNEL32.GET….
    que puedo hace profavor alguien me responda.
    gracias.

  21. Hola, tengo un problema, con juegos como Age III y Max Payne, y es que al momento de jugar, me saca el sistema, asi haya configurado la compatibilidad. No se si sea lo mismo del problema DEP. Pero quisiera saber que puedo hacer, dado que ya van dos juegos que compro, y dos juegos que no me sirven. Quisiera tambien saber si hay alguna posibilidad de cambiar de Windows vista a windows XP, por que esta cosa del vista no deja funcionar ningun programa, ademas de ser complejo y pesado… Quisiera ayudas ^^
    Muchas Gracias
    Alvaro

  22. hola mira quiero Cuando quiero agregar el Mensseger para desabilitar el DEP, me dice que este programa se debe ejecutar con la proteccion y que no se puede desabilitar la opcion DEP, lo quiero desabilitar porque no me funciona mns, como hago para que funcione , porfis si me ayudas, gracias

  23. lo que pasa un dia quise descargar
    imagenes de 3ra dimencion
    y de repente DEP me impidio utilizar explorer
    debido a que me quizo infectar(virus)
    quisiera saber si contan solo desinstalarlo e instalarlo
    se podra solucionar el problema
    de verdad muchas gracias de antemano espero y me puedan solucionar esta pregunta
    saludos ok

Responder a anonymous Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *