Windows系统启动与关闭机制深度解析
1. 启动过程中的测量与信任问题
在系统启动时,当出现“Press Any Key For Boot From CD Or DVD”提示,如果未按键,系统会继续启动下一个启动项。这种情况下,启动顺序改变,TPM(可信平台模块)的测量值也会不同,导致TPM无法解封VMK(虚拟机主密钥)。若启用了安全启动又尝试禁用它,同样会使TPM测量值失效。这表明测量启动与BIOS配置紧密相关。
测量启动虽然能让远程实体确认启动过程的完整性,但存在一个重要问题:引导管理器仍然信任机器的固件代码,并借助其服务与TPM进行有效通信来启动整个平台。目前,针对UEFI核心固件的攻击已多次被证实。
为解决这一问题,可信执行技术(TXT)得到改进,支持名为安全启动(Secure Launch)的重要特性。安全启动(在英特尔术语中也称为可信引导)提供由CPU制造商签名、由芯片组执行(而非固件)的安全认证代码模块(ACM)。
ACM有两种类型:BIOS ACM和SINIT ACM。BIOS ACM用于测量BIOS并执行一些BIOS安全功能,SINIT ACM则用于测量和启动操作系统的TCB(TBOOT)模块。两者通常包含在系统BIOS镜像中,但必要时可由操作系统更新和替换。
ACM是可信测量的核心根源,运行在最高安全级别,必须防范各种攻击。处理器微代码会将ACM模块复制到安全内存,并在允许执行前进行多项检查,包括验证ACM是否与目标芯片组兼容、ACM的完整性、版本和数字签名等。若任何一项检查失败,GETSEC指令将不会执行ACM。
安全启动的另一个关键特性是TPM对动态信任根测量(DRTM)的支持。TPM的16个
超级会员免费看
订阅专栏 解锁全文
855

被折叠的 条评论
为什么被折叠?



