Home Hacking y Seguridad Windows Cifrado EFS en Windows

Ultimos Mensajes del Foro

Manual Aleatorio

Analisis forense de sistemas informticos (PDF)
Muy buen documento que describe lo que es la ciencia del analisis forense informtico, con un monton de temas muy interesantes.
Leer más...

Webs Amigas

Cifrado EFS en Windows Imprimir E-mail
Hacking y Seguridad - Windows
Escrito por ssantos   
Además de Bitlocker para Vista, Windows XP y 2000 ofrecen una seguridad integrada, aceptable y sencilla con respecto al cifrado de la información. Se llama EFS (Encrypted File System), y es una forma nativa de Microsoft que hace el trabajo del usuario mucho más cómodo. De hecho, resulta absolutamente transparente para él. Aunque existen herramientas públicas que, aparentemente, afirman poder romper el cifrado EFS, puede suponer una importante barrera para atacantes no expertos.
Cómo funciona

EFS es un sistema de cifrado transparente (que sólo puede usarse bajo NTFS y no en XP Home) para Windows. Desde las propiedades de archivos o carpetas, opciones avanzadas, es posible acceder a un menú donde se le puede indicar al sistema que el directorio o unidad será empleado para almacenar archivos cifrados (con lo que todo lo que se almacene en él se cifrará) o se puede indicar también el cifrado de un archivo, cosa poco recomendable. También es posible utilizar la herramienta de línea de comando cipher.exe con el mismo efecto.

Una vez marcada una unidad o directorio como cifrado, todo lo que se almacene en él quedará cifrado (incluso para el administrador del sistema), pero no lo que ya hubiese dentro. El usuario no tendrá que preocuparse de nada más. Cada vez que inicie sesión, los datos estarán ahí para poder ser manipulados, pero una vez cerrada la sesión o si otro usuario diferente se presenta en el sistema (incluso con otro sistema operativo leyendo el disco duro) los datos aparecerán inaccesibles. En el explorer los archivos y carpetas cifrados se colorearán de verde.

Es posible añadir la opción de "cifrar" y "descifrar" en el menú contextual añadiendo en el registro:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced

una clave DWORD con valor 1 y nombre EncryptionContextMenu

EFS se basa en una mezcla de criptografía simétrica y asimétrica. Crea certificados digitales para el usuario, que sirven para cifrar y descifrar en base a claves públicas y privadas. Estos se almacenan físicamente en tres sitios distintos del sistema.

C:\documents and settings\<nombreusuario>\application data\microsoft\crypto\
C:\documents and settings\<nombreusuario>\application data\microsoft\protect\
C:\documents and settings\<nombreusuario>\application data\microsoft\systemcertificates\

Con esta clave privada, y para agilizar el proceso, cifra a su vez una contraseña simétrica. En realidad EFS utiliza una contraseña única generada automáticamente para cada fichero cifrado, pero el usuario no lo percibe porque su par de claves pública y privada están trabajando por él. Las contraseñas simétricas automáticas generadas se llaman FEK (File Encryption key), se genera una cuando se cifra un fichero y se almacena físicamente con él. Esta FEK es a su vez cifrada con la clave pública del usuario. Las claves públicas y privadas del usuario se generan de forma transparente para él la primera vez que cifra un archivo. Los certificados son accesibles desde certmgr.msc.

Precauciones

En cualquier caso, antes de utilizar EFS, conviene tener claro que por defecto Windows 2000 utiliza el algoritmo DESx de clave de 56 bits para cifrar la información. Este algoritmo resulta, a estas alturas, inseguro, por lo que no se recomienda. En Windows XP a partir del Service Pack 1, 2003, 2008 y Vista, se utiliza AES de 256 bits por defecto, estándar bastante seguro. Ya no es necesario activar la directiva "Codificación de sistema: use algoritmos compatibles FIPS para codificación, algoritmos hash y firma" en las opciones de seguridad.

Resulta muy conveniente exportar y realizar una copia de seguridad de estos certificados si se utilizan para cifrar archivos. Estos certificados están unidos al SID del usuario, de forma que si este usuario se borra o el sistema se corrompe, los datos se perderán. No importa si se crea un nuevo usuario con igual nombre... si el certificado (que va con su SID) no es el mismo, estos no podrán descifrar la FEK de cada archivo y los datos no podrán ser recuperados. Además a partir de Windows XP, no existe la figura del "agente de recuperación de datos" a menos que se le indique. Si se crea, este usuario podría recuperar la información de otros usuarios con su certificado.

En cualquier caso, la mejor opción, es exportar y realizar una copia de seguridad de los certificados (clave privada incluida) y guardarlos en un lugar seguro. Con estos certificados, aunque el sistema o el usuario se corrompa, siempre se podrán importar como "agentes de recuperación de datos" en otro Windows y desde ahí se podrán descifrar los archivos perdidos..

Hay que tener en cuenta que las carpetas o archivos de sistema no podrán ser cifradas bajo ninguna circunstancia.

Puntos débiles

EFS es un sistema al que no se le conocen grandes vulnerabilidades. En entornos no profesionales que requieran de una seguridad media-alta, es un sistema cómodo y útil. El claro punto débil es que depende totalmente de la clave del usuario. El usuario se presenta en Windows de forma normal, y con esto tiene acceso a sus certificados (las claves públicas y privadas) para hacer uso de EFS, o sea, descifrar la FEK con la que se almacena el archivo. Por tanto el eslabón más débil es precisamente esa contraseña habitual de Windows con la que iniciamos la sesión. De nada sirve cifrar archivos si la contraseña queda accesible por defecto en el sistema por culpa del LM. Como dijimos, la SAM (Security Account Manager) almacena dos cifrados por contraseña, LM y NTLM. LM es débil e inseguro por diseño, y la protección que ofrece es virtualmente inútil. LM no aprovecha bien los caracteres de las contraseñas y además comete otra serie de fallos importantes. En Vista y 2008 viene desactivado por defecto.

EFS se ha calificado en ocasiones de inseguro, cuando en realidad no lo es. Usa estándares y no se le han encontrado vulnerabilidades graves en su implementación. Su leyenda viene por depender de la contraseña del usuario que puede llegar a estar almacenada de forma débil. Si el usuario lo tiene en cuenta y usa EFS de forma responsable, esto es, utilizando una contraseña de usuario de más de 15 caracteres o deshabilitando el hash LM en el sistema, la confidencialidad de sus datos puede llegar a ser bastante alta.

Para los más expertos o entornos profesionales, el programa libre y gratuito TrueCrypt es la solución.