Guía de recuperación de BitLocker
Se aplica a:
- Windows 10
- Windows 11
- Windows Server 2016 y superior
En este artículo se describe cómo recuperar claves de BitLocker de AD DS.
Las organizaciones pueden usar la información de recuperación de BitLocker guardada en Active Directory Domain Services (AD DS) para obtener acceso a los datos protegidos con BitLocker. Se recomienda crear un modelo de recuperación para BitLocker al planear la implementación de BitLocker.
En este artículo se supone que se entiende cómo configurar AD DS para realizar copias de seguridad de la información de recuperación de BitLocker automáticamente y qué tipos de información de recuperación se guardan en AD DS.
En este artículo no se detalla cómo configurar AD DS para almacenar la información de recuperación de BitLocker.
¿Qué es la recuperación de BitLocker?
La recuperación de BitLocker es el proceso por el que se puede restaurar el acceso a una unidad protegida por BitLocker si la unidad no se puede desbloquear normalmente. En un escenario de recuperación, están disponibles las siguientes opciones para restaurar el acceso a la unidad:
El usuario puede proporcionar la contraseña de recuperación. Si la organización permite a los usuarios imprimir o almacenar contraseñas de recuperación, los usuarios pueden escribir en la contraseña de recuperación de 48 dígitos que imprimiron o almacenaron en una unidad USB o con una cuenta de Microsoft en línea. Solo se permite guardar una contraseña de recuperación con una cuenta de Microsoft en línea cuando se usa BitLocker en un equipo que no es miembro de un dominio.
Los agentes de recuperación de datos pueden usar sus credenciales para desbloquear la unidad. Si la unidad es una unidad de sistema operativo, se debe montar la unidad como una unidad de datos en otro equipo para que el agente de recuperación de datos la desbloquee.
Un administrador de dominio puede obtener la contraseña de recuperación de AD DS y usarla para desbloquear la unidad. Se recomienda almacenar contraseñas de recuperación en AD DS para proporcionar una manera para que los profesionales de TI puedan obtener contraseñas de recuperación para las unidades de una organización si es necesario. Este método hace que sea obligatorio habilitar este método de recuperación en la configuración de directiva de grupo de BitLocker Elija cómo se pueden recuperar las unidades del sistema operativo protegidas por BitLocker ubicadas enPlantillas> administrativas de configuración> del equipoComponentes> de WindowsUnidades de sistema operativo de cifrado > deunidad BitLockeren el Editor de directiva de grupo local. Para obtener más información, vea Configuraciones de las directivas de grupo de BitLocker.
¿Qué causa la recuperación de BitLocker?
En la siguiente lista se proporcionan ejemplos de eventos específicos que harán que BitLocker entre en modo de recuperación al intentar iniciar la unidad del sistema operativo:
En los equipos que usan el Cifrado de unidad BitLocker o en dispositivos como tabletas o teléfonos que solo usan el Cifrado de dispositivo BitLocker, cuando se detecta un ataque, el dispositivo se reiniciará inmediatamente y entrará en el modo de recuperación de BitLocker. Para aprovechar esta funcionalidad, los administradores pueden establecer el valor De seguridad Inicio de sesión interactivo: Umbral de bloqueo de cuenta de equipo directiva de grupo que se encuentra en Configuración del equipo>Configuración de> Windows Opciones deseguridadDirectivas>>localesen el Editor de directiva de grupo local. O bien, pueden usar la directiva MaxFailedPasswordAttempts de Exchange ActiveSync (también configurable a través de Microsoft Intune),para limitar el número de intentos fallidos de contraseña antes de que el dispositivo entre en bloqueo de dispositivos.
En dispositivos con TPM 1.2, cambiar el orden del dispositivo de inicio de firmware o BIOS provoca la recuperación de BitLocker. Sin embargo, los dispositivos con TPM 2.0 no inician la recuperación de BitLocker en este caso. TPM 2.0 no considera un cambio de firmware del orden del dispositivo de arranque como una amenaza de seguridad porque el cargador de arranque del sistema operativo no está en peligro.
Tener a la unidad de CD o de DVD antes que el disco duro en el orden de arranque del BIOS y después insertar o quitar un CD o DVD.
No poder arrancar desde una unidad de red antes de arrancar desde el disco duro.
Acoplar o desacoplar un equipo portátil. En algunos casos (según el fabricante del equipo y el BIOS), la condición de acoplamiento del equipo portátil es parte de la medición del sistema y debe ser coherente para validar el estado del sistema y desbloquear BitLocker. Por lo tanto, si un equipo portátil está conectado a su estación de acoplamiento cuando BitLocker está activado, es posible que también tenga que estar conectado a la estación de acoplamiento cuando esté desbloqueado. Por el contrario, si un equipo portátil no está conectado a su estación de acoplamiento cuando BitLocker está activado, es posible que tenga que desconectarse de la estación de acoplamiento cuando se desbloquee.
Cambios en la tabla de partición NTFS en el disco, incluida la creación, eliminación o cambio del tamaño de una partición principal.
Escribir el número de identificación personal (PIN) incorrectamente demasiadas veces, por lo que se activa la lógica de protección contra ataques de repetición (hammering) del TPM. La lógica de protección contra ataques de repetición (hammering) es una serie de métodos de software o hardware que aumentan la dificultad y el costo de un ataque por fuerza bruta contra un PIN al no aceptar entradas de PIN hasta que haya transcurrido una determinada cantidad de tiempo.
Desactivar la compatibilidad para leer el dispositivo USB en el entorno de arranque previo desde el firmware de BIOS o UEFI si se usan claves basadas en USB en lugar de un TPM.
Desactivar, deshabilitar o borrar el TPM.
Actualizar los componentes de inicio anticipado críticos, como una actualización de firmware UEFI o BIOS, que cause cambios en las mediciones de inicio relacionadas.
Olvidar el PIN cuando la autenticación con PIN está habilitada.
Actualizar el firmware de ROM de opción.
Actualizar el firmware de TPM.
Agregar o quitar hardware; por ejemplo, insertar una tarjeta nueva en el equipo, incluidas algunas tarjetas inalámbricas PCMIA.
Quitar, insertar o descargar completamente una batería inteligente de un equipo portátil.
Cambios en el registro de inicio principal del disco.
Cambios en el administrador de inicio del disco.
Ocultar el TPM del sistema operativo. Algunas opciones de configuración de BIOS o UEFI pueden usarse para evitar la enumeración del TPM en el sistema operativo. Cuando se implementa, esta opción puede hacer que se oculte el TPM del sistema operativo. Cuando el TPM está oculto, se deshabilita el inicio seguro del BIOS y UEFI y el TPM no responde a los comandos de ningún software.
Usar un teclado diferente que no escriba correctamente el PIN o cuyo mapa de teclado no coincida con el mapa de teclado asumido por el entorno de arranque previo. Este problema puede impedir la entrada de PIN mejorados.
Modificar los registros de configuración de la plataforma (PCR) que usa el perfil de validación del TPM. Por ejemplo, incluir PCR[1] daría lugar a que BitLocker mida la mayoría de los cambios en la configuración del BIOS, lo que hace que BitLocker entre en modo de recuperación incluso cuando cambie la configuración crítica del BIOS que no es de arranque.
Nota
Algunos equipos tienen configuraciones de BIOS que omiten las medidas de determinados PCR, como PCR[2]. Si se cambia esta configuración en el BIOS, BitLocker entraría en modo de recuperación, ya que la medición del PCR sería diferente.
Mover la unidad protegida con BitLocker a un equipo nuevo.
Actualizar la placa base a una nueva, con un nuevo TPM.
Perder la unidad flash USB que contiene la clave de inicio cuando la autenticación con clave de inicio está habilitada.
No superar la prueba automática de TPM.
Tener un BIOS, un firmware UEFI o un componente rom de opción que no sea compatible con los estándares pertinentes de Trusted Computing Group para un equipo cliente. Por ejemplo, una implementación no compatible puede registrar datos volátiles (como la hora) en las mediciones del TPM, lo que causaría diferentes mediciones en cada inicio y haría que BitLocker se iniciara en modo de recuperación.
Cambiar la autorización de uso para la clave raíz de almacenamiento del TPM a un valor que no sea cero.
Nota
El proceso de inicialización del TPM de BitLocker establece el valor de autorización de uso en cero, por lo que otro usuario o proceso debe cambiar explícitamente este valor.
Deshabilitar la comprobación de integridad del código o habilitar la firma de prueba en el Administrador de inicio de Windows (Bootmgr).
Presionar la tecla F8 o F10 durante el proceso de inicio.
Agregar o quitar tarjetas de complementos (como tarjetas de vídeo o de red), o actualizar el firmware de las tarjetas de complementos.
Usar una tecla de acceso rápido de BIOS durante el proceso de inicio para cambiar el orden de inicio a otra unidad que no sea el disco duro.
Nota
Antes de comenzar la recuperación, se recomienda determinar qué causó la recuperación. Esto puede ayudar a evitar que el problema vuelva a ocurrir en el futuro. Por ejemplo, si se determina que un atacante ha modificado el equipo mediante la obtención de acceso físico, se pueden crear nuevas directivas de seguridad para realizar el seguimiento de quién tiene presencia física. Una vez que se ha usado la contraseña de recuperación para recuperar el acceso al equipo, BitLocker vuelve a establecer la clave de cifrado en los valores actuales de los componentes medidos.
Para escenarios planeados, como actualizaciones conocidas de hardware o firmware, el inicio de la recuperación se puede evitar mediante la suspensión temporal de la protección de BitLocker. Como suspender BitLocker deja la unidad completamente cifrada, el administrador puede reanudar rápidamente la protección de BitLocker una vez completada la tarea planeada. Usar la suspensión y reanudación también cierra la clave de cifrado de nuevo sin necesidad de escribir la clave de recuperación.
Nota
Si se suspende, BitLocker reanudará automáticamente la protección al reiniciar el equipo, a menos que se especifique un recuento de reinicio mediante la herramienta de línea de comandos manage-bde.
Si el mantenimiento de software requiere que el equipo se reinicie y se use la autenticación en dos fases, la característica de desbloqueo de red de BitLocker se puede habilitar para proporcionar el factor de autenticación secundario cuando los equipos no tienen un usuario local para proporcionar el método de autenticación adicional.
La recuperación se ha descrito en el contexto del comportamiento no planeado o no deseado. Sin embargo, la recuperación también puede deberse a un escenario de producción previsto, por ejemplo, para administrar el control de acceso. Cuando los equipos de escritorio o portátiles se vuelven a implementar en otros departamentos o empleados de la empresa, BitLocker se puede forzar en la recuperación antes de que el equipo se dé a un nuevo usuario.
Pruebas de recuperación
Antes de crear un proceso de recuperación completo de BitLocker, se recomienda probar cómo funciona el proceso de recuperación tanto para los usuarios finales (personas que llaman al departamento de soporte técnico para la contraseña de recuperación) como para los administradores (personas que ayudan al usuario final a obtener la contraseña de recuperación). El -forcerecovery
comando de es una manera fácil de recorrer el proceso de recuperación antes de que los usuarios encuentren una situación de manage-bde.exe
recuperación.
Para forzar una recuperación del equipo local:
Seleccione el botón Inicio y escriba cmd.
Seleccione con el botón derecho en cmd.exe o símbolo del sistema y, a continuación, seleccione Ejecutar como administrador.
En el símbolo del sistema, escriba el siguiente comando:
manage-bde.exe -forcerecovery <BitLockerVolume>
Para forzar la recuperación de un equipo remoto:
Seleccione el botón Inicio y escriba cmd.
Seleccione con el botón derecho en cmd.exe o símbolo del sistema y, a continuación, seleccione Ejecutar como administrador.
En el símbolo del sistema, escriba el siguiente comando:
manage-bde.exe -ComputerName <RemoteComputerName> -forcerecovery <BitLockerVolume>
Nota
La recuperación activada por
-forcerecovery
persiste durante varios reinicios hasta que se agrega un protector TPM o el usuario suspende la protección. Al usar dispositivos con espera moderna (por ejemplo, dispositivos Surface), no se recomienda la opción-forcerecovery
porque BitLocker tendrá que desbloquearse y deshabilitarse manualmente desde el entorno de WinRE antes de que el sistema operativo pueda volver a iniciarse. Para obtener más información, ve Solución de problemas de BitLocker: Bucle de reinicie continuo con la recuperación de BitLocker en un dispositivo de pizarra.
Planeamiento del proceso de recuperación
Al planear el proceso de recuperación de BitLocker, consulte primero los procedimientos recomendados actuales de la organización para recuperar información confidencial. Por ejemplo: ¿Cómo controla la empresa las contraseñas perdidas de Windows? ¿Cómo realiza la organización el restablecimiento del PIN de tarjeta inteligente? Estos procedimientos recomendados y recursos relacionados (personas y herramientas) se pueden usar para ayudar a formular un modelo de recuperación de BitLocker.
Las organizaciones que dependen del cifrado de unidad BitLocker y BitLocker To Go para proteger datos en un gran número de equipos y unidades extraíbles que ejecutan los sistemas operativos Windows 11, Windows 10 o Windows 8 o Windows 7 y Windows To Go deben plantearse el uso de la herramienta Microsoft BitLocker Administration and Monitoring (MBAM) versión 2.0, que se incluye en Microsoft Desktop Optimization Pack (MDOP) para Microsoft Software Assurance. MBAM hace más fáciles de implementar y administrar las implementaciones de BitLocker y permite a los administradores proporcionar y supervisar cifrado para unidades fijas y de sistema operativo. MBAM pregunta al usuario antes de cifrar las unidades fijas. MBAM también administra las claves de recuperación para las unidades fijas y extraíbles, facilitando la administración de la recuperación. MBAM puede usarse como parte de una implementación de Microsoft System Center o como una solución independiente. Para obtener más información, ve aAdministración y supervisión de Microsoft BitLocker.
Después de que se haya iniciado una recuperación de BitLocker, los usuarios pueden usar una contraseña de recuperación para desbloquear el acceso a los datos cifrados. Tenga en cuenta los métodos de recuperación automática y recuperación de contraseñas para la organización.
Cuando se determina el proceso de recuperación:
Familiarícese con cómo se puede recuperar una contraseña de recuperación. Ve:
Determinar una serie de pasos posteriores a la recuperación, como analizar las causas de la recuperación y restablecer la contraseña de recuperación. Ve:
Recuperación automática
En algunos casos, los usuarios podrían tener la contraseña de recuperación en una copia impresa o una unidad flash USB y poder realizar la recuperación automática. Se recomienda que la organización cree una directiva para la recuperación automática. Si la recuperación automática incluye el uso de una contraseña o una clave de recuperación almacenada en una unidad flash USB, se debe advertir a los usuarios de que no almacenen la unidad flash USB en el mismo lugar que el EQUIPO, especialmente durante el viaje. Por ejemplo, si tanto el equipo como los elementos de recuperación están en la misma bolsa, sería fácil que un usuario no autorizado pudiera obtener acceso al equipo. Otra directiva a tener en cuenta es que los usuarios se pongan en contacto con el servicio de asistencia antes o después de realizar la recuperación automática para que se pueda identificar la causa raíz.
Recuperación de la contraseña de recuperación
Si el usuario no tiene una contraseña de recuperación impresa o en una unidad flash USB, el usuario tendrá que poder recuperar la contraseña de recuperación de un origen en línea. Si el equipo es miembro de un dominio, se puede hacer una copia de seguridad de la contraseña de recuperación en AD DS. Sin embargo, la copia de seguridad de la contraseña de recuperación en AD DS no se realiza de forma predeterminada. La copia de seguridad de la contraseña de recuperación en AD DS debe configurarse mediante la configuración de directiva de grupo adecuada antes de habilitar BitLocker en el equipo. La configuración de la directiva de grupo de BitLocker se puede encontrar en el Editor de directiva de grupo local o en la Consola de administración de directiva de grupo (GPMC) en Configuración >del equipoPlantillas> administrativasComponentes> de WindowsCifrado de unidad BitLocker. Las siguientes configuraciones de directiva definen los métodos de recuperación que pueden ser usados para restaurar el acceso a una unidad protegida con BitLocker si se produce un error o no puede usarse un método de autenticación.
Elegir cómo se pueden recuperar unidades del sistema operativo protegidas con BitLocker
Elegir cómo se pueden recuperar unidades fijas protegidas por BitLocker
Elegir cómo se pueden recuperar unidades extraíbles protegidas por BitLocker
En cada una de estas directivas, seleccione Guardar información de recuperación de BitLocker para Servicios de dominio de Active Directory y, a continuación, elija qué información de recuperación de BitLocker almacenar en AD DS. Active la casilla No habilitar BitLocker hasta que la información de recuperación se almacene en AD DS si desea impedir que los usuarios habiliten BitLocker a menos que el equipo esté conectado al dominio y la copia de seguridad de la información de recuperación de BitLocker para la unidad a AD DS se realice correctamente.
Nota
Si los equipos forman parte de un grupo de trabajo, se recomienda a los usuarios guardar su contraseña de recuperación de BitLocker con su cuenta de Microsoft en línea. Se recomienda tener una copia en línea de la contraseña de recuperación de BitLocker para ayudar a garantizar que el acceso a los datos no se pierda en caso de que se requiera una recuperación.
El Visor de contraseñas de recuperación de BitLocker para la herramienta Usuarios y equipos de Active Directory permite a los administradores de dominio ver las contraseñas de recuperación de BitLocker para objetos de equipo específicos de Active Directory.
La lista siguiente se puede usar como plantilla para crear un proceso de recuperación para la recuperación de contraseñas de recuperación. Este proceso de muestra usa el Visor de contraseñas de recuperación de BitLocker para la herramienta Usuarios y equipos de Active Directory.
- Registrar el nombre del equipo del usuario
- Comprobar la identidad del usuario
- Buscar la contraseña de recuperación en AD DS
- Recopilar información para determinar por qué se ha producido la recuperación
- Dar al usuario la contraseña de recuperación
Registrar el nombre del equipo del usuario
El nombre del equipo del usuario se puede usar para buscar la contraseña de recuperación en AD DS. Si el usuario no conoce el nombre del equipo, pida al usuario que lea la primera palabra de la etiqueta de unidad en la interfaz de usuario entrada de contraseña de cifrado de unidad bitlocker . Esta palabra es el nombre del equipo cuando BitLocker se ha habilitado y es probablemente el nombre actual del equipo.
Comprobar la identidad del usuario
La persona que solicita la contraseña de recuperación debe comprobarse como el usuario autorizado de ese equipo. También se debe comprobar si el equipo al que el usuario proporcionó el nombre pertenece al usuario.
Buscar la contraseña de recuperación en AD DS
Busque el objeto de equipo con el nombre coincidente en AD DS. Dado que los nombres de objetos de equipo aparecen en el catálogo global de AD DS, el objeto debe poder encontrarse incluso si es un bosque de varios dominios.
Varias contraseñas de recuperación
Si se almacenan varias contraseñas de recuperación en un objeto de equipo en AD DS, el nombre del objeto de información de recuperación de BitLocker incluye la fecha en la que se creó la contraseña.
Para asegurarse de que se proporciona la contraseña correcta o para evitar que se proporcione la contraseña incorrecta, pida al usuario que lea el identificador de contraseña de ocho caracteres que se muestra en la consola de recuperación.
Dado que el identificador de contraseña es un valor único asociado a cada contraseña de recuperación almacenada en AD DS, al ejecutar una consulta con este identificador se encuentra la contraseña correcta para desbloquear el volumen cifrado.
Recopilar información para determinar por qué se ha producido la recuperación
Antes de proporcionar al usuario la contraseña de recuperación, se debe recopilar información que ayude a determinar por qué se necesitaba la recuperación. Esta información se puede usar para analizar la causa principal durante el análisis posterior a la recuperación. Para obtener más información sobre el análisis posterior a la recuperación, consulte Análisis posterior a la recuperación.
Dar al usuario la contraseña de recuperación
Dado que la contraseña de recuperación tiene 48 dígitos, es posible que el usuario tenga que registrar la contraseña escribiendola en otro equipo. Si usa MBAM o Configuration Manager Administración de BitLocker, la contraseña de recuperación se regenerará después de recuperarla de MBAM o Configuration Manager base de datos para evitar los riesgos de seguridad asociados a una contraseña no controlada.
Nota
Dado que la contraseña de recuperación de 48 dígitos es extensa y contiene una combinación de dígitos, el usuario podría oír o escribir mal la contraseña. La consola de recuperación de tiempo de inicio usa números de suma de comprobación integrados para detectar errores de entrada de cada bloque de 6 dígitos de la contraseña de recuperación de 48 dígitos, y ofrece al usuario la oportunidad de corregir estos errores.
Análisis posterior a la recuperación
Cuando se desbloquea un volumen mediante una contraseña de recuperación, se escribe un evento en el registro de eventos y las medidas de validación de la plataforma se restablecen en el TPM para que coincidan con la configuración actual. Desbloquear el volumen significa que la clave de cifrado se ha liberado y está lista para el cifrado sobre la marcha cuando los datos se escriben en el volumen y el descifrado sobre la marcha cuando se leen los datos del volumen. Después de desbloquear el volumen, BitLocker se comporta del mismo modo, independientemente de cómo se haya otorgado el acceso.
Si se observa que un equipo tiene desbloqueos repetidos de contraseña de recuperación, es posible que un administrador quiera realizar un análisis posterior a la recuperación para determinar la causa principal de la recuperación y actualizar la validación de la plataforma BitLocker para que el usuario ya no necesite escribir una contraseña de recuperación cada vez que se inicie el equipo. Para más información, consulta lo siguiente:
Determinar la causa raíz de la recuperación
Si un usuario necesita recuperar la unidad, es importante determinar la causa raíz que inició la recuperación lo antes posible. Analizar el estado del equipo debidamente y detectar alteraciones puede revelar amenazas que tengan implicaciones más amplias para la seguridad de la empresa.
Mientras un administrador investiga de forma remota la causa de la recuperación en algunos casos, el usuario final podría llevar el equipo que contiene la unidad recuperada in situ para analizar aún más la causa raíz.
Revise y responda a las siguientes preguntas de la organización:
¿Qué modo de protección de BitLocker está en vigor (TPM, TPM + PIN, TPM + clave de inicio, solo clave de inicio)? ¿Qué perfil de PCR está en uso en el equipo?
¿El usuario simplemente ha olvidado el PIN o ha perdido la clave de inicio? Si un token se ha perdido, ¿dónde puede estar?
Si el modo TPM estaba en vigor, ¿ha sido un cambio de archivo de inicio el causante de la recuperación?
Si la recuperación se produjo por un cambio en el archivo de arranque, ¿es el cambio de archivo de arranque debido a una acción del usuario prevista (por ejemplo, la actualización del BIOS) o a un software malintencionado?
¿Cuándo fue la última vez que el usuario pudo iniciar el equipo correctamente, y qué podría haber ocurrido en el equipo desde entonces?
¿Es posible que el usuario haya detectado software malintencionado o dejado el equipo desatendido desde el último inicio correcto?
Para responder a estas preguntas, use la herramienta de línea de comandos de BitLocker para ver la configuración actual y el modo de protección:
manage-bde.exe -status
Examine el registro de eventos para buscar eventos que ayuden a indicar por qué se inició la recuperación (por ejemplo, si se produjo un cambio de archivo de arranque). Ambas funcionalidades pueden llevarse a cabo de forma remota.
Resolver la causa raíz
Una vez identificada la causa de la recuperación, se puede restablecer la protección de BitLocker para evitar la recuperación en cada inicio.
Los detalles de este restablecimiento pueden variar en función de la causa raíz de la recuperación. Si no se puede determinar la causa principal o si un software malintencionado o un rootkit podrían haber infectado el equipo, el departamento de soporte técnico debe aplicar directivas de virus de procedimientos recomendados para reaccionar correctamente.
Nota
El restablecimiento del perfil de validación de BitLocker se puede realizar suspendiendo y reanudando BitLocker.
PIN desconocido
Si un usuario ha olvidado el PIN, el PIN debe restablecerse al iniciar sesión en el equipo para evitar que BitLocker inicie la recuperación cada vez que se reinicie el equipo.
Para impedir la recuperación continuada debido a un PIN desconocido
Desbloquea el equipo con la contraseña de recuperación.
Restablece el PIN:
Seleccione y mantenga presionada la unidad y, a continuación, seleccione Cambiar PIN.
En el cuadro de diálogo Cifrado de unidad BitLocker, selecciona Restablecer un PIN olvidado. Si la cuenta que inició sesión no es una cuenta de administrador, se deben proporcionar credenciales administrativas en este momento.
En el cuadro de diálogo Restablecimiento de PIN, proporcione y confirme el nuevo PIN que se va a usar y, a continuación, seleccione Finalizar.
El nuevo PIN se puede usar la próxima vez que se desbloquee la unidad.
Clave de inicio perdida
Si se ha perdido la unidad flash USB que contiene la clave de inicio, la unidad debe desbloquearse mediante la clave de recuperación. A continuación, se puede crear un nuevo inicio.
Para impedir la recuperación continuada debido a una clave de inicio perdida
Inicie sesión como administrador en el equipo que tiene su clave de inicio perdida.
Abre Administrar BitLocker.
Seleccione Duplicar clave de inicio, inserte la unidad USB limpia donde se escribirá la clave y, a continuación, seleccione Guardar.
Cambios en los archivos de arranque
Este error se produce si se actualiza el firmware. Como procedimiento recomendado, BitLocker debe suspenderse antes de realizar cambios en el firmware. A continuación, se debe reanudar la protección una vez completada la actualización del firmware. Suspender BitLocker impide que el equipo entre en modo de recuperación. Sin embargo, si se realizaron cambios cuando la protección de BitLocker estaba activada, la contraseña de recuperación se puede usar para desbloquear la unidad y el perfil de validación de la plataforma se actualizará para que la recuperación no se produzca la próxima vez.
Cifrado de dispositivo BitLocker y Windows RE
El Entorno de recuperación de Windows (RE) se puede usar para recuperar el acceso a una unidad protegida con BitLocker Device Encryption. Si un equipo no puede arrancar después de dos errores, la reparación de inicio se inicia automáticamente. Cuando la reparación de inicio se inicia automáticamente debido a errores de arranque, solo ejecuta reparaciones de archivos de controlador y sistema operativo si los registros de arranque o cualquier volcado de memoria disponible apuntan a un archivo dañado específico. En Windows 8.1 y versiones posteriores, los dispositivos que incluyen firmware para admitir medidas específicas de TPM para PCR[7] el TPM puede validar que Windows RE es un entorno operativo de confianza y desbloquear las unidades protegidas por BitLocker si no se ha modificado Windows RE. Si se ha modificado el entorno de Windows RE, por ejemplo, el TPM se ha deshabilitado, las unidades permanecen bloqueadas hasta que se proporciona la clave de recuperación de BitLocker. Si reparación de inicio no puede ejecutarse automáticamente desde el equipo y, en su lugar, Windows RE se inicia manualmente desde un disco de reparación, se debe proporcionar la clave de recuperación de BitLocker para desbloquear las unidades protegidas con BitLocker.
Windows RE también pedirá una clave de recuperación de BitLocker cuando se inicie una opción Quitar todo el restablecimiento de Windows RE en un dispositivo que usa TPM + PIN o contraseña para los protectores de unidad del sistema operativo. Si la recuperación de BitLocker se inicia en un dispositivo sin teclado con protección de solo TPM, Windows RE, no el administrador de arranque, solicitará la clave de recuperación de BitLocker. Después de escribir la clave, se puede acceder a Windows RE herramientas de solución de problemas o windows se puede iniciar con normalidad.
La pantalla de recuperación de BitLocker que muestra Windows RE tiene las herramientas de accesibilidad, como narrador y teclado en pantalla, para ayudar a escribir la clave de recuperación de BitLocker. Si el administrador de arranque de Windows solicita la clave de recuperación de BitLocker, es posible que esas herramientas no estén disponibles.
Para activar el narrador durante la recuperación de BitLocker en Windows RE, presione Windows + CTRL + Entrar. Para activar el teclado en pantalla, pulse en un control de entrada de texto.
Pantalla de recuperación de BitLocker
Durante la recuperación de BitLocker, Windows muestra un mensaje de recuperación personalizado y algunas sugerencias que identifican de dónde se puede recuperar una clave. Estas mejoras pueden ayudar a un usuario durante la recuperación de BitLocker.
Mensaje de recuperación personalizado
La configuración de directiva de grupo de BitLocker a partir de Windows 10, versión 1511, permite configurar un mensaje de recuperación personalizado y una dirección URL en la pantalla de recuperación de BitLocker. El mensaje de recuperación personalizado y la dirección URL pueden incluir la dirección del portal de recuperación de autoservicio de BitLocker, el sitio web interno de TI o un número de teléfono para soporte técnico.
Esta directiva se puede configurar con GPO en las unidades de sistema operativo Configuración del equipo>Plantillas administrativas>Componentes de Windows>Cifrado de unidades BitLocker>Unidades del sistema operativo>Configure el mensaje de recuperación del inicio previo al inicio y la dirección URL.
También se puede configurar mediante la administración de dispositivos móviles (MDM), incluido en Intune, mediante el CSP de BitLocker:
<LocURI>./Device/Vendor/MSFT/BitLocker/SystemDrivesRecoveryMessage</LocURI>
Ejemplo de una pantalla de recuperación personalizada:
Sugerencias de clave de recuperación de BitLocker
Los metadatos de BitLocker se han mejorado a partir de Windows 10, versión 1903, para incluir información sobre cuándo y dónde se realizó la copia de seguridad de la clave de recuperación de BitLocker. Esta información no se expone a través de la interfaz de usuario ni de ninguna API pública. Solo lo usa la pantalla de recuperación de BitLocker en forma de sugerencias para ayudar a un usuario a localizar la clave de recuperación de un volumen. Se muestran sugerencias en la pantalla de recuperación y hacen referencia a la ubicación donde se ha guardado la clave. Se muestran sugerencias en la pantalla de recuperación moderna (azul) y heredada (negro). Las sugerencias se aplican tanto a la pantalla de recuperación del administrador de arranque como a la pantalla de desbloqueo de WinRE.
Importante
No se recomienda imprimir las claves de recuperación ni guardarlas en un archivo. En su lugar, usa la copia de seguridad de Active Directory o una copia de seguridad basada en la nube. La copia de seguridad basada en la nube incluye Azure Active Directory (Azure AD) y Microsoft cuenta.
Hay reglas que rigen qué sugerencia se muestra durante la recuperación (en el orden de procesamiento):
Muestra siempre un mensaje de recuperación personalizado si se ha configurado (con GPO o MDM).
Mostrar siempre sugerencia genérica:
For more information, go to https://aka.ms/recoverykeyfaq.
Si existen varias claves de recuperación en el volumen, dé prioridad a la clave de recuperación creada por última vez (y de la que se ha realizado una copia de seguridad correctamente).
Asigna prioridades a las claves con copias de seguridad correctas sobre claves en las que nunca se ha realizado una copia de seguridad.
Dé prioridad a las sugerencias de copia de seguridad en el orden siguiente para las ubicaciones de copia de seguridad remota: Microsoft cuenta > de Azure AD > Active Directory.
Si una clave se ha impreso y guardado en un archivo, muestra una sugerencia combinada, "Buscar una impresión o un archivo de texto con la clave", en lugar de dos sugerencias independientes.
Si se han realizado varias copias de seguridad del mismo tipo (quitar frente a local) para la misma clave de recuperación, priorice la información de copia de seguridad con la fecha de copia de seguridad más reciente.
No hay ninguna sugerencia específica para las claves guardadas en un Active Directory local. En este caso, se muestra un mensaje personalizado (si está configurado) o un mensaje genérico, "Póngase en contacto con el departamento de soporte técnico de su organización".
Si hay dos claves de recuperación en el disco, pero solo se ha realizado una copia de seguridad correcta, el sistema solicita una clave de la que se ha realizado una copia de seguridad, incluso si otra clave es más reciente.
Ejemplo 1 (clave de recuperación única con una sola copia de seguridad)
URL personalizada | Sí |
---|---|
Guardado en una cuenta de Microsoft | Sí |
Guardado en Azure AD | No |
Guardado en Active Directory | No |
Impreso | No |
Guardado en archivo | No |
Resultado: Se muestran las sugerencias para la cuenta de Microsoft y la dirección URL personalizada.
Ejemplo 2 (clave de recuperación única con una sola copia de seguridad)
URL personalizada | Sí |
---|---|
Guardado en una cuenta de Microsoft | No |
Guardado en Azure AD | No |
Guardado en Active Directory | Sí |
Impreso | No |
Guardado en archivo | No |
Resultado: Solo se muestra la dirección URL personalizada.
Ejemplo 3 (clave de recuperación única con varias copias de seguridad)
URL personalizada | No |
---|---|
Guardado en una cuenta de Microsoft | Sí |
Guardado en Azure AD | Sí |
Guardado en Active Directory | No |
Impreso | Sí |
Guardado en archivo | Sí |
Resultado: Solo se muestra la sugerencia de cuenta de Microsoft.
Ejemplo 4 (varias contraseñas de recuperación)
URL personalizada | No |
---|---|
Guardado en una cuenta de Microsoft | No |
Guardado en Azure AD | No |
Guardado en Active Directory | No |
Impreso | No |
Guardado en archivo | Sí |
Hora de creación | 1 p. m. |
Id. de clave | A564F193 |
URL personalizada | No |
---|---|
Guardado en una cuenta de Microsoft | No |
Guardado en Azure AD | No |
Guardado en Active Directory | No |
Impreso | No |
Guardado en archivo | No |
Hora de creación | 3PM |
Id. de clave | T4521ER5 |
resultado: Se muestra solo la sugerencia para una clave en la que se ha realizado una copia de seguridad correctamente, aunque no sea la clave más reciente.
Ejemplo 5 (varias contraseñas de recuperación)
URL personalizada | No |
---|---|
Guardado en una cuenta de Microsoft | Sí |
Guardado en Azure AD | Sí |
Guardado en Active Directory | No |
Impreso | No |
Guardado en archivo | No |
Hora de creación | 1 p. m. |
Id. de clave | 99631A34 |
URL personalizada | No |
---|---|
Guardado en una cuenta de Microsoft | No |
Guardado en Azure AD | Sí |
Guardado en Active Directory | No |
Impreso | No |
Guardado en archivo | No |
Hora de creación | 3PM |
Id. de clave | 9DF70931 |
Resultado: Se muestra la sugerencia de la clave más reciente.
Uso de la información de recuperación adicional
Además de la contraseña de recuperación de BitLocker de 48 dígitos, otros tipos de información de recuperación se almacenan en Active Directory. Esta sección describe cómo se puede usar esta información adicional.
Paquete de claves de BitLocker
Si los métodos de recuperación descritos anteriormente en este documento no desbloquean el volumen, la herramienta de reparación de BitLocker se puede usar para descifrar el volumen en el nivel de bloque. La herramienta usa el paquete de claves de BitLocker para ayudar a recuperar los datos cifrados de las unidades gravemente dañadas. A continuación, los datos recuperados se pueden usar para recuperar datos cifrados, incluso después de que la contraseña de recuperación correcta no haya podido desbloquear el volumen dañado. Se recomienda seguir guardando la contraseña de recuperación. No se puede usar un paquete de claves sin la contraseña de recuperación correspondiente.
Nota
La herramienta repair-bde.exe
de reparación de BitLocker debe usarse para usar el paquete de claves de BitLocker.
El paquete de claves de BitLocker no se guarda de forma predeterminada. Para guardar el paquete junto con la contraseña de recuperación en AD DS, la opción Contraseña de recuperación de copia de seguridad y paquete de claves debe seleccionarse en la configuración de directiva de grupo que controla el método de recuperación. El paquete de claves también se puede exportar desde un volumen de trabajo. Para obtener más información sobre cómo exportar paquetes de claves, consulte Recuperación del paquete de claves de BitLocker.
Restablecimiento de contraseñas de recuperación
Se recomienda invalidar una contraseña de recuperación después de que se haya proporcionado y usado. La contraseña de recuperación se puede invalidar cuando se ha proporcionado y usado o por cualquier otro motivo válido.
La contraseña de recuperación y se invalidan y se restablecen de dos maneras:
Use
manage-bde.exe
:manage-bde.exe
se puede usar para quitar la contraseña de recuperación antigua y agregar una nueva contraseña de recuperación. El procedimiento identifica el comando y la sintaxis de este método.Ejecutar un script: se puede ejecutar un script para restablecer la contraseña sin descifrar el volumen. El script de muestra en el procedimiento muestra esta funcionalidad. El script de muestra crea una nueva contraseña de recuperación e invalida las demás contraseñas.
Restablecimiento de una contraseña de recuperación mediante manage-bde.exe
Quite la contraseña de recuperación anterior.
`manage-bde.exe` -protectors -delete C: -type RecoveryPassword
Agregue la nueva contraseña de recuperación.
`manage-bde.exe` -protectors -add C: -RecoveryPassword
Obtén el Id. de la nueva contraseña de recuperación. En la pantalla, copia el Id. de la contraseña de recuperación.
`manage-bde.exe` -protectors -get C: -Type RecoveryPassword
Realiza copia de seguridad de la nueva contraseña de recuperación en AD DS
`manage-bde.exe` -protectors -adbackup C: -id {EXAMPLE6-5507-4924-AA9E-AFB2EB003692}
Advertencia
Las llaves
{}
deben incluirse en la cadena de identificador.
Ejecución del script de contraseña de recuperación de ejemplo para restablecer las contraseñas de recuperación
Guarda el siguiente script de muestra en un archivo VBScript. Por ejemplo:
ResetPassword.vbs
.En el símbolo del sistema, escriba el siguiente comando:
cscript.exe ResetPassword.vbs
Importante
Este script de muestra está configurado para funcionar solamente para el volumen C. Si es necesario, personalice el script para que coincida con el volumen donde se debe probar el restablecimiento de contraseña.
Nota
Para administrar un equipo remoto, especifique el nombre del equipo remoto en lugar del nombre del equipo local.
El siguiente ejemplo de VBScript se puede usar para restablecer las contraseñas de recuperación:
Expanda para ver VBscript de contraseña de recuperación de ejemplo para restablecer las contraseñas de recuperación.
' Target drive letter
strDriveLetter = "c:"
' Target computer name
' Use "." to connect to the local computer
strComputerName = "."
' --------------------------------------------------------------------------------
' Connect to the BitLocker WMI provider class
' --------------------------------------------------------------------------------
strConnectionStr = "winmgmts:" _
& "{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\" _
& strComputerName _
& "\root\cimv2\Security\MicrosoftVolumeEncryption"
On Error Resume Next 'handle permission errors
Set objWMIService = GetObject(strConnectionStr)
If Err.Number <> 0 Then
WScript.Echo "Failed to connect to the BitLocker interface (Error 0x" & Hex(Err.Number) & ")."
Wscript.Echo "Ensure that you are running with administrative privileges."
WScript.Quit -1
End If
On Error GoTo 0
strQuery = "Select * from Win32_EncryptableVolume where DriveLetter='" & strDriveLetter & "'"
Set colTargetVolumes = objWMIService.ExecQuery(strQuery)
If colTargetVolumes.Count = 0 Then
WScript.Echo "FAILURE: Unable to find BitLocker-capable drive " & strDriveLetter & " on computer " & strComputerName & "."
WScript.Quit -1
End If
' there should only be one volume found
For Each objFoundVolume in colTargetVolumes
set objVolume = objFoundVolume
Next
' objVolume is now our found BitLocker-capable disk volume
' --------------------------------------------------------------------------------
' Perform BitLocker WMI provider functionality
' --------------------------------------------------------------------------------
' Add a new recovery password, keeping the ID around so it doesn't get deleted later
' ----------------------------------------------------------------------------------
nRC = objVolume.ProtectKeyWithNumericalPassword("Recovery Password Refreshed By Script", , sNewKeyProtectorID)
If nRC <> 0 Then
WScript.Echo "FAILURE: ProtectKeyWithNumericalPassword failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
' Removes the other, "stale", recovery passwords
' ----------------------------------------------------------------------------------
nKeyProtectorTypeIn = 3 ' type associated with "Numerical Password" protector
nRC = objVolume.GetKeyProtectors(nKeyProtectorTypeIn, aKeyProtectorIDs)
If nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyProtectors failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
' Delete those key protectors other than the one we just added.
For Each sKeyProtectorID In aKeyProtectorIDs
If sKeyProtectorID <> sNewKeyProtectorID Then
nRC = objVolume.DeleteKeyProtector(sKeyProtectorID)
If nRC <> 0 Then
WScript.Echo "FAILURE: DeleteKeyProtector on ID " & sKeyProtectorID & " failed with return code 0x" & Hex(nRC)
WScript.Quit -1
Else
' no output
'WScript.Echo "SUCCESS: Key protector with ID " & sKeyProtectorID & " deleted"
End If
End If
Next
WScript.Echo "A new recovery password has been added. Old passwords have been removed."
' - some advanced output (hidden)
'WScript.Echo ""
'WScript.Echo "Type ""manage-bde.exe -protectors -get " & strDriveLetter & " -type recoverypassword"" to view existing passwords."
Recuperación del paquete de claves de BitLocker
Se pueden usar dos métodos para recuperar el paquete de claves como se describe en Uso de información de recuperación adicional:
Exportar un paquete de clave guardado anteriormente desde AD DS. El acceso de lectura es necesario para las contraseñas de recuperación de BitLocker almacenadas en AD DS.
Exportar un nuevo paquete de claves desde un volumen protegido con BitLocker desbloqueado. El acceso del administrador local al volumen de trabajo es necesario antes de que se produzcan daños en el volumen.
Ejecución del script de recuperación de paquetes de claves de ejemplo que exporta todos los paquetes de claves guardados anteriormente desde AD DS
Los pasos siguientes y el script de ejemplo exportan todos los paquetes de claves guardados anteriormente desde AD DS.
Guarda el siguiente script de muestra en un archivo VBScript. Por ejemplo:
GetBitLockerKeyPackageADDS.vbs
.En el símbolo del sistema, escriba un comando similar al siguiente script de ejemplo:
cscript.exe GetBitLockerKeyPackageADDS.vbs -?
El siguiente script de ejemplo se puede usar para crear un archivo VBScript para recuperar el paquete de claves de BitLocker de AD DS:
Expanda para ver VBscript de recuperación de paquetes de claves de ejemplo que exporta todos los paquetes de claves guardados anteriormente desde AD DS.
' --------------------------------------------------------------------------------
' Usage
' --------------------------------------------------------------------------------
Sub ShowUsage
Wscript.Echo "USAGE: GetBitLockerKeyPackageADDS [Path To Save Key Package] [Optional Computer Name]"
Wscript.Echo "If no computer name is specified, the local computer is assumed."
Wscript.Echo
Wscript.Echo "Example: GetBitLockerKeyPackageADDS E:\bitlocker-ad-key-package mycomputer"
WScript.Quit
End Sub
' --------------------------------------------------------------------------------
' Parse Arguments
' --------------------------------------------------------------------------------
Set args = WScript.Arguments
Select Case args.Count
Case 1
If args(0) = "/?" Or args(0) = "-?" Then
ShowUsage
Else
strFilePath = args(0)
' Get the name of the local computer
Set objNetwork = CreateObject("WScript.Network")
strComputerName = objNetwork.ComputerName
End If
Case 2
If args(0) = "/?" Or args(0) = "-?" Then
ShowUsage
Else
strFilePath = args(0)
strComputerName = args(1)
End If
Case Else
ShowUsage
End Select
' --------------------------------------------------------------------------------
' Get path to Active Directory computer object associated with the computer name
' --------------------------------------------------------------------------------
Function GetStrPathToComputer(strComputerName)
' Uses the global catalog to find the computer in the forest
' Search also includes deleted computers in the tombstone
Set objRootLDAP = GetObject("LDAP://rootDSE")
namingContext = objRootLDAP.Get("defaultNamingContext") ' e.g. string dc=fabrikam,dc=com
strBase = "<GC://" & namingContext & ">"
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOOBject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
strFilter = "(&(objectCategory=Computer)(cn=" & strComputerName & "))"
strQuery = strBase & ";" & strFilter & ";distinguishedName;subtree"
objCommand.CommandText = strQuery
objCommand.Properties("Page Size") = 100
objCommand.Properties("Timeout") = 100
objCommand.Properties("Cache Results") = False
' Enumerate all objects found.
Set objRecordSet = objCommand.Execute
If objRecordSet.EOF Then
WScript.echo "The computer name '" & strComputerName & "' cannot be found."
WScript.Quit 1
End If
' Found object matching name
Do Until objRecordSet.EOF
dnFound = objRecordSet.Fields("distinguishedName")
GetStrPathToComputer = "LDAP://" & dnFound
objRecordSet.MoveNext
Loop
' Clean up.
Set objConnection = Nothing
Set objCommand = Nothing
Set objRecordSet = Nothing
End Function
' --------------------------------------------------------------------------------
' Securely access the Active Directory computer object using Kerberos
' --------------------------------------------------------------------------------
Set objDSO = GetObject("LDAP:")
strPathToComputer = GetStrPathToComputer(strComputerName)
WScript.Echo "Accessing object: " + strPathToComputer
Const ADS_SECURE_AUTHENTICATION = 1
Const ADS_USE_SEALING = 64 '0x40
Const ADS_USE_SIGNING = 128 '0x80
' --------------------------------------------------------------------------------
' Get all BitLocker recovery information from the Active Directory computer object
' --------------------------------------------------------------------------------
' Get all the recovery information child objects of the computer object
Set objFveInfos = objDSO.OpenDSObject(strPathToComputer, vbNullString, vbNullString, _
ADS_SECURE_AUTHENTICATION + ADS_USE_SEALING + ADS_USE_SIGNING)
objFveInfos.Filter = Array("msFVE-RecoveryInformation")
' Iterate through each recovery information object and saves any existing key packages
nCount = 1
strFilePathCurrent = strFilePath & nCount
For Each objFveInfo in objFveInfos
strName = objFveInfo.Get("name")
strRecoveryPassword = objFveInfo.Get("msFVE-RecoveryPassword")
strKeyPackage = objFveInfo.Get("msFVE-KeyPackage")
WScript.echo
WScript.echo "Recovery Object Name: " + strName
WScript.echo "Recovery Password: " + strRecoveryPassword
' Validate file path
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(strFilePathCurrent)) Then
WScript.Echo "The file " & strFilePathCurrent & " already exists. Please use a different path."
WScript.Quit -1
End If
' Save binary data to the file
SaveBinaryDataText strFilePathCurrent, strKeyPackage
WScript.echo "Related key package successfully saved to " + strFilePathCurrent
' Update next file path using base name
nCount = nCount + 1
strFilePathCurrent = strFilePath & nCount
Next
'----------------------------------------------------------------------------------------
' Utility functions to save binary data
'----------------------------------------------------------------------------------------
Function SaveBinaryDataText(FileName, ByteArray)
'Create FileSystemObject object
Dim FS: Set FS = CreateObject("Scripting.FileSystemObject")
'Create text stream object
Dim TextStream
Set TextStream = FS.CreateTextFile(FileName)
'Convert binary data To text And write them To the file
TextStream.Write BinaryToString(ByteArray)
End Function
Function BinaryToString(Binary)
Dim I, S
For I = 1 To LenB(Binary)
S = S & Chr(AscB(MidB(Binary, I, 1)))
Next
BinaryToString = S
End Function
WScript.Quit
Ejecución del script de recuperación de paquetes de claves de ejemplo que exporta un nuevo paquete de claves desde un volumen cifrado desbloqueado
Los pasos siguientes y el script de ejemplo exportan un nuevo paquete de claves de un volumen cifrado desbloqueado.
Guarda el siguiente script de muestra en un archivo VBScript. Por ejemplo:
GetBitLockerKeyPackage.vbs
Abra un símbolo del sistema de administrador y escriba un comando similar al siguiente script de ejemplo:
cscript.exe GetBitLockerKeyPackage.vbs -?
Expanda para ver VBscript de ejemplo que exporta un nuevo paquete de claves desde un volumen desbloqueado y cifrado.
' --------------------------------------------------------------------------------
' Usage
' --------------------------------------------------------------------------------
Sub ShowUsage
Wscript.Echo "USAGE: GetBitLockerKeyPackage [VolumeLetter/DriveLetter:] [Path To Save Key Package]"
Wscript.Echo
Wscript.Echo "Example: GetBitLockerKeyPackage C: E:\bitlocker-backup-key-package"
WScript.Quit
End Sub
' --------------------------------------------------------------------------------
' Parse Arguments
' --------------------------------------------------------------------------------
Set args = WScript.Arguments
Select Case args.Count
Case 2
If args(0) = "/?" Or args(0) = "-?" Then
ShowUsage
Else
strDriveLetter = args(0)
strFilePath = args(1)
End If
Case Else
ShowUsage
End Select
' --------------------------------------------------------------------------------
' Other Inputs
' --------------------------------------------------------------------------------
' Target computer name
' Use "." to connect to the local computer
strComputerName = "."
' Default key protector ID to use. Specify "" to let the script choose.
strDefaultKeyProtectorID = ""
' strDefaultKeyProtectorID = "{001298E0-870E-4BA0-A2FF-FC74758D5720}" ' sample
' --------------------------------------------------------------------------------
' Connect to the BitLocker WMI provider class
' --------------------------------------------------------------------------------
strConnectionStr = "winmgmts:" _
& "{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\" _
& strComputerName _
& "\root\cimv2\Security\MicrosoftVolumeEncryption"
On Error Resume Next 'handle permission errors
Set objWMIService = GetObject(strConnectionStr)
If Err.Number <> 0 Then
WScript.Echo "Failed to connect to the BitLocker interface (Error 0x" & Hex(Err.Number) & ")."
Wscript.Echo "Ensure that you are running with administrative privileges."
WScript.Quit -1
End If
On Error GoTo 0
strQuery = "Select * from Win32_EncryptableVolume where DriveLetter='" & strDriveLetter & "'"
Set colTargetVolumes = objWMIService.ExecQuery(strQuery)
If colTargetVolumes.Count = 0 Then
WScript.Echo "FAILURE: Unable to find BitLocker-capable drive " & strDriveLetter & " on computer " & strComputerName & "."
WScript.Quit -1
End If
' there should only be one volume found
For Each objFoundVolume in colTargetVolumes
set objVolume = objFoundVolume
Next
' objVolume is now our found BitLocker-capable disk volume
' --------------------------------------------------------------------------------
' Perform BitLocker WMI provider functionality
' --------------------------------------------------------------------------------
' Collect all possible valid key protector ID's that can be used to get the package
' ----------------------------------------------------------------------------------
nNumericalKeyProtectorType = 3 ' type associated with "Numerical Password" protector
nRC = objVolume.GetKeyProtectors(nNumericalKeyProtectorType, aNumericalKeyProtectorIDs)
If nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyProtectors failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
nExternalKeyProtectorType = 2 ' type associated with "External Key" protector
nRC = objVolume.GetKeyProtectors(nExternalKeyProtectorType, aExternalKeyProtectorIDs)
If nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyProtectors failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
' Get first key protector of the type "Numerical Password" or "External Key", if any
' ----------------------------------------------------------------------------------
if strDefaultKeyProtectorID = "" Then
' Save first numerical password, if exists
If UBound(aNumericalKeyProtectorIDs) <> -1 Then
strDefaultKeyProtectorID = aNumericalKeyProtectorIDs(0)
End If
' No numerical passwords exist, save the first external key
If strDefaultKeyProtectorID = "" and UBound(aExternalKeyProtectorIDs) <> -1 Then
strDefaultKeyProtectorID = aExternalKeyProtectorIDs(0)
End If
' Fail case: no recovery key protectors exist.
If strDefaultKeyProtectorID = "" Then
WScript.Echo "FAILURE: Cannot create backup key package because no recovery passwords or recovery keys exist. Check that BitLocker protection is on for this drive."
WScript.Echo "For help adding recovery passwords or recovery keys, enter ""manage-bde.exe -protectors -add -?""."
WScript.Quit -1
End If
End If
' Get some information about the chosen key protector ID
' ----------------------------------------------------------------------------------
' is the type valid?
nRC = objVolume.GetKeyProtectorType(strDefaultKeyProtectorID, nDefaultKeyProtectorType)
If Hex(nRC) = "80070057" Then
WScript.Echo "The key protector ID " & strDefaultKeyProtectorID & " is not valid."
WScript.Echo "This ID value may have been provided by the script writer."
ElseIf nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyProtectorType failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
' what's a string that can be used to describe it?
strDefaultKeyProtectorType = ""
Select Case nDefaultKeyProtectorType
Case nNumericalKeyProtectorType
strDefaultKeyProtectorType = "recovery password"
Case nExternalKeyProtectorType
strDefaultKeyProtectorType = "recovery key"
Case Else
WScript.Echo "The key protector ID " & strDefaultKeyProtectorID & " does not refer to a valid recovery password or recovery key."
WScript.Echo "This ID value may have been provided by the script writer."
End Select
' Save the backup key package using the chosen key protector ID
' ----------------------------------------------------------------------------------
nRC = objVolume.GetKeyPackage(strDefaultKeyProtectorID, oKeyPackage)
If nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyPackage failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
' Validate file path
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(strFilePath)) Then
WScript.Echo "The file " & strFilePath & " already exists. Please use a different path."
WScript.Quit -1
End If
Dim oKeyPackageByte, bKeyPackage
For Each oKeyPackageByte in oKeyPackage
'WScript.echo "key package byte: " & oKeyPackageByte
bKeyPackage = bKeyPackage & ChrB(oKeyPackageByte)
Next
' Save binary data to the file
SaveBinaryDataText strFilePath, bKeyPackage
' Display helpful information
' ----------------------------------------------------------------------------------
WScript.Echo "The backup key package has been saved to " & strFilePath & "."
WScript.Echo "IMPORTANT: To use this key package, the " & strDefaultKeyProtectorType & " must also be saved."
' Display the recovery password or a note about saving the recovery key file
If nDefaultKeyProtectorType = nNumericalKeyProtectorType Then
nRC = objVolume.GetKeyProtectorNumericalPassword(strDefaultKeyProtectorID, sNumericalPassword)
If nRC <> 0 Then
WScript.Echo "FAILURE: GetKeyProtectorNumericalPassword failed with return code 0x" & Hex(nRC)
WScript.Quit -1
End If
WScript.Echo "Save this recovery password: " & sNumericalPassword
ElseIf nDefaultKeyProtectorType = nExternalKeyProtectorType Then
WScript.Echo "The saved key file is named " & strDefaultKeyProtectorID & ".BEK"
WScript.Echo "For help re-saving this external key file, enter ""manage-bde.exe -protectors -get -?"""
End If
'----------------------------------------------------------------------------------------
' Utility functions to save binary data
'----------------------------------------------------------------------------------------
Function SaveBinaryDataText(FileName, ByteArray)
'Create FileSystemObject object
Dim FS: Set FS = CreateObject("Scripting.FileSystemObject")
'Create text stream object
Dim TextStream
Set TextStream = FS.CreateTextFile(FileName)
'Convert binary data To text And write them To the file
TextStream.Write BinaryToString(ByteArray)
End Function
Function BinaryToString(Binary)
Dim I, S
For I = 1 To LenB(Binary)
S = S & Chr(AscB(MidB(Binary, I, 1)))
Next
BinaryToString = S
End Function