BitLocker y la seguridad • Introducción • ¿Qué és BitLocker Drive Encryption? • ¿Qué necesito para utilizar BitLocker? • ¿Cómo funciona BitLocker? • Facilidad de uso vs Seguridad • Ventajas y desventajas de BitLocker • Conclusiones • Glosario • Revisión histórica Introducción El robo de equipos de cómputo son cotidianamente tema noticiosos, tanto que resulta robo de equipos de cómputo, lo cual se podría tomar como algo natural y sin importancia, pero adquieren relevancia cuando éstos contienen información confidencial de miles de usuarios, datos sobre proyectos importantes, información de las empresas, entre otras crisis. Esta realidad llevó a Microsoft a crear una herramienta que proteja los datos importantes de sus clientes mediante la tecnología de cifrado denominada BitLocker Drive Encryption. Es importante señalar que este tipo de herramientas no es algo novedoso, pues ya existen otras libres y comerciales que proporcionan características similares. Algunos ejemplos son: TrueCrypt y PGP Desktop. ¿Qué és BitLocker Drive Encryption? Windows Vista o anteriormente conocido como Longhorn es el nuevo sistema operativo de Microsoft, el cual fue mejorado sustancialmente en cuestiones de seguridad, para ello, Microsoft conformó diversos equipos capacitados en seguridad informática, además se asesoró por especialistas con el propósito de minimizar las vulnerabilidades de este nuevo sistema operativo. BitLocker Drive Encryption, en la cual, enfocaremos el presente documento. BitLocker Drive Encryption es una herramienta de seguridad cuya finalidad es proteger los datos de los usuarios contra robo o pérdida de equipos de cómputo. BitLocker se auxilia de un módulo ubicado en la tarjeta madre denominado Trusted Platform Module ó TPM que se encarga de almacenar las claves de cifrado. Fue desarrollada internamente por Microsoft e introducida en Windows Vista y Windows Server Longhorn. De acuerdo con declaraciones de Microsoft, BitLocker no será agregado a versiones anteriores de Windows ni ofrecido como producto independiente. BitLocker se puede implementar tanto en las arquitecturas x86 como x64. Figura 2.1 Esquema general de BitLocker. ¿Qué necesito para utilizar BitLocker? Para llevar a cabo la implementación de BitLocker es necesario contar con lo siguiente: • Un equipo con Windows Vista Ultimate, Windows Vista Enterprise ó Windows Server Longhorn. Un procesador moderno (Pentium 4, Xeon, etc.) con una velocidad mínima de 800 MHz. 512 MB de RAM como mínimo. Una tarjeta gráfica capaz de soportar DirectX 9 y controladores Windows Display Driver Model (WDDM). Un chip TPM versión 1.2. Nota: El chip TPM es opcional, ya que se puede utilizar una USB para almacenar la clave de cifrado o en su defecto teclear una clave numérica de 8 cifras de 6 dígitos de longitud cada una, la cual tiene que ser proporcionada al configurar BitLocker Importante. Se realizaron pruebas con la versión en español de Vista Ultimate 5744 RC2, pero ésta requería forzosamente el chip TPM, por lo que no se pudo continuar con más pruebas de la versión en español de Windows Vista y BitLocker. • Dos particiones NTFS: ♦ Una partición que almacene el Volumen del Sistema Operativo (SO) o Volumen de Arranque del Sistema. Contiene el sistema operativo Windows y debe tener el sistema de archivos NTFS. Es el único que se protege con BitLocker. ♦ Una partición que almacene el Volumen del Sistema. Contiene los archivos que especifican el hardware y son necesarios para iniciar Windows. Para que BitLocker funcione correctamente el Volumen del Sistema no debe estar cifrado y debe tener el sistema de archivos NTFS. Debe ser de al menos de 1.5 Gigabytes. Los datos contenidos en él estarán protegidos por BitLocker. • Configuración del BIOS para iniciar del disco duro y no de un USB o CDROM. Opcional: dispositivo para validar el inicio del sistema, éste debe ser una memoria USB para almacenar la clave de cifrado. Figura 3.1 Diseño del disco duro. ¿Cómo funciona BitLocker? BitLocker realiza un cifrado completo del volumen del sistema operativo usando el algoritmo de cifrado AES. Éste puede ser configurado con una clave de 128 o 256 bits mediante las políticas de grupo. BitLocker está habilitado de forma predeterminada en las ediciones cliente de Windows Vista Ultimate y Windows Vista Enterprise, pero no pasa lo mismo en Windows Server Longhorn donde es necesario instalarlo. El cifrado y descifrado de los datos es transparente para los usuarios y sólo afecta en un 10 por ciento aproximadamente el rendimiento del equipo cuando realiza el descifrado de los datos. Este tipo de cifrado es independiente a Encrypted File System (EFS), pues éste hace un cifrado por archivos. EFS puede funcionar como protección adicional a nuestros archivos. Es importante mencionar que BitLocker no afecta directamente a las demás aplicaciones del sistema, por lo que el usuario podrá compartir recursos en la red, imprimir, usar aplicaciones, entre otras tareas, de manera normal. BitLocker únicamente puede ejecutar el cifrado sobre el Volumen del Sistema Operativo, no así en otros volúmenes, discos duros o dispositivos removibles. Este cifrado permite mantener protegido al equipo contra herramientas que traten de obtener información de las contraseñas de los usuarios y el System Key ó Syskey (si es que se tiene implementado). De igual forma, si el disco es montado en otro equipo, el volumen cifrado por BitLocker no podrá ser accedido como sucedía en versiones anteriores de Windows, lo que proporciona una mayor seguridad para la información. BitLocker no sólo depende de la robustez del cifrado, sino del empleo de contraseñas fuertes en el equipo para aumentar la seguridad del sistema y evitar ataques de fuerza bruta directamente en el equipo. Después de realizar el cifrado del Volumen del Sistema Operativo a través de BitLocker, el procedimiento que se lleva a cabo en cada reinicio es el siguiente: • Se inicializa el chip TPM (en el caso de que se cuente con él). • BitLocker utiliza el chip TPM para coleccionar medidas de múltiples fuentes como el BIOS, MBR, BootSector (Sector de Arranque) y el BootBlock (Bloque de Arranque). Todos estos elementos se encuentran dentro del proceso de arranque y en conjunto crean una pequeña huella digital del sistema. ésta permanece inmutable, l a menos que el sistema de arranque sea alterado. Una vez verificado el sistema de arranque, BitLocker utiliza el chip TPM para descifrar el resto de los datos. BitLocker confía en el TPM para restringir el acceso a la colección de medidas que contiene. • Cuando se llega al BootManager (Manejador de Cargado) del sistema operativo, anteriormente el boot.ini, se tiene la posibilidad de no arrancar, pedir una contraseña de arranque ó utilizar la clave que se tiene para descifrar el volumen. • Posteriormente, se continúa con la carga del sistema y la protección del sistema se vuelve responsabilidad del sistema operativo. Figura 4.1 Proceso de carga del sistema operativo. El TPM garantiza que el sistema de arranque se vuelva una cadena de confianza y si algún eslabón de la cadena es roto o sustituido, el sistema no continuará su proceso de inicio. La siguiente figura muestra cómo es cifrado el contenido del volumen a través de una FVEK (Full Volume Encryption Key), la cuales cifrada simultáneamente con una VMK (Volume Master Key). El empleo de una VMK es un método indirecto para proteger los datos del volumen del disco; la adición de la VMK, permite al sistema recrearse fácilmente cuando las claves previas en la cadena de confianza son pérdidas o comprometidas, esto ayuda a evitar el desgaste del descifrado y volver a cifrar el volumen completo. Figure 4.2 Relaciones entre las diferentes claves en BitLocker. Una vez que BitLocker autentifica el acceso para el Volumen del Sistema Operativo protegido, un controlador de dispositivos en la pila del sistema de archivos de Windows Vista cifra y descifra de manera transparente los sectores del disco cuando los datos son escritos o leídos. Cuando el equipo Hiberna, el archivo de hibernación se almacena en el volumen cifrado. Al regresar de la hibernación, el sistema es tratado casi exactamente como en el proceso de arranque: el archivo generado por la hibernación es descifrado al regreso de ésta. El consumo de recursos por el cifrado y descifrado debería ser mínimo, y el proceso transparente en la mayoría de los casos. Los administradores pueden configurar remotamente BitLocker de forma local, a través de un asistente o con una interfaz WMI en Windows Vista. Ésta incluye una funcionalidad administrativa para iniciar, pausar y continuar con el cifrado del volumen del disco, y para configurar como la FVEK es protegida. El script administrativo manage-bde.wsf, disponible en Windows Vista y Windows Server Longhorn, permite a los administradores gestionar y verificar de manera simple el estado del disco, además de realizar una recuperación de los datos debido a una falla del hardware. A través de este script se puede desbloquear, deshabilitar y descifrar el volumen proporcionando las credenciales de recuperación. Facilidad de uso vs Seguridad BitLocker proporciona a los usuarios seguridad de sus datos en caso de robo o pérdida de equipos. BitLocker puede implementarse de acuerdo a las necesidades del usuario o de la organización debido a dos aspectos: Facilidad de uso vs Seguridad, como se muestra en la siguiente figura: Figura 5.1 Espectro de protección. Como se puede observar en la figura, el uso único de TPM es la forma más fácil de implementar BitLocker pero no es la más segura debido a que es factible un ataque de hardware al TPM. En el sentido opuesto, se encuentra que el uso de TPM + Dispositivo para validar presenta la mayor seguridad, pero su uso no es fácil. Lo que hay que tomar en cuenta al implementar cualquiera de los escenarios es el valor de nuestra información y que se adapte a nuestras necesidades, por ejemplo: • Si nuestra información es valiosa, pero se dificulta almacenar en un lugar seguro el dispositivo de validación, o me molesta recordar contraseñas (un PIN), es obvio que la mejor opción es usar únicamente un chip TPM. • Si nuestra información es importante y nos es fácil recordar contraseñas (un PIN), pero se nos dificulta almacenar en un lugar seguro nuestro dispositivo para validar, por lo tanto la mejor opción sería un chip TPM + PIN. Estos fueron algunos ejemplos de los factores que debemos tomar en cuenta pero no son los únicos, también debemos tomar en cuenta el factor humano. Por ejemplo, si se desea implementar una opción donde se requiere el uso de PIN o dispositivo para validar, es necesario que alguna persona se encuentre frente al equipo para introducir el PIN o dispositivo para validar si el equipo es reiniciado. Posiblemente en un equipo personal o de trabajo no sería algo complicado, pero en el caso de que se implemente BitLocker en un servidor con Windows Server Longhorn es necesario proporcionarle a una persona de confianza los medios necesarios para reiniciar el sistema en caso de ausencia del administrador o de la persona encargada de tales medios para validar el inicio. Ventajas y desventajas de BitLocker Como en todo software, se pueden encontrar ventajas y desventajas de uso del producto, a continuación se presentan algunas: Ventajas • Protege los datos del Volumen de Sistema Operativo de ataques fuera de línea, es decir, aquellos que consisten en montar el disco duro en otro equipo y utilizar distintas herramientas con el propósito de obtener información (por ejemplo, cuentas de usuario y sus respectivas contraseñas). • Asegura la integridad del proceso de arranque, lo que permite mantener protegido al sistema contra virus o rootkits. • Bloquea el sistema cuando es alterado, es decir, si alguno de los archivos monitoreado es perturbado, el sistema no arrancará. Esto permite mantener alertado al usuario sobre intentos de alterar el sistema. • Permite fácilmente el reciclaje de equipos, lo que reduce el tiempo de eliminación de datos del disco para evitar sean recuperados por software de terceros. Sólo debe eliminarse la clave de acceso requerida para ingresar al disco. Desventajas • Sólo se puede realizar el cifrado del Volumen del Sistema Operativo. No así a otros volúmenes, discos duros o dispositivos removibles. • Es necesario implementarlo desde la instalación de Windows Vista, pues se requieren dos particiones del disco duro y algunas otras condiciones. • Puede presentar problemas en su implementación, desde la partición del disco con errores al usar algunos comandos o al no realizar correctamente la verificación de errores del volumen. • Carece de un método para implementar BitLocker en un sistema de producción con Windows Vista instalado en una sola partición. Es importante señalar que en versiones previas se podía realizar la implementación de BitLocker en un ambiente que careciera del requisito de las dos particiones, pero el proceso era laborioso y complicado, en algunos casos era casi imposible de realizar, por lo que aparentemente Microsoft desechó esta opción. • Dificulta el multi-boot (mantener instalados varios sistemas operativos en un sólo disco). • Aparentemente BitLocker no funciona adecuadamente en todos los idiomas, debido a que las pruebas realizadas en la versión de Vista Ultimate Build 5744 en Español no pudieron realizarse de manera adecuada al ser requisito indispensable contar con el chip TPM. Se trató de contactar al equipo de BitLocker pero no se obtuvo una respuesta satisfactoria. Conclusiones BitLocker Drive Encryption es una nueva herramienta en Windows Vista para asegurar datos en equipo críticos, por ejemplo equipos móviles, de escritorio o servidores con información importante. Debido a que BitLocker es una nueva aplicación en el mercado de la seguridad informática, se le han detectado varias ventajas y desventajas que con el tiempo el equipo de seguridad de Microsoft mejorará, y hará que ésta vaya ganando adeptos. Debe de representar una buena opción para asegurar los datos de los usuarios, ya que existe en el mercado gran diversidad de herramientas con años de experiencia en este tipo de tareas. Al ser nueva, BitLocker se centrará en usuarios caseros, quienes enfrentarán la gran desventaja de BitLocker, su instalación, la cual resulta muy complicada para un usuario promedio, por lo que se requerirá que mejore y facilite la forma de implementarlo. El tipo de cifrado es uno de los más robustos actualmente, lo cual ayuda a mejorar la seguridad en los datos. Como todo software de esta categoría, el rendimiento el equipo disminuirá, pero no será perceptible para el usuario (dependiendo del procesador y de la memoria RAM con la que cuente el equipo). BitLocker promete facilitar la implementación de mecanismos de cifrado debido a que pertenece a Microsoft, lo cual hará se incremente la compatibilidad tanto en versiones de servidor como en versiones cliente. Glosario • AES, Advanced Encryption Standard. Es un esquema de cifrado por bloques adoptado como un estándar de cifrado simétrico por el gobierno de Estados Unidos. Garantiza la seguridad debido a que es inmune a los ataques conocidos y cuenta con un diseño simple que puede ser implementado en dispositivos como tarjetas inteligentes y procesadores en paralelo. • Clave de Inicio. Clave almacenada en un dispositivo USB, el cual debe ser insertado cada vez que la computadora inicia. La clave de inicio es usada para proporcionar otro factor de protección en conjunto con la autenticación del chip TPM. • Clave de recuperación. La clave es usada para recuperar datos cifrados en el volumen BitLocker. Esta clave es criptográficamente equivalente a un clave de inicio del equipo de cómputo. Si está disponible, la clave de recuperación descifra la VMK, la cual a su vez, descifra la FVEK. • Contraseña de recuperación. Contraseña numérica que consiste de 48 dígitos divididos en 8 grupos. Cada grupo de dígitos es verificado por un mod-11 antes de ser comprimidos dentro de sus correspondientes 16 bits de datos de frase de contraseña. Una copia de los datos de la frase de contraseña es almacenada en el disco cifrado por la VMK, y de esta manera la contraseña de recuperación puede ser recuperada por un administrador después de que Windows Vista ha sido cargado. • EFS, Encrypting File System. Es un sistema de cifrado que realiza el cifrado y descifrado mediante un esquema basado en claves públicas. Los datos del archivo se cifran con un algoritmo simétrico y una clave de cifrado de archivos, esta clave se genera de manera aleatoria. Este método de cifrado funciona sólo en sistemas de archivos NTFS y viene como una característica adicional de los sistemas Windows. • FVEK, Full Volume Encryption. Clave de algoritmo específico para cifrar (y opcionalmente, difusor) los datos en los sectores del disco. Actualmente esta clave puede variar entre 128 y 512 bits. La configuración predeterminada en el algoritmo de cifrado usada en el Volumen del Disco es AES de 128 bits con Difusión. • Hibernación. Es un estado en el cual el sistema puede ahorrar energía o batería, guardando una imagen del escritorio con todos los archivos y documentos abiertos para finalmente desconectar la alimentación del equipo. Cuando la alimentación vuelve a conectarse, los archivos y documentos se abrirán en el escritorio en la misma ubicación y estando en la misma ubicación en que se encontraban. • PIN, Personal Idetification Number. Es un número secreto para administrar cuentas o dispositivos, que debe ser introducido cada vez que la computadora inicia, (o cuando regresa de una hibernación). El PIN puede tener entre 4 a 20 dígitos, e internamente es almacenado como un hash de 256 bits. Este valor nunca es desplegado al usuario por ninguna forma o medio. El PIN es usado para proporcionar otro factor de protección en conjunto con la autenticación TPM. • System Key, Syskey. Proporciona una línea de defensa adicional frente al software para descifrar contraseñas sin conexión. Syskey utiliza técnicas de cifrado de alta seguridad para garantizar la seguridad de la información de contraseñas de cuentas almacenada en el SAM. • TPM, Trusted Platform Module. Es un chip que proporciona seguridad basada en hardware. La versión 1.2 del TPM es compatible con la actualización del BIOS, lo que proporciona un manejo del cifrado con la verificación de la integridad de los componentes que permiten iniciar el sistema y también hace que el proceso sea transparente. • VMK, Volume Master Key. Clave usada para cifrar la FVEK. • Volumen del Sistema. Es el primer volumen al que se accede cuando la computadora es encendida. Contiene los archivos del hardware específico que son necesarios para cargar Windows e incluir el BootManager de la computadora (para cargar múltiples sistemas operativos). En general, puede que sea, aunque no obligatoriamente, el mismo volumen del sistema operativo, sin embargo, para que BitLocker funcione, éste debe estar apartado del volumen del sistema operativo y también, no deber estar cifrado. • Volumen del sistema operativo. Un volumen que contiene un sistema operativo (por ejemplo, alguna de las versiones de Windows) que pueda ser cargado por el BootManager de la computadora. éste será el protegido por BitLocker. • WMI, Instrumental de administración de Windows. Es la implementación de Microsoft de Web-Based Enterprise Management (WBEM), una iniciativa del sector que pretende establecer normas estándar para tener acceso y compartir la información de administración a través de una red empresarial. WMI proporciona compatibilidad integrada para el Modelo de Información Común (CIM), el cual describe los objetos existentes en un entorno de administración. Referencias Microsoft Connect http://connect.microsoft.com/ Windows BitLocker Drive Encryption Step-by-Step Guide http://technet2.microsoft.com/WindowsVista/en/library/c61f2a12-8ae6-4957-b031-97b4d762cf311033.mspx?m BitLocker Drive Encryption: Technical Overview http://www.microsoft.com/technet/windowsvista/security/bittech.mspx BitLocker Drive Encryption Frequently Asked Questions http://www.microsoft.com/technet/windowsvista/security/bitfaq.mspx Windows Vista Beta 2 BitLocker Drive Encryption Step-by-Step Guide http://www.microsoft.com/technet/windowsvista/library/c61f2a12-8ae6-4957-b031-97b4d762cf31.mspx Exclusive: Q&A with the Windows Vista BitLocker Team http://windowsconnected.com/blogs/joshs_blog/archive/2006/03/03/1144.aspx BitLocker Team Chat - 2006-04-28 http://windowsconnected.com/forums/thread/2860.aspx Microsoft's BitLocker http://www.schneier.com/blog/archives/2006/05/bitlocker.html Microsoft http://www.microsoft.com/ Revisión histórica • Liberación original: 24-Ene-2007 • Última revisión: 7 de octubre de 2010 La Subdirección de Seguridad de la Información/UNAM-CERT agradece el apoyo en la elaboración y revisión de este documento a: • Juan López Morales • Jesús Ramón Jiménez Rojas • Galvy Cruz Valencia • Andrés Leonardo Hernández Bermúdez Para mayor información acerca de éste documento de seguridad contactar a: UNAM-CERT Equipo de Respuesta a Incidentes UNAM Subdirección de Seguridad de la Información Dirección General de Cómputo y de Tecnologías de Información y Comunicación Universidad Naciónal Autónoma de México E-Mail: seguridad@seguridad.unam.mx http://www.cert.org.mx http://www.seguridad.unam.mx ftp://ftp.seguridad.unam.mx Tel: 56 22 81 69 Fax: 56 22 80 43