Quizás no sea suficientemente conocido el sistema de cifrado de archivos o carpetas incluido en los sistemas Windows bajo el nombre de EFS (Encryption File System).

La manera de proceder para cifrar información contenida en una partición NTFS no puede ser más sencilla y transparente para el usuario, que ni siquiera tiene que crear o recordar una contraseña para cifrar y descifrar los archivos.

Vamos a describir primero los pasos a seguir para cifrar el contenido de una carpeta (licencias) donde guardamos una copia de archivos de licencias de software.

1. Desde el explorador de archivos seleccionamos la carpeta a cifrar (en nuestro ejemplo "licencias") y pulsamos el botón derecho.



2. Pulsamos sobre opciones avanzadas


3. Marcamos el checkbox "cifrar contenido para proteger datos"



4. Aplicamos el cambio a la carpeta seleccionada y a todos las subcarpetas y archivos que contiene.



5. Al pulsar sobre aceptar en las pantallas siguientes, la carpeta ha quedado cifrada y como referencia es mostrada en color verde.



Para el usuario, el acceso a la carpeta y a los archivos que contiene es completamente transparente y de manera automática cualquier nuevo archivo o carpeta que sea añadido a la carpeta inicial (licencias) será cifrado.

Ahora bien, algunas de las preguntas que podemos platearnos pueden ser:

• ¿Están realmente cifrados los archivos?
• Si copiamos uno de estos archivos a un pendrive o lo enviamos por correo electrónico, ¿el archivo se copia o envía cifrado?
• ¿Cómo podrá entonces descifrarlo su destinatario?

La respuesta más general a estas preguntas sería entender que en realidad el sistema EFS "no cifra el archivo en sí", y su función es proteger el acceso al archivo para cualquier otro usuario que no sea el que realizó el proceso.

Por ello es muy importante tener en cuenta que si el archivo se copia a una partición no NTFS, una memoria USB o se envía por ejemplo por correo electrónico, ¡el archivo se descifra antes de realizarse la copia o movimiento! por lo que deja de estar cifrado.

Sin embargo, si iniciamos sesión con un usuario diferente o sin iniciar sesión, montamos en otro equipo el disco duro que contiene la carpeta cifrada, ¡no podremos recuperar su contenido! y solo inciando sesión en el sistema con el mismo usuario será posible acceder a la información.

¿Y si alguien tuviera acceso a nuestro equipo (por pérdida o robo del mismo) y consiguiera iniciar sesión como administrador a través de alguna utilidad en LiveCD de restablecimiento o eliminación de la contraseña del administrador?

En esta situación cabe pensar que, una vez de tener los permisos de administrador, bastaría con resetear la contraseña del usuario que aplicó el cifrado para así poder iniciar sesión con esa cuenta de usuario y acceder de forma transparente a la carpeta cifrada ¿No?.

El sistema EFS está preparado para prevenir esta situación, de manera que si se detecta un "forzado" del cambio de la contraseña del usuario (esto es, no es el propio usuario quien ha actualizado su contraseña) !No es posible acceder a los datos cifrados por el usuario hasta que se restaure la contraseña inicial del usuario en el momento del proceso de cifrado!.



¿Cómo funciona entonces EFS?

El cifrado EFS se basa en la combinación del cifrado simétrico, utilizando una clave para cifrar y descifrar el archivo y protegiendo esta clave mediante la utilización de cifrado asimétrico (clave pública/privada) mediante la generación automática de un certificado digital emitido a nombre del usuario.

Así, la primera vez que en nuestro equipo ciframos una carpeta o archivo, se produce el proceso siguiente:

1. Se genera una clave que se utilizará para el cifrado simétrico del archivo (con algoritmo AES de 256 bits), esta clave se llama FEK (File Encryption key) y se almacena físicamente con él.
2. Esta FEK es a su vez cifrada con la clave pública del usuario.

La claves públicas y privadas del usuario se generan de forma transparente la primera vez que se cifra un archivo y son registradas en un certificado emitido a nombre del usuario y almacenado en el almacen de certificados “personal”. Los certificados registrados son accesibles desde la consola certmgr.msc



o bien desde las opciones incluidas en cualquier navegador.



Es importante tener en cuenta que es este certificado el que nos permitirá acceder a la clave simétrica generada por el sistema utilizada para cifrar/descifrar el archivo, por lo que si borramos este certificado ¡No podremos descifrar los archivos! a menos que hayamos realizado una copia de seguridad del certificado.

Este proceso de copia de seguridad del certificado puede realizarse desde la consola anterior (certmgr.msc) desde la opción “Todas las tareas-->Exportar” accesible con el menú del botón derecho sobre el certificado y seleccionando la opción “exportar clave privada”.



o a partir de Windows 7 mediante el asistente accesible desde el menú lateral de cuentas de usuario:



El fichero exportado tendrá la extensión .pfx (personal file exchange) y por seguridad lo guardaremos fuera del propio equipo (aunque su importación queda igualmente protegida por la necesidad de utilizar una contraseña definida por el usuario en el momento de la exportación).



De esta manera se protege información confidencial almacenada en nuestro equipo aplicandose el principio de SSO (Single Sign On) de forma que no sea necesario recordar otra contraseña o realizar otra segunda autenticación para descifrar los archivos, ya que simplemente por acceder al sistema con nuestra cuenta de usuario y contraseña tendremos un acceso transparente a nuestros archivos cifrados.

Una vez más debemos insistir en la importancia de seleccionar una contraseña larga y compleja para nuestra cuenta de usuario (se recomienda un mínimo de 12 caracteres que combinen letras, números y algún carácter especial), ya que esta contraseña será la única barrera para acceder al sistema y con ello a los archivos cifrados con EFS.




Juan Carlos Rodríguez
Responsable S21sec university
http://blog.s21sec.com/2011/03/tip-seguridad-3-como-proteger.html