stringtranslate.com

Sistema de cifrado de archivos

El sistema de cifrado de archivos ( EFS ) en Microsoft Windows es una característica introducida en la versión 3.0 de NTFS [1] que proporciona cifrado a nivel del sistema de archivos . La tecnología permite cifrar archivos de forma transparente para proteger los datos confidenciales de atacantes con acceso físico a la computadora.

EFS está disponible en todas las versiones de Windows excepto en las versiones domésticas (consulte Sistemas operativos compatibles a continuación) desde Windows 2000 en adelante. [2] De forma predeterminada, ningún archivo está cifrado, pero los usuarios pueden habilitar el cifrado por archivo, por directorio o por unidad. Algunas configuraciones de EFS también se pueden exigir a través de la Política de grupo en entornos de dominio de Windows . [3]

Hay implementaciones de sistemas de archivos criptográficos disponibles para otros sistemas operativos, pero Microsoft EFS no es compatible con ninguno de ellos. [4] Véase también la lista de sistemas de archivos criptográficos .

Ideas básicas

Cuando un sistema operativo se ejecuta en un sistema sin cifrado de archivos, el acceso a los archivos normalmente pasa por listas de control de acceso y autenticación de usuarios controladas por el sistema operativo . Sin embargo, si un atacante obtiene acceso físico a la computadora, esta barrera puede burlarse fácilmente. Una forma, por ejemplo, sería quitar el disco y colocarlo en otra computadora con un sistema operativo instalado que pueda leer el sistema de archivos; otra sería simplemente reiniciar la computadora desde un CD de arranque que contenga un sistema operativo adecuado para acceder al sistema de archivos local.

La solución más aceptada para esto es almacenar los archivos cifrados en medios físicos (discos, memorias USB, cintas, CD, etc.).

En la familia de sistemas operativos Microsoft Windows, EFS permite esta medida, aunque solo en unidades NTFS, y lo hace utilizando una combinación de criptografía de clave pública y criptografía de clave simétrica para hacer que descifrar los archivos sea extremadamente difícil sin la clave correcta.

Sin embargo, las claves de criptografía para EFS están en la práctica protegidas por la contraseña de la cuenta de usuario y, por lo tanto, son susceptibles a la mayoría de los ataques a contraseñas. En otras palabras, el cifrado de un archivo es tan seguro como la contraseña para desbloquear la clave de descifrado.

Operación

Operación del sistema de cifrado de archivos

EFS funciona cifrando un archivo con una clave simétrica masiva , también conocida como clave de cifrado de archivos o FEK. Utiliza un algoritmo de cifrado simétrico porque lleva menos tiempo cifrar y descifrar grandes cantidades de datos que si se utiliza un cifrado de clave asimétrica . El algoritmo de cifrado simétrico utilizado variará según la versión y configuración del sistema operativo; consulte Algoritmos utilizados por la versión de Windows a continuación. La FEK (la clave simétrica que se utiliza para cifrar el archivo) luego se cifra con una clave pública asociada con el usuario que cifró el archivo, y esta FEK cifrada se almacena en el flujo de datos alternativo $EFS del archivo cifrado. [5] Para descifrar el archivo, el controlador del componente EFS utiliza la clave privada que coincide con el certificado digital EFS (usado para cifrar el archivo) para descifrar la clave simétrica que está almacenada en la secuencia $EFS. Luego, el controlador del componente EFS utiliza la clave simétrica para descifrar el archivo. Debido a que las operaciones de cifrado y descifrado se realizan en una capa inferior a NTFS, es transparente para el usuario y todas sus aplicaciones.

Las carpetas cuyo contenido debe cifrarse mediante el sistema de archivos están marcadas con un atributo de cifrado. El controlador del componente EFS trata este atributo de cifrado de una manera análoga a la herencia de permisos de archivos en NTFS: si una carpeta está marcada para cifrado, de forma predeterminada todos los archivos y subcarpetas que se crean en esa carpeta también se cifran. Cuando los archivos cifrados se mueven dentro de un volumen NTFS, los archivos permanecen cifrados. Sin embargo, hay varias ocasiones en las que el archivo se puede descifrar sin que el usuario solicite explícitamente a Windows que lo haga.

Los archivos y carpetas se descifran antes de copiarlos a un volumen formateado con otro sistema de archivos, como FAT32 . Finalmente, cuando los archivos cifrados se copian a través de la red utilizando el protocolo SMB/CIFS, los archivos se descifran antes de enviarlos a través de la red.

La forma más importante de evitar el descifrado al copiar es utilizar aplicaciones de copia de seguridad que conozcan las API "sin formato". Las aplicaciones de respaldo que han implementado estas API sin formato simplemente copiarán el flujo de archivos cifrados y el flujo de datos alternativo $EFS como un solo archivo. En otras palabras, los archivos se "copian" (por ejemplo, en el archivo de copia de seguridad) de forma cifrada y no se descifran durante la copia de seguridad.

A partir de Windows Vista , la clave privada de un usuario se puede almacenar en una tarjeta inteligente ; Las claves del Agente de recuperación de datos (DRA) también se pueden almacenar en una tarjeta inteligente. [6]

Seguridad

Vulnerabilidades

Existían dos vulnerabilidades de seguridad importantes en Windows 2000 EFS y desde entonces se han atacado de diversas formas.

En Windows 2000, el administrador local es el Agente de Recuperación de Datos predeterminado, capaz de descifrar todos los archivos cifrados con EFS por cualquier usuario local. EFS en Windows 2000 no puede funcionar sin un agente de recuperación, por lo que siempre hay alguien que puede descifrar los archivos cifrados de los usuarios. Cualquier computadora con Windows 2000 que no esté unida a un dominio será susceptible a un descifrado EFS no autorizado por parte de cualquiera que pueda hacerse cargo de la cuenta de administrador local, lo cual es trivial dadas las muchas herramientas disponibles gratuitamente en Internet. [7]

En Windows XP y versiones posteriores, no existe un agente de recuperación de datos local predeterminado ni es necesario tener uno. Configurar SYSKEY en el modo 2 o 3 (syskey ingresada durante el inicio o almacenada en un disquete) mitigará el riesgo de descifrado no autorizado a través de la cuenta de administrador local. Esto se debe a que los hashes de contraseña del usuario local, almacenados en el archivo SAM , están cifrados con Syskey, y el valor de Syskey no está disponible para un atacante fuera de línea que no posee la frase de contraseña/disquete de Syskey.

Acceder a la clave privada mediante el restablecimiento de contraseña

En Windows 2000, la clave privada RSA del usuario no sólo se almacena en un formato verdaderamente cifrado, sino que también hay una copia de seguridad de la clave privada RSA del usuario que está menos protegida. Si un atacante obtiene acceso físico a la computadora con Windows 2000 y restablece la contraseña de una cuenta de usuario local, [7] el atacante puede iniciar sesión como ese usuario (o agente de recuperación) y obtener acceso a la clave privada RSA que puede descifrar todos los archivos. Esto se debe a que la copia de seguridad de la clave privada RSA del usuario está cifrada con un secreto LSA, al que puede acceder cualquier atacante que pueda elevar su inicio de sesión a LocalSystem (nuevamente, algo trivial dadas las numerosas herramientas en Internet).

En Windows XP y versiones posteriores, se realiza una copia de seguridad de la clave privada RSA del usuario utilizando una clave pública fuera de línea cuya clave privada coincidente se almacena en uno de dos lugares: el disco de restablecimiento de contraseña (si Windows XP no es miembro de un dominio) o en el Active Directory (si Windows XP es miembro de un dominio). Esto significa que un atacante que puede autenticarse en Windows XP como LocalSystem aún no tiene acceso a una clave de descifrado almacenada en el disco duro de la PC.

En Windows 2000, XP o posterior, la clave privada RSA del usuario se cifra utilizando un hash del hash de la contraseña NTLM del usuario más el nombre de usuario; el uso de un hash salado hace que sea extremadamente difícil revertir el proceso y recuperar la clave privada sin conocer la frase de contraseña del usuario. Además, nuevamente, configurar Syskey en el modo 2 o 3 (Syskey ingresado durante el arranque o almacenado en un disquete) mitigará este ataque, ya que el hash de la contraseña del usuario local se almacenará cifrado en el archivo SAM.

Otros temas

Una vez que un usuario inicia sesión correctamente, el acceso a sus propios datos cifrados con EFS no requiere autenticación adicional y el descifrado se realiza de forma transparente. Así, cualquier vulneración de la contraseña del usuario conduce automáticamente al acceso a esos datos. Windows puede almacenar versiones de frases de contraseña de cuentas de usuario con cifrado reversible, aunque este ya no es el comportamiento predeterminado; También se puede configurar para almacenar (y lo hará de forma predeterminada en la versión original de Windows XP e inferiores) hash de Lan Manager de las frases de contraseña de la cuenta de usuario local, que pueden atacarse y romperse fácilmente. También almacena frases de contraseña de cuentas de usuarios locales como hashes NTLM , que pueden ser atacados con bastante facilidad usando " tablas arcoíris " si las contraseñas son débiles (Windows Vista y versiones posteriores no permiten contraseñas débiles de forma predeterminada). Para mitigar la amenaza de ataques triviales de fuerza bruta a frases de contraseña locales, las versiones anteriores de Windows deben configurarse (usando la parte Configuración de seguridad de la Política de grupo) para nunca almacenar hashes LM y, por supuesto, para no habilitar Autologon (que almacena texto sin formato). frases de contraseña en el registro ). Además, el uso de frases de contraseña de cuentas de usuario locales de más de 14 caracteres impide que Windows almacene un hash LM en el SAM y tiene el beneficio adicional de dificultar los ataques de fuerza bruta contra el hash NTLM.

Al cifrar archivos con EFS (al convertir archivos de texto sin formato en archivos cifrados), los archivos de texto sin formato no se borran, sino que simplemente se eliminan (es decir, bloques de datos marcados como "no en uso" en el sistema de archivos). Esto significa que, a menos que, por ejemplo, estén almacenados en un SSD con soporte TRIM , se pueden recuperar fácilmente a menos que se sobrescriban. Para mitigar completamente los ataques técnicos conocidos y no desafiantes contra EFS, el cifrado debe configurarse a nivel de carpeta (de modo que todos los archivos temporales, como las copias de seguridad de documentos de Word que se crean en estos directorios, también estén cifrados). Al cifrar archivos individuales, deben copiarse a una carpeta cifrada o cifrarse "en el lugar", y luego borrar de forma segura el volumen del disco. La utilidad de cifrado de Windows se puede utilizar (con la opción /W) para borrar el espacio libre, incluido el que aún contiene archivos de texto sin formato eliminados; También pueden funcionar varias utilidades de terceros. [8]

Cualquiera que pueda obtener acceso de administrador puede sobrescribir, anular o cambiar la configuración del Agente de recuperación de datos. Este es un problema muy grave, ya que un atacante puede, por ejemplo, piratear la cuenta de administrador (usando herramientas de terceros), configurar cualquier certificado DRA que desee como agente de recuperación de datos y esperar. Esto a veces se denomina ataque en dos etapas, que es un escenario significativamente diferente al riesgo debido a una PC perdida o robada, pero que resalta el riesgo debido a personas internas maliciosas.

Cuando el usuario cifra archivos después de la primera etapa de dicho ataque, las FEK se cifran automáticamente con la clave pública del DRA designado. El atacante sólo necesita acceder a la computadora una vez más como Administrador para obtener acceso completo a todos los archivos posteriormente cifrados con EFS. Incluso el uso de Syskey modo 2 o 3 no protege contra este ataque, porque el atacante podría hacer una copia de seguridad de los archivos cifrados fuera de línea, restaurarlos en otro lugar y usar la clave privada de DRA para descifrar los archivos. Si un infiltrado malintencionado logra acceder físicamente al ordenador, todas las características de seguridad se considerarán irrelevantes, ya que también podrían instalar rootkits , software o incluso registradores de pulsaciones de teclas de hardware , etc. en el ordenador, lo que es potencialmente mucho más interesante y eficaz que sobrescribir. Política de DRA.

Recuperación

Los archivos cifrados con EFS solo se pueden descifrar utilizando las claves privadas RSA que coincidan con las claves públicas utilizadas anteriormente. La copia almacenada de la clave privada del usuario está protegida en última instancia por la contraseña de inicio de sesión del usuario. No es posible acceder a archivos cifrados desde fuera de Windows con otros sistemas operativos ( Linux , por ejemplo), sobre todo porque actualmente no existe ningún controlador de componente EFS de terceros. Además, el uso de herramientas especiales para restablecer la contraseña de inicio de sesión del usuario hará imposible descifrar la clave privada del usuario y, por lo tanto, será inútil para obtener acceso a los archivos cifrados del usuario. En ocasiones, los usuarios pierden la importancia de esto, lo que resulta en la pérdida de datos si un usuario olvida su contraseña o no realiza una copia de seguridad de la clave de cifrado. Esto llevó a acuñar el término "papelera de reciclaje retrasada", para describir la aparente inevitabilidad de la pérdida de datos si un usuario sin experiencia cifra sus archivos.

Si EFS está configurado para usar claves emitidas por una infraestructura de clave pública y la PKI está configurada para habilitar el archivo y la recuperación de claves, los archivos cifrados se pueden recuperar recuperando primero la clave privada.

Llaves

Sistemas operativos compatibles

ventanas

Otros sistemas operativos

Ningún otro sistema operativo o sistema de archivos tiene soporte nativo para EFS.

Nuevas funciones disponibles según la versión de Windows

WindowsXP
Windows XP SP1
Windows XP SP2 + KB 912761
Servidor Windows 2003
Windows Vista [10] y Windows Server 2008 [11] [12]
Servidor de Windows 2008 [12]
Windows 7 y Windows Server 2008 R2 [15]
Windows 10 versión 1607 y Windows Server 2016

Algoritmos utilizados por la versión de Windows.

Windows EFS admite una variedad de algoritmos de cifrado simétrico, según la versión de Windows que se utilice cuando se cifran los archivos:

Ver también

Referencias

  1. ^ "Cifrado de archivos (Windows)". Microsoft . Consultado el 11 de enero de 2010 .
  2. ^ EFS está disponible en Windows 2000 Server y Workstation, en Windows XP Professional, en Windows Server 2003 y 2008, y en Windows Vista y Windows 7 Business, Enterprise y Ultimate.
    EFS no está disponible en Windows XP Home Edition, ni en las ediciones Starter, Basic y Home Premium de Windows Vista y Windows 7 . No se pudo implementar en la serie de sistemas operativos Windows 9x, ya que no eran compatibles de forma nativa con NTFS, que es la base de EFS.
  3. ^ "Sistema de archivos de cifrado". Microsoft. 1 de mayo de 2008 . Consultado el 24 de agosto de 2011 .
  4. ^ "Sistemas de archivos criptográficos, primera parte: diseño e implementación". Enfoque de seguridad . Consultado el 11 de enero de 2010 .
  5. ^ "Sistema de archivos de cifrado".
  6. ^ Chris Corio (mayo de 2006). "Primer vistazo: nuevas funciones de seguridad en Windows Vista". Revista TechNet . Microsoft. Archivado desde el original el 10 de noviembre de 2006 . Consultado el 6 de noviembre de 2006 .
  7. ^ ab ntpasswd, disponible desde 1997 Archivado el 12 de febrero de 2016 en Wayback Machine .
  8. ^ "El sistema de cifrado de archivos". technet.microsoft.com .
  9. ^ "Windows: sitio oficial para sistemas operativos Microsoft Windows 10 Home y Pro, computadoras portátiles, PC, tabletas y más". www.microsoft.com . Archivado desde el original el 3 de febrero de 2007 . Consultado el 20 de enero de 2008 .
  10. ^ Kim Mikkelsen (5 de septiembre de 2006). "Sesión 31 de Windows Vista: Servicios de administración de derechos y sistema de cifrado de archivos" (PDF) . presentación . Microsoft . Consultado el 2 de octubre de 2007 .[ enlace muerto ]
  11. ^ "Sistema de archivos de cifrado". documentación . Microsoft. 2007-04-30. Archivado desde el original el 20 de enero de 2014 . Consultado el 6 de noviembre de 2007 .
  12. ^ ab "Cambios en la funcionalidad de Windows Server 2003 con SP1 a Windows Server 2008: cifrado del sistema de archivos". documentación . Microsoft. 2007-09-01. Archivado desde el original el 25 de marzo de 2008 . Consultado el 6 de noviembre de 2007 .
  13. ^ Scott Field (junio de 2006). "Mejoras de seguridad de Microsoft Windows Vista" (DOC) . documento técnico . Microsoft . Consultado el 14 de junio de 2007 .
  14. ^ Corporación Microsoft (30 de noviembre de 2006). "Protocolo de comunicación de datos". patente . Microsoft . Consultado el 14 de junio de 2007 .
  15. ^ "Cambios en EFS". Microsoft TechNet . Consultado el 2 de mayo de 2009 .
  16. ^ "[MS-FSCC]: Apéndice B: Comportamiento del producto". Microsoft. 2017-09-15 . Consultado el 2 de octubre de 2017 . Se agregó compatibilidad con FAT y EXFAT en el sistema operativo Windows 10 v1607 y Windows Server 2016 y posteriores.
  17. ^ Muller, Randy (mayo de 2006). "Cómo funciona la TI: cifrado del sistema de archivos". Revista TechNet . Microsoft . Consultado el 22 de mayo de 2009 .

Lectura adicional