问题描述
最近发现的被称为 Spectre 和 Meltdown 的安全漏洞影响整个半导体行业的各种处理器架构。
本文试图搞清楚在 Xilinx 基于 ARM 的 Zynq-7000、Zynq UltraScale+ MPSoC 和 Zynq UltraScale+ RFSoC 器件中是否存在任何漏洞。
这是一项持续的工作,Xilinx 正在与 ARM 紧密合作,了解相关信息并将其传递给相关领域以及可能会担心对其系统安全性有影响的 Xilinx 客户。
本答复记录将是主要的通信方式,并随更多信息的提供保持更新。
解决方案
我们根据 ARM 的初步信息,做出了如下的当前评估:
ARM Cortex-A53 和 Cortex-R5 处理器对 Spectre 或 Meltdown 漏洞没有任何已知的敏感性。 因此,Zynq UltraScale+ MPSoC 和 Zynq UltraScale+ RFSoC 器件对 Spectre 和 Meltdown 也没有任何已知的敏感性。
ARM Cortex-A9 处理器对 Meltdown 漏洞没有已知的敏感性。
ARM Cortex-A9 容易受一些变种的 Spectre 的影响。因此,Zynq-7000 容易受一些变种的 Spectre 的影响。
特别是:
CVE-2017-5753 边界检查旁路(Spectre Variant 1 —“绕过软件对不可信值的检测”)
CVE-2017-5715 分支目标注入(Spectre Variant 2 —“通过训练分支预测因素强制执行特权投机”)
没有专门针对 Xilinx 专用 ARM 内核实现方案的已知敏感性。
对 Xilinx Zynq-7000 客户的潜在影响将取决于他们的设计/使用案例的细节,包括他们的安全需求以及其系统的可访问性等变量。
ARM A9 补丁融合在 Xilinx 2018.1 版内核(Linux 内核 4.14)中。
应用的具体补丁如下:
arm:在 Cortex-A9 的 switch_mm 上添加 BTB 失效:https://github.com/Xilinx/linux-xlnx/commit/1e3bbae888606b9dc2749108ff632512153677ab
arm:在 Cortex A9 的用户映射之外,使有关预取中止的 BTB 失效:https://github.com/Xilinx/linux-xlnx/commit/0ea2583d269764d6b6dbace83f9c26255af7c540
GCC 的补丁正在等待 ARM 的交付,并暂定于 2018.3 Xilinx 工具版本。
Xilinx 建议所有通常关心安全问题的客户,特别是关心 Spectre 漏洞的客户,验证他们使用的软件的完整性,并利用设备安全引导特性来验证软件。
如欲了解更多详情,敬请访问 ARM 网站:https://developer.arm.com/support/security-update
领取专属 10元无门槛券
私享最新 技术干货