BitLocker 应对策略

Windows 使用硬件解决方案和安全功能来保护 BitLocker 加密密钥免受攻击。 这些技术包括 受信任的平台模块 (TPM) 安全启动测量启动

启动前的保护

在 Windows 启动之前,必须依赖作为设备硬件和固件一部分实现的安全功能,包括 TPM 和安全启动:

  • TPM 是一种芯片,旨在提供基本的安全相关功能,主要涉及加密密钥。 BitLocker 将加密密钥与 TPM 绑定,以确保设备在系统脱机时未被篡改。 有关 TPM 的详细信息,请参阅 受信任的平台模块
  • 统一可扩展固件接口 (UEFI) 是一种可编程的启动环境,可初始化设备并启动操作系统的引导加载程序。 UEFI 规范定义了一个名为“安全启动”的固件执行身份验证过程
  • 安全启动 阻止不受信任的固件和引导加载程序 (签名或未签名) 能够在系统上启动。 默认情况下,BitLocker 利用 TPM PCR[7] 度量为安全启动提供完整性保护。 未经授权的 EFI 固件、EFI 启动应用程序或引导加载程序无法运行并获取 BitLocker 密钥

BitLocker 和重置攻击

为了抵御恶意重置攻击,BitLocker 在将密钥提取到内存中之前,使用 TCG 重置攻击缓解措施(也称为 MOR 位 (内存覆盖请求) )。

安全策略

预启动身份验证和 DMA 策略为 BitLocker 提供额外的保护。

预启动身份验证

使用 BitLocker 进行预启动身份验证可能需要使用用户输入(如 PIN 和/或启动密钥)进行身份验证,然后才能访问系统驱动器的内容。

BitLocker 只有在完成预启动身份验证后,才会访问加密密钥并将其存储在内存中。 如果 Windows 无法访问加密密钥,则设备无法读取或编辑系统驱动器上的文件。 绕过预启动身份验证的唯一选项是输入 恢复密钥

预启动身份验证旨在防止加密密钥加载到系统内存,而无需受信任的用户提供其他身份验证因素。 此功能有助于缓解 DMA 和内存再管理攻击。

在具有兼容 TPM 的设备上,可以通过四种方式解锁受 BitLocker 保护的操作系统驱动器:

  • 仅限 TPM:此选项不需要与用户进行任何交互即可解锁并提供对驱动器的访问权限。 如果 TPM 验证成功,则用户登录体验与标准登录相同。 如果缺少或更改 TPM,或者 BitLocker 检测到 BIOS 或 UEFI 配置、关键操作系统启动文件或启动配置的更改,则 BitLocker 将进入恢复模式。 然后,用户必须输入恢复密码才能重新获得对数据的访问权限。 此选项对于登录更方便,但比其他需要其他身份验证因素的选项安全性较低
  • 具有启动密钥的 TPM:除了仅限 TPM 提供的保护外,加密密钥的一部分还存储在 U 盘上,称为 启动密钥。 没有启动密钥,无法访问加密卷上的数据
  • 具有 PIN 的 TPM:除了 TPM 提供的保护外,BitLocker 还要求用户输入 PIN。 如果不输入 PIN,则无法访问加密卷上的数据。 TPM 还具有 防打击保护 ,旨在防止尝试确定 PIN 的暴力攻击
  • 具有启动密钥和 PIN 的 TPM:除了 TPM 提供的保护外,加密密钥的一部分存储在 U 盘上,并且需要 PIN 才能向 TPM 对用户进行身份验证。 此配置提供多重身份验证,因此,如果 USB 密钥丢失或被盗,则不能用于访问驱动器,因为还需要 PIN

使用 PIN 的预启动身份验证可以缓解使用可启动 eDrive 的设备的攻击途径,因为公开的 eDrive 总线可能允许攻击者在启动期间捕获 BitLocker 加密密钥。 使用 PIN 的预启动身份验证还可以在 BitLocker 解锁驱动器和 Windows 启动之间的时间范围内缓解 DMA 端口攻击,使 Windows 可以设置已配置的任何与端口相关的策略。

另一方面,预启动身份验证提示对用户可能不方便。 此外,忘记 PIN 或丢失启动密钥的用户将被拒绝访问其数据,直到他们可以联系组织的支持团队以获取恢复密钥。 预启动身份验证还会使更新无人参与或远程管理的设备变得更加困难,因为在设备重新启动或从休眠状态恢复时必须输入 PIN。

若要解决这些问题,可以部署 BitLocker 网络解锁 。 网络解锁允许满足硬件要求且使用 TPM+PIN 启用 BitLocker 的系统无需用户干预即可启动到 Windows。 它需要与 Windows 部署服务 (WDS) 服务器的直接以太网连接。

若要了解详细信息,请参阅策略设置 “启动时需要其他身份验证”。

保护 DMA 端口

保护 DMA 端口非常重要,因为外部外围设备可能会获得对内存的未经授权的访问。 根据设备功能,有不同的选项可用于保护 DMA 端口。 若要了解详细信息,请参阅策略设置 在锁定此计算机时禁用新的 DMA 设备

攻击对策

本部分介绍针对特定类型的攻击的对策。

Bootkit 和 rootkit

实际存在的攻击者可能会尝试将引导工具包或类似于 rootkit 的软件部分安装到启动链中,以试图窃取 BitLocker 密钥。 TPM 应通过 PCR 测量来观察此安装,并且 BitLocker 密钥不会释放。

注意

默认情况下,BitLocker 会防范此攻击。

如果 BIOS 公开的设置可能会削弱 BitLocker 安全承诺,则建议使用 BIOS 密码进行深层防御。 Intel Boot Guard 和 AMD 硬件验证启动支持更强大的安全启动实现,可提供针对恶意软件和物理攻击的额外复原能力。 Intel 启动防护和 AMD 硬件验证启动是 高度安全的 Windows 设备的平台启动验证标准的一部分。

针对 PIN 的暴力攻击

需要 TPM + PIN 进行防锤保护。

DMA 攻击

请参阅本文前面的 保护 DMA 端口

分页文件、故障转储和 Hyberfil.sys 攻击

在 OS 驱动器上启用 BitLocker 时,这些文件默认在加密卷上受到保护。 它还会阻止自动或手动尝试移动分页文件。

内存 remanence

启用安全启动并强制使用密码更改 BIOS 设置。 对于需要防范这些高级攻击的方案,请配置 TPM+PIN 保护程序,禁用 备用 电源管理,并在设备离开授权用户的控制之前关闭或休眠设备。

Windows 默认电源设置会导致设备在空闲时进入 睡眠模式 。 当设备转换为睡眠状态时,正在运行的程序和文档将保留在内存中。 当设备从睡眠状态恢复时,用户无需使用 PIN 或 USB 启动密钥重新进行身份验证即可访问加密数据。 此方案可能会导致数据安全受到威胁的情况。

当设备 休眠时,驱动器会锁定。 当设备从休眠状态恢复时,驱动器将解锁,这意味着,如果用户对 BitLocker 使用多重身份验证,则必须提供 PIN 或启动密钥。

因此,使用 BitLocker 的组织可能需要使用 Hibernate 而不是 Sleep 来提高安全性。

注意

此设置对仅 TPM 模式没有影响,因为它在启动时和从休眠状态恢复时提供透明的用户体验。

欺骗 BitLocker 将密钥传递给恶意操作系统

攻击者可能会修改启动管理器配置数据库 (BCD) ,该数据库存储在非加密分区上,并将入口点添加到其他分区上的恶意操作系统。 在启动过程中,BitLocker 代码确保从 TPM 获取的加密密钥被提供给的操作系统经过加密验证为目标接收方。 由于此强加密验证已存在,因此不建议将磁盘分区表的哈希存储在平台配置寄存器 (PCR) 5 中。

攻击者还可以在保留平台硬件和固件的同时替换整个操作系统磁盘,然后从受攻击 OS 分区的元数据中提取受保护的 BitLocker 密钥 Blob。 然后,攻击者可以通过从受其控制的操作系统调用 TPM API 来尝试解封该 BitLocker 密钥 Blob。 此操作无法成功,因为当 Windows 将 BitLocker 密钥密封到 TPM 时,它会使用 PCR 11 值 0 执行此操作。 若要成功解封 Blob,TPM 中的 PCR 11 必须具有值 0。 但是,当启动管理器将控件传递给任何启动加载程序 (合法或恶意) 它始终将 PCR 11 更改为值 1。 由于 PCR 11 值在退出启动管理器后保证不同,因此攻击者无法解锁 BitLocker 密钥。

攻击者对策

以下部分介绍针对不同类型的攻击者的缓解措施。

没有太多技能或物理访问受限的攻击者

物理访问可能受限于不公开总线和内存的外形规格。 例如,没有支持 DMA 的外部端口,没有用于打开机箱的外露螺丝,并且内存已焊接到主板上。

此机会攻击者不会使用破坏性方法或复杂的取证硬件/软件。

缓解:

  • 预启动身份验证设置为仅 TPM (默认)

具有技能和长时间物理访问权限的攻击者

具有足够时间的针对性攻击;攻击者打开案例,焊接,并使用复杂的硬件或软件。

缓解:

  • 使用 PIN 保护程序将预启动身份验证设置为 TPM, (具有复杂的字母数字 PIN [增强引脚] 来帮助 TPM 抗锤击缓解) 。

    -和-

  • 禁用待机电源管理,并在设备离开授权用户的控制之前关闭或休眠设备。 可以使用以下策略设置来设置此配置:

    • 计算机配置>政策>管理模板>Windows 组件>>文件资源管理器电源选项菜单中的休眠状态
    • 计算机配置>政策>管理模板>电源管理>睡眠设置>
      • 睡眠时允许待机状态 (S1-S3)(已接通电源)
      • 睡眠时允许待机状态 (S1-S3)(使用电池)

重要提示

默认情况下 未配置 这些设置。

对于某些系统,仅绕过 TPM 可能需要打开外壳并需要焊接,但可以以合理的成本完成。 使用 PIN 保护程序绕过 TPM 的成本更高,并且需要强制使用 PIN。 使用复杂的增强型 PIN 几乎是不可能的。 若要了解有关策略设置的详细信息,请参阅 允许用于启动的增强型 PIN

对于安全管理工作站,建议:

  • 将 TPM 与 PIN 保护程序配合使用
  • 禁用待机电源管理
  • 在设备离开授权用户的控制权之前关闭或休眠设备

后续步骤

了解如何在组织中规划 BitLocker 部署:

BitLocker 规划指南 >