启用 Bitlocker 自动解锁,无需系统驱动器加密

启用 Bitlocker 自动解锁,无需系统驱动器加密

是否有人知道任何技巧 - 注册表更改,组策略等,可以让 Bitlocker 卷自动解锁,而无需 Bitlocker 加密的系统驱动器?

我的系统驱动器是三星 850 Pro SSD,因此它显然具有内置加密,我可以使用 BIOS 驱动器密码启用它。

我没有在系统驱动器上使用 Bitlocker,因为在我的 BIOS 中我无法将其配置为使用本机硬件加密,因此使用 CPU 加密会浪费资源。

我有第二个机械硬盘,我用 Bitlocker 加密了它,我希望能够自动解锁它。

目前,我已经想出了一个破解方法,即在系统启动时运行一项任务,使用 bitlocker 命令行实用程序手动解锁驱动器。然而,这似乎是一种非常笨拙的方法。

我理解此限制背后的原因,因为他们不想将解密密钥存储在未加密的驱动器上,但是就我而言,它并不适用,因为系统驱动器已完全加密,只是没有使用 Bitlocker。

我只是想知道是否有某种方法可以覆盖此检查并强制它允许自动解锁?

答案1

  1. 关闭要自动解锁的驱动器上的 bitlocker
  2. 将此驱动器安装为可移动驱动器,即将其插入 USB 连接的驱动器单元,如 StarTech 或许多其他驱动器
  3. 启动系统并对驱动器进行位锁定并打开自动解锁
  4. 关闭系统
  5. 将驱动器安装为永久驱动器
  6. 重新启动系统,驱动器将自动解锁,因为 Windows 现在认为它是一个可移动驱动器

对我来说毫无问题

答案2

假设:

  • 您的任务输入密码,因此它保存在 Windows 任务计划程序中。
  • 您不喜欢在启动后输入数据驱动器密码。

这个解决方法可能并不太麻烦,但可能不太不安全。

确实,当系统分区未加密(使用 bitlocker)时,Windows 将不允许您在固定驱动器上启用自动解锁。

但是,我使用了一种变通方法。我使用 manage-bde 命令将恢复密钥(外部密钥文件)保存到 USB 闪存驱动器。现在,每当我想解锁驱动器时,我都无需输入密码,只需单击其下方的文本按钮,它就会自动检查现有 USB 设备并解锁。因此,只需单击,无需输入。

在您的情况中,由于 C 以另一种方式加密,而我的 C 没有加密,因此我会在(bitlocker 加密的)USB 闪存驱动器上临时创建密钥。此文件为 *.bek,是系统隐藏文件类型 dir /A:S 可查看;将其复制到目录 C:\User\{Accountname}\AutoUnlockKeys\{keyfileid}.bek。我会尽可能拒绝对此文件夹的权限。

然后将您的任务更新为

manage-bde -unlock D: -RecoveryKey "C:\pathtofile\key.bek"

其中 C:是使用 Bitlocker 以外的其他方式加密的系统驱动器。

通常,自动解锁密钥保存在注册表。与 -Password 解锁任务相比,-RecoveryKey 任务的好处在于,您最薄弱的环节不是明文在 Windows 任务管理器中,但是,最薄弱的环节是应用于文件夹/*.bek 密钥文件的 Windows 访问权限。

答案3

我的解决方案如下:这里

要设置自动 BitLocker 驱动器解锁,请在登录时执行以下操作:

  1. 创建文件 UnlockDrives.ps1
try {
  $Volume = "E:"
  $Password = "BITLOCKPASSWORD"
  Unlock-BitLocker -MountPoint $Volume -ErrorAction Stop -Password (ConvertTo-SecureString $Password -AsPlainText -Force)
  Write-Host "Drive $Volume unlocked"
}
catch {
   throw "Failed to unlock $Volume $_"
}
  1. 将 UnlockDrives.ps1 和 RunHiddenConsole.exe 保存在 C:\Users\YOURUSER\AppData\Local\UnlockDrives 文件夹中
  2. 仅出于安全考虑:启用文件夹加密并编辑其权限,这样只有您的用户才能访问此文件夹
  3. 打开任务计划程序
  4. 在 Microsoft\Windows\Powershell\ScheduledJobs 下创建新任务
  5. 输入名称:“UnlockDrives”
  6. 选择常规 -> “仅在用户登录时运行”,仅适用于您的用户
  7. 选择常规 -> “以最高权限运行”
  8. 添加触发器 -> “登录时”,仅供您的用户使用
  9. 添加操作 -> “启动程序”
  10. 将程序设置为:RunHiddenConsole.exe
  11. 将参数设置为:powershell.exe -ExecutionPolicy Unrestricted -Command "./UnlockDrives.ps1"
  12. 将“开始于”设置为:C:\Users\YOURUSER\AppData\Local\UnlockDrives

RunHiddenConsole.exe 可以从上面的链接下载,或者从编译来源,虽然这不是必须的,但它解决了登录时烦人的窗口闪烁问题。

相关内容