我正在探索 Bitlocker 与 TPM 和安全启动 (Bitlocker 或 BIOS 无需密码) 结合时的安全性,但遇到了一些问题 -
Windows 是否/如何保护早期启动过程?
例如 - 假设一台装有 BitLocker 加密驱动器的计算机被盗,但窃贼不知道进入 Windows 的登录凭据。是否有任何保护措施可以防止窃贼更改早期启动环境,从而允许窃贼在不需要有效登录的情况下添加/更改密码/获取 shell?
这可能是一个疑问,但是早期启动过程是否经过签名/测量以防止这种攻击媒介?如果是,那么如何进行?
如果有人能建议一种不使用 Bitlocker 恢复密钥就能真正绕过 Bitlocker/TPM 保护/链的方法,那就太好了。(我相信存在/理论上存在一种滥用 Windows 升级过程来绕过此保护的机制,但我不知道这将如何实现或有多难 - 或者是否有更简单的方法)
澄清一下我帖子的内容:
在此链接微软表示,“仅 TPM 身份验证模式最容易部署、管理和使用。对于无人值守或必须在无人值守时重新启动的计算机,它可能也更合适。但是,仅 TPM 模式提供的数据保护最少。如果您组织的某些部分在移动计算机上拥有被视为高度敏感的数据,请考虑在这些计算机上部署具有多因素身份验证的 BitLocker。” - 我正在尝试量化这种风险。
当我说“早期启动过程”时,我指的是 Windows 接管启动时,但在主操作系统加载之前(即加载 Bitlocker 驱动程序和其他早期进程的存根/初始位,这些进程位于 Bitlocker 驱动器具有的非加密分区上 - 然后交给主启动)
答案1
Windows 如何保护早期启动过程?
Windows 不会尝试保护早期启动过程(Windows Bootloader 之前发生的任何事)。UEFI 功能“安全启动”可完成此任务。检测到配置更改时,BitLocker 将要求您提供恢复密钥。这可防止在没有提供 BitLocker 恢复密钥的情况下将硬盘从一台机器中取出并放入另一台机器中。 如果没有恢复密钥,则无法解锁在 Windows 中安装的受 BitLocker 保护的系统磁盘。
如果有的话,有哪些保护措施可以防止窃贼更改早期启动环境,从而允许窃贼在不需要有效登录的情况下添加/更改密码/获取 shell?
如果检测到对 TPM 的任何更改,BitLocker 将提示输入恢复密钥。如果对 UEFI 固件进行了任何更改,BitLocker 将提示输入恢复密钥。 由于 BitLocker 是全盘加密,因此没有恢复密钥就无法访问数据。
这可能是一个疑问,但是早期启动过程是否经过签名/测量以防止这种攻击媒介?如果是,那么如何进行?
安全启动可防止启动未签名的操作系统。
安全启动是 PC 行业成员开发的一种安全标准,旨在帮助确保设备仅使用原始设备制造商 (OEM) 信任的软件进行启动。当 PC 启动时,固件会检查每个启动软件的签名,包括 UEFI 固件驱动程序(也称为 Option ROM)、EFI 应用程序和操作系统。如果签名有效,PC 就会启动,固件会将控制权交给操作系统。
来源:安全启动
有人可以建议一种不使用 BitLocker 恢复密钥即可真正绕过 Bitlocker/TPM 保护/链的方法吗?
如果 BitLocker 存在这样的漏洞,那么它尚未公开。
我相信存在/理论上存在一种滥用 Windows 升级过程来绕过此保护的机制,但我不知道这将如何实现或有多难 - 或者是否有更简单的方法
正如您所描述的,这种绕过 BitLocker 保护的理论机制并不存在。为了启动 Windows 安装环境,需要更改设备的固件配置,这将导致需要恢复密钥来解密数据。 此外,您无法在安装环境中的加密卷上安装 Windows。
但是,仅 TPM 模式提供的数据保护最少。如果您的组织中的某些部分在移动计算机上拥有被视为高度敏感的数据,请考虑在这些计算机上部署具有多因素身份验证的 BitLocker。
我认为这不适用于 TPM 1.2。您链接到的文档来自 Windows Vista,它不支持 TPM 1.2。
当我说“早期启动过程”时,我指的是 Windows 接管启动时,但在主操作系统加载之前(即加载 BitLocker 驱动程序和在 BitLocker 驱动器具有的非加密分区上找到的其他早期进程的存根/初始位 - 然后交给主启动)
所以你的意思是 Windows Bootloader。正如我所说,任何配置更改都将导致需要恢复密钥来解密数据。