有关在 Azure 中防御推理执行旁道漏洞的指南

上次文档更新时间:太平洋标准时间 2018 年 5 月 21 日下午 3:00。

最近发现了一种称为推理执行旁道攻击的新型 CPU 漏洞,这使想要了解其详情的客户向我们提出了问题。

我们已在所有云服务中部署了缓解措施。 运行 Azure 并将客户工作负荷相互隔离的基础结构是受保护的。 这意味着 Azure 上运行的其他客户无法使用这些漏洞攻击你的应用程序。

此外,Azure 正在尽可能扩大内存保留维护的使用范围,当主机更新或 VM 移动到已更新的主机时,会将 VM 暂停最多 30 秒。 内存保留维护进一步降低了对客户的影响,并且不需要重新启动。 对主机进行系统级更新时,Azure 将利用这些方法。

Note

2018 年 5 月 21 日更新:Google Project Zero和微软公布了一个推理执行旁道漏洞的新变种:Speculative Store Bypass。我们已经在 Azure平台上部署了针对这一漏洞的深度防御措施。更多信息请参阅:https://portal.msrc.microsoft.com/zh-cn/security-guidance/advisory/ADV180012

2018 年 2 月下旬,英特尔公司(Intel Corporation)发布了新一版的微代码修订指南,旨在提升稳定性并解决Google Project Zero近期披露的硬件漏洞所带来的安全风险。Microsoft Azure已于2018年1月3日实施的修补措施不会受到Intel微代码更新的影响。我们已经采取强有力的措施,保护Azure客户免受他人Azure虚拟机上运行的恶意程序的影响。

仅当您在Azure虚拟机上运行共享代码或不受信任的代码时,方需要考虑通过Intel微代码更新来防御Spectre漏洞变体2(CVE-2017-5715或称“分支目标注入”)所带来的潜在威胁。在面向Azure客户推出之前,工程团队正在进行充分测试以最大程度地降低微代码对性能的影响。由于只有极少数客户会在VM上运行不受信任的代码,因此大多数客户都不需要在发布后启用此功能。

有更多信息可用时,我们会更新此页面。

使操作系统保持最新

虽然无需操作系统更新也可将你在 Azure 上运行的应用程序与 Azure 上运行的其他客户隔离,但使操作系统版本保持最新始终是最佳做法。 2018 年 1 月和更新的 Windows 安全汇总中包含了针对这些漏洞的缓解措施。

对于以下产品/服务,我们建议执行下面的操作来更新操作系统:

产品/服务 建议的操作
Azure 云服务 启用自动更新,或确保正在运行的是最新的来宾操作系统。
Azure Linux 虚拟机 如果有来自操作系统系统提供方的更新可用,请进行安装。
Azure Windows 虚拟机 在安装操作系统更新之前,请验证是否正在运行支持的防病毒应用程序。 有关兼容性信息,请与防病毒软件供应商联系。

安装 1 月安全性汇总

其他 Azure PaaS 服务 使用这些服务的客户不需要执行任何操作。 Azure 会自动使你的操作系统版本保持最新。

附加指南(如果正在运行不受信任的代码)

除非正在运行不受信任的代码,否则不需要客户执行更多操作。 如果允许不信任的代码(例如,允许某一客户上传你随后要在云中的应用程序内执行的二进制文件或代码片段),则应执行以下附加步骤。

Windows

如果使用 Windows 且托管不受信任的代码,还应启用一种称为内核虚拟地址 (KVA) 映射的 Windows 功能,该功能提供额外的保护来防御推理执行旁道漏洞(具体适用于变体 3 Meltdown、CVE-2017-5754 或恶意数据缓存加载)。 此功能在默认情况下处于关闭状态,如果启用,可能会影响性能。 请按照 Windows Server KB4072698 中“在服务器上启用保护”的说明执行操作。 如果正在运行 Azure 云服务,请验证是否正在运行 WA-GUEST-OS-5.15_201801-01 或 WA-GUEST-OS-4.50_201801-01(从 2018 年 1 月 10 日起提供),并通过启动任务启用注册表项。

Linux

如果使用 Linux 且托管不受信任的代码,还应将 Linux 更新到一个实现内核页表隔离 (KPTI) 的较新版本,内核页表隔离会将内核使用的页表与属于用户空间的页表分隔开来。 这些防御措施需要 Linux 操作系统更新,可以在推出后从分发版提供方获取。 操作系统提供方可告诉你保护在默认情况下是处于启用状态还是禁用状态。

后续步骤

若要了解详细信息,请参阅 Securing Azure customers from CPU vulnerability(确保 Azure 客户免受 CPU 漏洞影响)。