Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
本文介绍了Microsoft如何通过有针对性的启动和主机认证来确保主机完整性和安全。
度量启动
受信任的平台模块 (TPM) 使用受信任的第三方提供的固件,是一种防篡改加密安全审核组件。 启动配置日志包含主机上次执行引导序列时记录在其平台配置寄存器(PCR)中的、以哈希链方式串联的度量值。 下图显示了此记录过程。 通过将先前已哈希的度量值逐步加入下一次度量值的哈希计算中,并对合并后的结果运行哈希算法,即可实现哈希链。
认证是指主机通过其启动配置日志(TCGLog)证明其配置状态。 伪造启动日志是非常困难的,因为 TPM 不公开读取和扩展操作以外的 PCR 值。 此外,宿主认证服务的凭证会被封存为特定的PCR值。 哈希链使得在带外伪造或解封凭证在计算上变得不可行。
主机证明服务
主机认证服务是一种预防措施,在允许主机与客户数据或工作负载交互之前,先检查其是否值得信赖。 主机证明服务(Host Attestation Service)会依据证明策略(安全状态的定义)验证每台主机发送的合规声明(可验证的主机合规性证明)。 由TPM提供的 信任根 保障了该系统的完整性。
主机证明服务存在于专用锁定环境中的每个 Azure 群集中。 锁定环境还包括参与主机引导协议的其他守门服务。 公钥基础设施(PKI)充当中介,用于验证证明请求的来源可信性,并在主机证明成功后充当身份签发者。 颁发给进行证明的主机的证明完成后凭据被密封并绑定到其身份。 只有请求的主机才能解封凭证并利用它们获取增量权限。 这种设计有助于防止中间人攻击和伪装攻击。
如果Azure主机出厂时存在安全配置错误,或者数据中心有人篡改,其TCGLog会包含入侵迹象,主机认证服务(Host Attestation Service)会在下一次认证时标记这些信息。 这种检测会导致认证失败。 证明失败会导致 Azure 机群无法信任该问题主机。 此防护可有效阻止与主机之间的所有通信,并触发事件工作流。 Microsoft会进行调查和详细的事后分析,以确定根本原因及任何潜在的泄露迹象。 只有在分析完成后,Microsoft才能修复主机,允许其加入Azure舰队并承担客户工作负载。
下图展示了主机证明服务的高级架构:
证明度量值
以下章节展示了今天所记录的测量数据示例。
安全启动和安全启动密钥
通过验证签名数据库和撤销签名数据库摘要,主机认证服务确保客户代理信任合适的软件。 通过验证公钥注册密钥数据库和公钥平台密钥的签名,主机认证服务确认只有受信任方才能修改可信软件的定义。 最后,通过确保已启用安全启动,主机证明服务会验证这些定义正在被强制执行。
调试控件
调试器是面向开发人员的强大工具。 然而,如果非受信任方获得内存和其他调试命令的访问权限,可能会削弱数据保护和系统完整性。 主机证明服务会验证生产环境中的机器是在禁用调试功能的情况下启动的。
代码完整性
UEFI 安全启动 确保只有受信任的低级软件在启动过程中运行。 同样的检查也必须在启动后环境中对驱动程序和其他具有内核模式访问权限的可执行文件进行。 为此,代码完整性(CI)策略指定有效和无效签名,以识别可信驱动、二进制文件及其他可执行文件。 主机认证服务负责执行这些政策。 策略违规会向安全事件响应团队发出警报以进行调查。
后续步骤
想了解更多关于Microsoft如何推动平台完整性和安全的信息,请参见: