Google 的 Titanium 硬件安全架构

本页内容的上次更新时间为 2024 年 9 月,代表截至本文撰写之时的状况。由于我们会不断改善对客户的保护机制,Google 的安全政策和系统今后可能会发生变化。

Titanium 硬件安全架构是 Google 服务的基础,也是 Google 基础架构中许多安全对策的基础。Titanium 硬件包括安全微控制器、硬件适配器和分流处理器,这些硬件专门用于解决 Google 基础架构的特定攻击途径。

Titanium 硬件是 Google 不断发展的全面基础架构安全的最新进展,有助于保护用户数据的完整性、机密性和可用性。Titanium 硬件基于基础架构构建,例如提供传输中加密的加密硬件分流卡,以及提供静态数据加密的内部微服务。

本文档介绍了 Titanium 硬件组件如何协同工作来构建安全架构,从而有助于保护 Google 系统的物理攻击面并缓解对客户数据的威胁。本文档还介绍了 Titanium 硬件如何在软件层启用特定的安全控制措施、在最初的加密硬件分流之外架构的演变,以及 Titanium 硬件安全架构旨在缓解的 Google 客户和部署基础架构面临的实际威胁。

Titanium 硬件安全架构

Titanium 硬件安全架构旨在防范各种情形和威胁行为者。以下架构图显示了 Titanium 的独立但相互关联的组件。

Titanium 架构组件

Titanium 硬件安全架构包含以下组件:

  • Caliptra 信任根 (RTM):有助于为每个硅软件包强制执行安全边界。Caliptra RTM 为根加密服务提供认证和唯一 ID。
  • Titan 芯片 RoT:在平台的启动闪存与其主要启动设备(例如底板管理控制器 [BMC]、平台控制器集线器 [PCH] 和 CPU)之间插入。Titan 芯片提供基于硬件的物理防篡改 RoT,有助于建立强大的身份标识。Titan 芯片还有助于为机器、卡或外围设备进行代码授权和撤消授权。
  • Titanium 分流处理器 (TOPS):提供加密控件,以帮助保护静态数据和传输中数据的机密性和完整性。
  • 自定义主板:提供大规模弹性,以防范来自有缺陷或恶意软件的 DoS 攻击,以及防范物理攻击。例如,在该图中,芯片软件包和 Titan RoT 位于自定义主板上,而该主板与 Titanium TOP 的自定义主板或其他基础架构的主板是分开的。
  • 机密计算加密区:有助于强制隔离 Google 的管理权限,提高与其他租户的隔离性,并使用证明添加可验证性。通过证明可以确保环境未被更改。
  • 后端容错区域化服务:有助于防止跨服务、可用区或管理访问权限升级。

在该图中,“其他基础架构”是指网络架构和复制的后端存储。

Titanium 硬件安全架构的设计原则

我们的 Titanium 硬件组件及其交互是按照以下基本原则开发的:

  • 无单点故障:Google 架构旨在避免单点故障,例如具有多重职责的单一承载组件。构建安全可靠的系统介绍了避免单点故障的重要性。我们在整个实体基础架构、所有区域,甚至是芯片中的硅都遵循这一原则。这种遍布全球基础架构的弹性有助于确保客户数据的安全和可用性。

    例如,使用机密计算进行实时迁移有助于在受支持的主机上保留加密内存。实时迁移有助于确保长时间运行的虚拟机不会因维护事件或响应漏洞而成为单点故障。

  • 边界是芯片组:由于服务器系统包含多个相互关联且独立的系统单芯片,因此我们的架构从根本上不信任所有连接器、架构、印刷电路板组件 (PCBA)、PCBA 轨迹和电缆。虽然组件分离有助于实现模块化,但如果分离会为攻击者提供明确定义的目标,以便从中窃取明文数据,那么分离也可能会成为弱点。硅封装包本身中的数据会通过封装包中的专用加密资产进行加密和身份验证。

    将边界移至芯片本身有助于最大限度地减少隐式信任。此原则旨在解决数据中心服务条件日益多样化时对数据机密性造成的威胁。例如,将边界设置到芯片组件中有助于解决来自恶意硬件操作的威胁。

  • 零信任和隔离风险:对管理操作进行多方控制有助于确保任何人员账号(或遭到入侵的人员账号)都无法单方面造成本文中所述的威胁。该架构将服务划分为层和区域,以便将风险隔离开来。即使是通常以硬件为根的隔离区,该架构也会考虑发现硬件漏洞以及在组件仍在运行时需要修复的问题。

    例如,如果攻击者恶意破坏在我们数据中心内运行客户工作负载的活跃系统中某个芯片的行为,该架构旨在识别和隔离该受损芯片。然后,该机器便可停止服务。即使机器未被停用,攻击者也必须破解额外的信任边界并破解多个凭据,才能横向移动并对其他系统、用户或区域施加影响。

    独立故障域和隔离技术有助于限制受影响的区域。这些网域和技术增加了检测的自然控制点,并限制了必须引入的额外复杂性。

    如需详细了解我们的零信任实现,请参阅 BeyondProd

  • 透明的安全性:Google 致力于开展多项透明度工作,包括开源、负责任地披露研究和调查结果,以及与硬件制造商生态系统合作。Google 全球基础架构遵循Kerckhoffs 原则,即即使密钥以外的系统的所有内容都是公开信息,加密系统也应是安全的。

    例如,我们会为开源项目做出贡献,并在我们的安全硬件设计和安全软件中使用这些项目。下表介绍了我们贡献和使用的部分开源项目。

    开放源代码项目 说明 Titanium 组件

    BoringSSL

    用于 FIPS 140-3 1 级加密库

    BoringSSL

    Caliptra

    在芯片级别的信任根 (RoT) 中使用

    Caliptra RTM

    OpenTitan

    在 RoT 中用于系统架构中的芯片

    Titan 芯片

    Syzkaller

    用于覆盖率引导的内核模糊测试

    主机 ring0 和用户虚拟机发行版

    PSP

    用于 FIPS 140-3 1 级加密库

    Titanium 分流处理器

  • 物理和逻辑深度防御:Google 依靠数据中心物理安全来帮助保护我们的资本投资和系统。这些安全控制措施是初步防御层,因此我们特意投入额外的逻辑控制措施,以加强系统的防御能力,抵御物理威胁。Titanium 在硬件中添加了隔离功能,可提供额外的防御功能来抵御特定的基础架构威胁,从而增强了我们的纵深防御。

    例如,我们的数据中心配备了金属探测器,可以准确检测存储介质泄露尝试。不过,我们的静态数据加密策略是经过精心设计的,不会依赖于实体介质保管。这些逻辑和物理控件是独立且互补的层。

    我们结合了物理和逻辑安全控制机制,以便时刻防范内部威胁,并帮助保护用户数据的机密性。

Titanium 架构组件的安全优势

下表列出了使用 Titanium 安全架构组件(在硬件和软件层)实现的一些重要安全优势。以下各部分将详细介绍这些安全优势。

安全优势 架构组件

片上系统 (SoC) 上的硅级信任边界,例如 CPU 或 GPU

Caliptra RTM

硅片级可验证性

Caliptra RTM

硬件级加密身份

Caliptra RTM、Titan RoT

验证预期的二进制文件是否正在运行

Caliptra RTM、Titan RoT

在启动过程中缓解持续性威胁

Caliptra RTM、Titan RoT

保护静态数据和传输数据的机密性

加密 TOP

分流处理器级保护(超出实体卡的范围)

加密 TOP

安全性设计、抗物理攻击能力和弹性能力,支持通过单个 Titan RoT 恢复完整系统固件

自定义主板

专用板,仅包含必要的连接器,有助于降低遭受物理性篡改的风险

自定义主板

通过加密技术将工作负载与机器级系统软件和管理员访问权限隔离开来

机密计算特区

通过 DRAM 加密实现防篡改(以启用使用中数据加密)

机密计算特区

最大限度地缩小受影响的区域,并为具有本地访问权限的攻击者设置屏障

后端容错区域化服务

多层隔离

后端容错区域化服务

用于衡量的 Caliptra 信任根

Caliptra RTM 有助于在我们的生态系统中建立对在片上系统 (SoC) 上运行的固件(例如 CPU、GPU 和 TPU)的信任和透明度。

Caliptra RTM 具有以下优势:

  • 提供根加密服务:Calithera RTM 可通过强大的端到端加密完整性验证来检测关键代码和配置是否已损坏。Caliptra RTM 可以对其代码和配置进行加密测量,使用唯一的受硬件保护的认证密钥对这些测量值进行签名,并报告可证明设备真实性和完整性的测量值。Caliptra RTM 为主板提供加密设备身份以及一组固件和配置完整性测量。
  • 缓解物理供应链安全:Caliptra RTM 有助于确保硬件是真实的,并且正在运行预期的固件和软件。结合软件供应链安全,Captra RTM 可让系统验证固件和软件的真实性和完整性,无论其是由 Google 还是第三方创建。此验证流程可让 Caliptra RTM 在经过授权的更新中保持真实性和完整性,并有助于确保配置保持预期状态并经过验证。
  • 防止需要直接访问正在运行的硬件的物理入侵:由于 Caliptra RTM 内置于芯片的硅层中,因此尝试向特定于应用的集成电路 (ASIC) 传送错误固件的 PCBA 插入器或恶意芯片无法成功攻击 RoT。例如,攻击者可以通过篡改相对较慢的 SPI 总线来绕过外部 RoT 的检测功能。不过,攻击者更难攻破 SoC 或 ASIC 中嵌入的 RoT。

Titan 芯片信任根

Titan 旨在通过加密方式维护设备身份,防范恶意软件推送,并使用撤销来强制执行代码真实性。

强大的加密设备身份有助于确保舰队仅由运行预期二进制文件且可以识别和验证合法访问权限的经过验证的机器组成。合法访问权限在硬件级别根植。

默认情况下,生产机器使用可信启动来帮助确保只有经过身份验证的软件才能运行。可信启动会验证所有启动组件的数字签名,并且在身份验证失败时不允许机器参与生产环境。

作为额外的预防性控制措施,机器代码撤消可防止应用未经授权的软件更改。Titan 芯片中的撤消功能不仅有助于缓解恶意攻击(例如回滚或重放攻击),还能缓解非恶意稳定性或弹性 bug(例如,防止意外重新安装有 bug 的旧固件)。

如需了解详情,请参阅 Google 如何在生产机器上强制执行启动完整性

用于加密的 Titanium 分流处理器

加密的 Titanium 分流处理器 (TOP) 有助于在分流 I/O 期间提供安全性。这些 TOP 由 Titan 或 Caliptra RTM 提供保护。TOP 部署了广泛的传输中数据的经过身份验证的加密和静态数据的经过身份验证的加密,且成本低廉。经过身份验证的加密意味着客户数据具有加密保证,可确保其机密性和完整性。由于 TOP 管理加密功能,因此会对许多系统组件降低权限。TOP 可实现增强的架构属性(例如可用性),同时最大限度地降低数据机密性丢失的可能性。

自定义主板

Google 基础架构中的自定义主板旨在提供硬件来源。主板支持多层认证。主板设计可保护客户数据,即使在攻击者将恶意设备物理连接到机器的极不可能发生的情况下也是如此。Titanium 主板设计有助于可靠地部署其他强化机制,例如去除调试端口、只读串行控制台、总线连接器入侵和挤出信号。

当机器开启时,TLS 和 ALTS 是 BMC 网络堆栈唯一接受的协议。对于使用第三方 COTS 设计的设备(例如 X4 实例),TOP 会代理该第三方设计所特有的任何管理流量。代理管理流量意味着我们的基础架构不依赖于第三方设计的身份验证、授权、传输安全或网络安全。

Titanium 自定义主板设计为内置恢复和备份机制,以确保可用性和可恢复性。它们可以从大多数崩溃或固件损坏中恢复。我们的最新设计可让您从一个正常运行的 Titan RoT 重新构建整个机器。这些主板使用功能专用电源组件和重置信号,有助于确保 Titan RoT 与平台的其余部分电气独立,并有助于保护其对平台固件载荷的控制,以便进行身份验证和恢复。

机密计算特区

机密计算会创建一个可信执行环境 (TEE) 或安全区域,以帮助将客户敏感工作负载与 Google 管理访问权限隔离开来。当数据由 CPU 或 GPU 处理时,机密计算可通过计算隔离和内存加密提供技术预防性控制。机密计算有助于确保即使是恶意Hypervisor 也无法访问虚拟机。对于客户工作负载,机密计算可提供一层数据机密性隔离,以防止 Google 人员意外访问或自动化系统软件操作出现大规模错误。

由 Titanium 架构实现的高级安全功能的一个示例是适用于 Hyperdisk Balanced 的保密模式。Hyperdisk Balanced 的保密模式结合了基于 Titanium 的块存储分流、保密计算和 Cloud HSM,以创建硬件植根的 TEE。换言之,Hyperdisk Balanced 的机密模式是 Hyperdisk 平衡的模式。Hyperdisk Balance 的机密模式可隔离基础架构,以便敏感密钥在硬件根 TEE 中专门处理。如需了解加密操作的第三方审核,请参阅公开报告 - Hyperdisk 的机密模式 - DEK 保护分析

后端容错区域化服务

后端容错区域化服务有助于最大限度地缩小本地访问攻击者的影响范围。Google 基础架构旨在将服务、系统和区域隔离起来,以防止特权内部人员或受攻击服务的横向移动。

我们正在努力在越来越广泛的内部身份和访问权限管理系统中添加区域信息。区域信息可加强加密隔离,以便获得本地访问权限的攻击者必须破解来自不同基础架构服务的多个凭据,才能继续横向移动。

如果攻击触发了预防性控制,导致生产机器退出环境(例如,导致系统关机),我们的容错后端基础架构有助于确保客户数据和服务在附近机器上的持续可用性。如需详细了解我们的基础架构控制机制,请参阅 BeyondProdGoogle 如何保护其生产服务

Google Cloud 基础架构的攻击途径

本部分介绍构成 Google Cloud 部分攻击面的特定物理和逻辑威胁。Titanium 硬件安全架构专门用于应对针对 Google 基础架构和我们存储的用户数据的一系列独特威胁。

基础设施威胁

Titanium 架构旨在防范以下多种威胁:

  • 有物理访问权限的内部人员:我们的员工需要访问数据中心中的物理设备,以部署、维护和维修硬件。此类访问权限代表一种潜在攻击途径,因为恶意人员或承包商有正当的业务理由在我们的数据中心内对某些机器进行物理维修。
  • 具有逻辑访问权限的内部人员:与对数据中心的物理访问权限类似,员工需要开发、维护、测试、调试、调整和支持多层级的 Google 软件堆栈。这些人员包括开发者、SRE 和面向客户的云工程师。

    如需详细了解我们如何防范此类威胁,请参阅 Google 如何保护其生产服务

  • 具有逻辑访问权限的外部攻击者:外部攻击者可以在 Google Cloud 环境中站稳脚跟,并尝试横向转移到其他机器,以获得对敏感数据的访问权限。外部攻击者常用的一种策略是,先破解合法人员或承包商的账号。

下图显示了云环境的哪个部分最容易受到这些威胁的影响。

容易受到这些威胁的漏洞。

数据中心服务器的攻击面

下表介绍了数据中心服务器的典型攻击面。Titanium 硬件安全架构旨在提供强大的防御功能,以抵御此类威胁。

攻击者 目标 攻击面 风险

有物理访问权限的内部人员

存储介质(SSD、HDD 或启动驱动器)

实体硬盘和连接器

此攻击可能会窃取驱动器,并尝试使用攻击者的工具访问该驱动器。

DIMM

物理内存连接器

此类攻击可能会冻结 DIMM、将其从数据中心中取出,并尝试使用攻击者自己的工具访问其中的数据。这种威胁有时称为“冷启动”攻击。

服务器

USB 或 PCIe 连接器

此攻击可能会将恶意硬件连接到服务器。攻击者可以利用恶意硬件来尝试执行代码或泄露驻留数据。

主板

联合测试访问组 (JTAG) 扩展调试端口 (XDP)

此攻击可以连接硬件调试工具以获得代码执行权限或访问在 CPU 上处理的数据。

网络

以太网网线

此攻击可通过以太网网线来访问设备之间传输的所有数据。然后,任何明文流量都可能会被观察到。

主板

Firmware

此攻击可能会引入持久性恶意固件。此固件可能是从受攻击的制造商预安装的,在传输过程中被拦截的,或由内部人员更新的。此威胁可能会导致预先黑客攻击的硬件,并提供对服务器的后门访问权限的 rootkit。

具有逻辑访问权限的恶意内部人员

计算工作负载(例如虚拟机)

登录点

此攻击可能会使用内部人员凭据直接访问虚拟机或主机以及其中的数据。

Fabric 路由器

实体或管理员访问权限

此攻击可能会对网络路由器获得 root 控制权,以便窃听所有流量,并在网络上传输的任何明文数据中进行渗出或篡改。

主板

Firmware

此攻击可能会将有缺陷的固件映像推送到主板,使其永久无法运行并导致数据无法恢复。

攻击者可以将已知存在漏洞的固件推送到机器,以便使用可实现远程代码执行的漏洞来重新获得控制权。

具有逻辑访问权限的外部攻击者

服务器

虚拟机

此攻击可能会对虚拟机发起公共边信道攻击模式。此类攻击可能会导致在同一硬件上运行的实例或主机系统软件中的数据泄露。

SSD

虚拟机

此攻击可能会使用对 PCIe SSD 的直接访问来尝试推断共同租户的数据。

内存

虚拟机

此攻击途径可能会使用旁路通道在内存中搜索有价值的加密密钥。

服务器

裸机虚拟机

此攻击途径可以使用裸机实例扫描所有外围设备,以查找可让其在机器中保留并攻击后续租户的易受攻击的组件。

将 Titanium 硬件组件映射到威胁

Titanium 硬件安全架构采用多层方法来帮助应对特定基础架构威胁,并防止单点故障。这些威胁可能源自错误或不法行为者。这些威胁涵盖硬件操作,并且可能会利用服务器、网络和控制平面的漏洞。没有任何单一解决方案可以解决所有这些攻击途径,但 Titanium 的多项功能相结合有助于保护用户数据和云计算实例。

场景:恶意硬件操作

恶意硬件操作会对数据安全构成威胁,因为它们可能会导致数据中心的数据外泄以及硬件和固件被修改。Google 的 Titanium 硬件安全架构通过使用各种安全措施(包括加密 RoT、自定义主板和 I/O 处理器)来帮助防范这些威胁。这些组件协同工作,可提供多层防御,以抵御各种攻击。

下表介绍了一些恶意硬件威胁以及 Titanium 架构如何缓解这些威胁。

威胁 Titanium 缓解措施

攻击者从数据中心入侵单个数据驱动器,以访问其中的数据。

存储产品和服务的静态数据加密密钥永远不会在连接了存储介质的机器上永久存储。存储介质的内置自加密功能也已启用深度防御功能,并且使用永远不会在介质本身上永久存储的密钥。

借助 Caliptra RTM,Google 可以将信任根硬件身份和固件完整性纳入授权条件,以便将密钥从密钥管理服务发布到存储服务实例。以某种方式恶意配置了意外固件的机器无法访问解密存储数据所需的密钥。嵌入到芯片软件包中的 RoT 会锚定芯片软件包中的相关加密身份。

单功能中间层是数据平面安全的主要部分,可在每个处理步骤中对数据进行加密。TOP 具有以下优势:

  • 充当硅片中介器,以确保在命令到达第三方 SSD 媒体之前,源自工作负载的所有 NVMe 命令都经过适当的清理。
  • 包含自定义 Google SSD 设计和专用加密控制器,以便直接在硬件数据路径中管理密钥和执行加密。
  • 启用经济实惠的横向扩展存储,同时提供加密和完整性保护。

在需要尽量减少攻击面的情况下,可以使用 dm-crypt 等经过验证的软件解决方案,例如某些启动驱动器使用场景。

攻击者会窃听网线并读取线缆或光纤上的字节。

TOP 会对传输中的数据进行加密,从而消除网络上有价值数据被嗅探的风险。

我们的网卡使用 PSP 硬件分流标准。此标准可提供经济高效的加密,同时将性能损失降至最低。这些实现符合 FIPS 标准。

客户数据在通过机架顶部 (ToR) 或网络架构交换机时会经过加密处理。某些机器学习基础架构使用专有的传输安全机制。

攻击者会替换在数据中心或供应链中存储可变代码的闪存芯片,以便在服务器上运行恶意代码。

Titan 芯片旨在拒绝攻击,并且不会提供对其中存储的凭据的访问权限。即使攻击者重写了非易失性闪存芯片的内容,Titan RoT 也会安全地将代码的测量结果报告给 Google 的控制平面,该平面旨在阻止设备。Google 会定期使用 Titan 芯片在全球范围内撤消已弃用或已知存在漏洞的代码。

攻击者将对抗设备插入数据中心服务器或卡的物理接口中,以运行恶意代码或窃取数据。

自定义主板设计会移除用于插入对抗性设备的接口。

我们已在所有固件中实施了输入/输出内存管理单元 (IOMMU) 配置,以防范 PCIe 尖叫器。(PCIe 尖叫器旨在读取和写入 PCIe 架构中的任意数据包。)随着行业的发展,我们将 PCI IDE 作为补充,进一步加强了对 PCI 中间件攻击的防护,以应对更复杂的 PCI 中间件攻击。

ALTS 和 TLS 是 TOP 和 BMC 上控制和管理功能唯一接受的身份验证和授权网络连接。

Caliptra RTM 会屏蔽任何未经批准的固件。我们的受信任外围设备会向控制平面证明其硬件身份和代码完整性,如果证明记录与硬件和软件 intent 不符,则不会将任何服务器投入生产。

攻击者在数据中心使用冷启动攻击来访问 RAM 中的数据。

机密计算内存加密可保护 RAM 中的所有敏感数据或加密密钥。在低可靠性的边缘数据中心,即使未部署机密计算,机器也会启用 DRAM 加密。

场景:恶意用户利用服务器或网络

攻击者可能会使用公有云在我们的共享基础架构上托管其恶意工作负载,并将数据存储在我们的公共服务中。外部对手(从个人到国家/地区)也可能会尝试获得远程特权访问权限。

为了缓解这些操作,Titanium 硬件安全架构使用 Titan 芯片和 Caliptra RTM 以安全的方式预配运行时凭据,并限制硬件和操作系统的权限。机密计算有助于防止对系统内存进行操纵(无论是物理操纵还是使用 Hypervisor 攻击),Titan 芯片会拒绝或检测到未经授权的软件升级。

下表介绍了一些服务器和网络利用威胁以及 Titanium 架构如何降低这些威胁。

威胁 Titanium 缓解措施

攻击者利用漏洞逃离其虚拟机,并获得对数据以及同一台机器上运行的其他虚拟机的访问权限。

机密计算特区可限制工作负载数据的渗出,无论是处于处理中还是静态状态。此缓解措施可阻止逃逸到虚拟机的攻击者访问正在使用的相关数据。

Titan 芯片和 Caliptra RTM 可阻止攻击者获得持续访问权限。任何尝试进行持久访问的操作都可能会被检测到,因为机器配置与该服务器的配置和代码政策不匹配。机器在重新启动后才能托管生产工作负载,前提是必须先进行此匹配。

攻击者对虚拟机发起公共边信道攻击模式。

我们的舰队管理系统使用 Titan 芯片,可以撤消已知存在漏洞的软件。撤消操作可以阻止针对这些已知漏洞的任何后续攻击。基于 Titan 的完整性测量还可提供高度可信的证据,证明可能需要紧急部署的缓解措施已部署到目标机器。

我们通过 retpoline 和核心调度等技术以及对 Meltdown、Spectre、ZenbleedDownfall 等的深入研究,在旁路调查和缓解方面始终处于领先地位,从而加强了这种方法。

攻击者使用直接访问 SSD 来尝试推断同租户数据,这些 SSD 为多个租户提供存储空间。

静态数据加密有助于通过各种中间件防范逻辑攻击和物理攻击。对于不共享的资源,系统会使用不同的密钥对每个租户的数据进行加密,从而降低对 SSD 进行直接访问攻击的机会。

攻击者扫描内存并使用侧信道搜索数据加密密钥或凭据。

Titan 芯片可用于配置每台机器的密封凭据。即使攻击者在某台机器上获得了 root 访问权限,其凭据也仅绑定到本地 Titan 芯片的专用身份。

攻击者购买裸机实例并扫描所有外围设备,以尝试获得永久访问权限。

Titan 芯片会拒绝任何未经授权的软件升级,包括恶意推送的持续控制。我们的机器工作流程会在裸机客户之间通过完整的系统认证电源周期来确认预期的完整性测量值。

场景:恶意控制平面行为利用服务器或网络

不正当的控制平面内部人员可能会尝试通过多种方式来利用 Google 的系统,包括尝试对网络架构路由器获得 root 控制权、将有缺陷的固件映像推送到主板以及窃听网络流量。Titanium 硬件安全架构通过使用各种机制(包括 Titan 芯片、Calptra RTM、自定义主板和后端容错隔离服务)来防范这些威胁。

下表介绍了一些控制平面威胁以及 Titanium 架构如何缓解这些威胁。

威胁 Titanium 缓解措施

攻击者使用内部人员凭据访问作为客户环境基础层的 Compute Engine 虚拟机。

TOP 有助于确保管理员无法访问客户环境。如果没有访问权限,Google 人员将无法使用其凭据访问客户虚拟机下方的特权硬件和软件层。由于数据只能通过定义的 API 访问,因此 Google 内部人员无法访问客户数据。

攻击者将有缺陷的固件映像大规模推送到主板,导致主板永久损坏。

Titan 芯片 RoT 会拒绝任何未经授权的软件升级,包括恶意推送以进行持续控制。

自定义主板设计使用备用信号网络,将我们的所有 RoT 互连到平台 RoT。平台 RoT 包含关键设备的备用固件。即使网络和 PCI 已被攻击者破坏,带外 (OOB) 网络也可以修复系统。

攻击者将已弃用的已知存在漏洞的生产固件推送到机器,以利用公开漏洞重新获得控制权。

Titan 芯片可拒绝不良推送,并帮助强制撤消已知存在漏洞的代码。它们会对部署在机器上的固件版本进行证明,并在控制平面拒绝该机器。此缓解措施有助于防止任何作业在运行状况不佳的机器上运行,并根据需要触发调查或修复。

攻击者滥用对业务连续性至关重要的硅片调试功能,该功能可在服务器系统中提供可想象的最高级别的数据访问权限。

Caliptra RTM 有助于确保启用侵入式调试接口的所有参数(无论是逻辑连接还是通过直接物理插入)都经过可靠的配置、加密测量,并使用认证协议向我们的控制平面报告。只有处于预期状态的机器才能获得用于提供生产工作负载的访问权限。

攻击者控制了某个后端服务,从而可以访问客户环境。

后端容错区域化服务是指区域化凭据基础架构,不允许单方面人工访问。除了阻止操作员登录计算节点之外,操作员也无法登录控制平面来检索密钥材料。

Titanium 架构中的机密计算特区可将我们的后端授权和密钥预配服务与机器的 root 权限隔离开来。

密钥层次结构有助于保护大多数服务的签名密钥和授权密钥。在密钥层次结构中,根密钥位于 HSM 和保险柜中存储的空气隔离密钥中,或者位于内存数据存储区的 Paxos 仲裁组中存储的密钥中。

后续步骤

作者:Andrés Lagar-Cavilla、Erlander Lo、Jon McCune、Chris Perry