版权声明:本文为博主原创文章,未经博主允许不得转载。 http://www.cnblogs.com/tsec/p/8409600.html
1. Intel TXT 介绍
TXT是Trusted Execution Technology的简称,即可信执行技术,TXT技术源自Intel。其主要目标是通过使用特定的Intel CPU、专用硬件以及相关固件,建立一个从一开机就可信的环境,进而为系统软件提供多种方法,来实现更安全的系统以及更好的数据完整性保护。
通常来讲,Intel TXT是:
- 安全功能的集合;
- 验证这些功能正在使用的一种方法;
- 安全度量(Measurement)和验证系统配置与系统代码的方法;
- 通过设置策略来建立基于度量的信任级别的方法;
- 为可信操作系统提供额外安全功能的方法。
度量(Measurement)在Intel TXT技术中是必不可少的。TPM芯片是Intel TXT技术的基础部件之一,它提供了安全度量软件组件的方法,这些软件组件包括Bios code、平台配置、引导代码、引导配置、系统代码、系统设置等,从而为平台组件和系统软件构建一系列凭证。TPM还提供了准确使用度量来作为信任的证明以及保护这些度量的能力。
Intel TXT引入了两个TCG概念 ------ 静态信任链(Static Chain of Trust)和动态信任链(Dynamic Chain of Trust),如下图所示。静态信任链度量平台配置,动态信任链度量系统软件、软件配置及策略。对于Intel TXT而言,信任根(Root of Trust)就是支持TXT技术的Intel CPU。
1.1 静态信任链
静态信任链(Static Chain of Trust)在平台开机后度量,由硬件发起,度量值由TPM来防护免受篡改,代码在执行前都要被度量。
- 静态信任链由CPU中的uCode启动,度量由芯片厂商提供的BIOS ACM,即认证代码模块(Authenticated Code Module),可用来执行特定安全功能,度量之前需要验证该ACM的签名和完整性;
- BIOS ACM先度量一部分BIOS code,即Start BIOS code,然后,Start BIOS再去度量其它BIOS code和configuration,直到BIOS code度量结束BIOS才真正开始执行;
- 度量值被存储在TPM内特定的PCRs中,即平台配置寄存器(Platform Configuration Register);
- BIOS在执行过程中可调用BIOS ACM中的安全功能来进行安全检查;
- BIOS在执行任何附加code之前,如Option ROM,都需要先度量后执行;
- 引导OS时,BIOS也度量主引导记录(MBR)和OS Loader。
需要说明的是,静态度量只在平台开机后执行一次。
1.2 动态信任链
动态信任链(Dynamic Chain of Trust)由OS的需求而来。
- 开启动态度量,通过特殊的CPU指令度量和验证SINIT ACM;
- SINIT ACM执行安全检查,包括