Microsoft Surface Pro 3(或现代 PC)上的安全启动?

信息安全 加密 磁盘加密 比特锁 tpm
2021-08-18 04:19:53

今天拿到了 Surface Pro 3(顺便说一句,它太棒了!)并在它的 EFI 中注意到它有

  • 启用 TPM,
  • 启用“安全启动”(不确定这样的保护伞/捕获所有术语实际涵盖的内容)

然后在 Windows 8.1 中,它有

  • BitLocker 已打开

我有点惊讶操作系统能够在没有用户输入的情况下完全启动(到用户登录屏幕);这意味着所有密钥材料都是驻留的,并且无需用户干预即可供机器使用。这也让我对这个过程进行了一些反思,所以我想我会在这里发布。

问题:有人可以列举安全启动过程(在现代 PC 上实现)以及信任链是如何建立和维护的吗?

最后,这如何给用户任何保证他们的机器没有在他们身后受到损害?(如邪恶女仆等)

2个回答

引导过程

安全启动

引导 Windows 8 有很多步骤。现在,安全引导通常意味着引导加载程序只有在可以检查其完整性的情况下才会运行。在这种情况下,如果启用,UEFI会在其他任何操作之前启动,并检查引导加载程序是否由受信任的证书颁发机构签名。对于操作系统,通常只有制造商是受信任的,例如 Microsoft。只要引导加载程序由 Microsoft 签名并由 UEFI 验证,那么引导加载程序就会启动。甚至 UEFI 驱动程序也经过验证[1]

EUFI 包含一个注册的受信任机构的数据库。用户可以将他们自己的受信任权限添加到此数据库,以启用非 Microsoft 操作系统的加载。

这是使用可信平台模块(TPM) 的地方。TPM 可用于存储密钥,或执行加密/签名/验证例程。结合 UEFI 的 TPM 允许验证引导加载程序和加载操作系统。

受信任的引导
现在,安全引导过程还没有结束。现在操作系统处于受信任的启动状态,它开始加载内核、系统驱动程序等。安全启动还确保系统驱动程序由受信任的证书颁发机构(例如 Microsoft)签名。

在此处输入图像描述

上图的完整描述

为什么?

Rootkit
在引导过程的每个阶段,某些代码(驱动程序、系统服务等)正在向操作系统注册。恶意软件在启动过程中越早挂钩,它们就越有可能:

  1. 坚持:即使重新启动,恶意软件也会重新启用
  2. 隐藏:将自己置于一个秘密的位置,让操作系统(和防病毒软件)不会注意到它的存在。
  3. Privileged : 继续给自己授予高权限

所有这些引导过程都以最高权限运行。如果没有信任这些加载程序的安全机制,rootkit 可以以高权限自行安装,系统甚至不知道它们的存在。需要签名的引导加载程序和系统服务/驱动程序会降低 rootkit 进入您的系统的机会。 这并不意味着它是 100% 安全的,它只是在引导的某些阶段使它变得更加困难。

邪恶的女仆

Evil Maid 的前提是可以在系统上安装被黑客入侵的引导加载程序以进行恶作剧,键盘记录用于解密卷的密码等。这正是该过程旨在防止的攻击类型。引导加载程序无法在此处刷新并成功引导,除非它已由 Microsoft(或其他受信任的机构,如果用户决定信任其他人)签名。这似乎不太可能,将受信任的第 3 方添加到 EUFI 数据库是不安全的。

某个硬件是否可以随分销商安装的其他受信任的权威机构一起提供?也许吧,但那是完全不同的偏执狂。如果你在那个层面上担心,那么你可能在生活中做错了什么。

启用用户身份验证

上面的指南可以指导您在 Windows 8 上启用 TPM 并为其设置密码。我不确定这是否也适用于平板电脑。

下面的博客很好地介绍了 Windows 使用安全启动、可信启动和测量启动:http: //blogs.msdn.com/b/olivnie/archive/2013/01/09/windows-8-trusted-boot-安全启动测量-boot.aspx 至于“极其不安全”,这些都不是完全安全的,例如英特尔已经创建了 Boot Guard 技术,以帮助在安全启动技术启动之前在芯片/固件级别保护系统。Android 和 Chrome 都有类似的基于 PKI 的启动带有验证引导的加载程序。至于为什么 MS 控制信任,它们是 UEFI 论坛默认 CA 的一种选择。OEM 或 BIOS 供应商可以选择进行自己的 CA,但 Windows OEM 要求还添加了这一点:Microsoft 希望对基于 Windows 的系统的用户体验和安全性进行一些控制。不利于用户自定义和替代操作系统,但可能会在此过程中进行一些小的安全改进。HTH。李 RSS: http: //firmwaresecurity.com/feed