10 jul 2014

Seguridad en Windows: DEP y Setdllcharacteristics

Buenas a todos, como muchos ya sabréis, desde Windows Vista en adelante contamos con una serie de medidas de seguridad muy interesantes para protegernos frente al código malicioso, y que os hemos ido comentando a lo largo de los últimos años. Una de esas medidas más interesantes es DEP, que ayuda a impedir daños en el equipo producidos por malware y otras amenazas, garantizando (más o menos) que utilizan la memoria del sistema de forma segura. Si un programa intenta ejecutar código de la memoria de forma incorrecta, DEP lo cierra.

Normalmente DEP es habilitado por los desarrolladores a través del bit "nxcompat" durante la compilación, si desean que el software tenga dicha protección (y si son compatibles claro). Podemos comprobarlo con PEStudio por ejemplo. Pero puede pasar que a los programadores se les olvide activar DEP en un software, o lo que también es muy probable, no tengan ni la más remota idea de que son esas tres letras...

En casos como el comentado, si sabemos que el programa puede ser compatible con DEP, pero no se encuentra activado, podemos forzar su uso activando el citado bit. Para ello tenemos varias posibilidades, que pasan desde modificar el binario con un editor hexadecimal, hasta utilizar alguna herramienta automática para realizar dicha tarea. Una de estas herramientas es setdllcharacteristics, de Didier Stevens:


Setdllcharacteristics se encuentra escrito en C, y os permitirá activar DEP (y ASLR como veremos otro día):

Podéis descargar la herramienta desde el siguiente enlace:


Su uso es muy sencillo, y basta con lanzarlo desde una consola, con los parámetros +n (activación de DEP) o +d (activación de ASLR)

setdllcharacteristics +n +d programa.exe 

Os dejo finalmente el hash de la aplicación, por si os la descargáis de un sitio diferente al del autor:

MD5: F96358BF90AA4D8C6B32968B2068BFCB 

Saludos!

No hay comentarios:

Publicar un comentario