33个硬件和固件漏洞:威胁指南

Meltdown和Spectre提出了有关攻击者可以在流行的硬件及其固件中利用的漏洞的警报。这是提出最主要威胁的综述。

橙色的监视器,带锁图标网络安全网络威胁
Getty Images

2018年1月,整个计算机行业因两个新的处理器漏洞而备受戒备 崩溃和幽灵 打破了将内核和用户空间内存分开的基本OS安全边界。这些缺陷源于现代CPU的性能特征,即推测执行,要缓解这些缺陷,需要进行有史以来最大的补丁协调工作之一,涉及CPU制造商,设备制造商和操作系统供应商。

Meltdown和Spectre当然不是由硬件设计决定引起的第一个漏洞,但是它们的广泛影响激发了安全研究界对此类漏洞的兴趣。从那时起,来自学术界和私营部门的许多研究人员一直在研究CPU和其他硬件组件的低级操作,并且发现了越来越多的问题。

如果不发布新一代组件,则无法完全缓解某些硬件漏洞,而其他一些漏洞则可以通过固件修复,而固件是硬件芯片中的低级编程。无论哪种情况,打补丁都不是一件容易的事,因此此类缺陷可能会在很长一段时间内继续影响现实世界的设备。

这是在Meltdown之前和之后发现的与硬件相关的漏洞的列表,您应该意识到:

CPU侧通道攻击 

幽灵变种1-CVE-2017-5753

CVE-2017-5753也称为边界检查旁路,它使攻击者能够利用CPU高速缓存作为辅助通道,利用现代CPU的分支预测功能从其他进程的内存中提取信息。它允许一个进程从另一进程的内存中提取敏感信息,但也可以绕过用户/内核内存特权边界。该漏洞影响英特尔,IBM和数量有限的ARM CPU。

幽灵变种2-CVE-2017-5715

幽灵变种2与变种1具有相同的影响,但是使用了称为分支目标注入的不同开发技术。有效地缓解Spectre的这种变体需要对受影响的CPU微代码进行更新,可以通过BIOS / UEFI更新或操作系统在每次重新启动时应用这些更新。

崩溃变体3-CVE-2017-5754

Meltdown也被称为流氓数据缓存负载(RDCL)或CPU推测执行漏洞的变体3,它是利用现代Intel CPU的无序执行功能的漏洞。它允许用户进程跨安全边界读取受保护的内核内存。该修补程序仅需要操作系统更新,并且涉及通过诸如Linux的内核页表隔离(KPTI)之类的机制,对内核内存(通常包含敏感机密)进行更严格的隔离。

Meltdown-GP-CVE-2018-3640

Meltdown的变体或变体3a,使用系统寄存器的推测性读取来实现信息的旁通道泄漏。因此,也知道恶意系统寄存器读取(RSRE)。缓解措施需要微码更新。

Meltdown-NM-CVE-2018-3665

与Meltdown相关的推测执行缺陷,也称为LazyFP,可用于泄漏浮点单元(FPU)的状态-英特尔现代CPU中存在的专用数学协处理器,用于加速浮点数的数学运算。 FPU状态可以包含来自加密操作的敏感信息。可以通过在操作系统级别强制执行“急切”而不是“惰性” FPU上下文切换来缓解此漏洞。

Spectre-NG-CVE-2018-3639

也称为Spectre变体4或Speculative Store 通过 pass(SSB),这是一个Spectre变体,它允许在已知先前的内存写入地址之前执行内存读取,并可用于泄漏跨进程信息。缓解措施需要微码和 操作系统更新 .

Spectre-PHT-CVE-2018-3693

也称为Spectre 1.1,是Spectre的变体,它利用推测存储来创建推测缓冲区溢出。它允许绕过Spectre以前的一些基于软件的缓解措施,并且需要操作系统更新。

融化RW 

也称为Spectre 1.2,是一种利用推测性存储覆盖只读数据和代码指针的变体。此变体可用于破坏软件沙箱,并且与Spectre 1.1相关。缓解要求的操作系统更新。

预示 -OS-CVE-2018-3620

也称为L1终端故障, 预示 是针对Intel CPU的一种推测性执行攻击,它允许从处理器的L1数据缓存中提取信息。在将同一物理CPU拆分为多个虚拟CPU的虚拟机的上下文中,这尤其敏感,因为这些虚拟CPU使用相同的L1缓存。此变体允许攻击者从OS或SMM(系统管理模式)中提取信息,这是与操作系统分开的另一种CPU操作模式,旨在供BIOS / UEFI或低级OEM代码使用。

预示 -VMM-CVE-2018-3646

预示 的一种变体,它会影响虚拟机,并允许在VM中运行的来宾操作系统从其他来宾VM或管理程序本身读取敏感内存。

预示 -SGX-CVE-2018-3615

预示 的一种变体,它使攻击者可以读取Intel Software Guard Extensions(SGX)飞地的内存。 SGX是某些Intel CPU提供的受信任的执行环境,即使操作系统本身已受到威胁,开发人员也可以使用它来安全地存储数据和执行代码。

Meltdown-PK和Meltdown-BND

Meltdown-PK(保护密钥绕过)和Meltdown-BND(边界检查绕过)是Meltdown的两个变体,由一组学术研究人员于2018年11月推出,作为对瞬态执行攻击的较大评估的一部分。 Meltdown-PK影响Intel CPU,而Meltdown-BND影响Intel和AMD。

Spectre-PHT-CA-OP,Spectre-PHT-CA-IP和Spectre-PHT-SA-OP

这些是Spectre的变体,它们利用CPU的模式历史记录表(PHT)。它们是由同一团队与Meltdown-PK和Meltdown-BND同时披露的。

Spectre-BTB-SA-IP和Spectre-BTB-SA-OP 

这些是利用分支目标缓冲区(BTB)的Spectre攻击的变体。他们于2018年11月被发现Meltdown-PK和Meltdown-BND的同一团队披露。该团队当时得出结论,“大多数防御,包括已部署的防御,都无法完全缓解所有攻击变型。”

辐射-CVE-2018-12126

掉出来 也称为微体系结构存储缓冲区数据采样(MSBDS)的漏洞,其影响与Meltdown相似,因为它可用于从安全边界跨越受保护的内存区域泄漏敏感机密。它是Intel所谓的微体系结构数据采样(MDS)的新型针对CPU的侧通道攻击的一部分。该缺陷会影响操作系统和管理程序,缓解措施需要更新CPU微代码。

RIDL-CVE-2018-12127和CVE-2018-12130

的另外两个变体 MDS攻击 被称为微体系结构加载端口数据采样(MLPDS)和微体系结构填充缓冲区数据采样(MFBDS)。像辐射一样,缓解措施需要更新CPU微代码。

僵尸-CVE-2019-11091

第四变体 称为微体系结构数据采样不可缓存内存(MDSUM)的MDS攻击。与Fallout和RIDL一样,它可以用于泄漏敏感的内核或管理程序内存。

星空

星空 是Xilinx制造的现场可编程门阵列(FPGA)的位流加密过程中的设计缺陷。与CPU带有适合大多数计算任务的一组预定的通用指令不同,FPGA是一种集成电路,其逻辑可由客户完全编程。它们通常被配置为比通用CPU更好,更高效地执行一项特定任务,并且广泛用于航空,金融和军事等部门的任务关键型或安全关键型应用。

客户将加载到FPGA上的配置文件称为比特流,而像Xilinx这样的FPGA制造商则控制着大约50%的FPGA市场,并增加了加密和比特流验证机制,以允许客户保护其已部署的FPGA可能包含的知识产权和其他秘密。 。德国波鸿鲁尔大学霍斯特·戈尔茨IT安全研究所的一组研究人员发现Xilinx 7系列和Virtex-6 FPGA的比特流安全机制存在设计缺陷,攻击者可以解密该比特流,甚至对其进行修改。 。

研究人员在论文中写道:“通过我们的攻击,我们可以绕过比特流加密,并完全在所有Xilinx 7系列设备上以及部分在Virtex-6设备上解密一个假定的安全比特流。” 他们的纸, 它将在第29届USENIX安全研讨会上发表。 “此外,我们还可以通过调整HMAC来操纵比特流。Out攻击设置通常与主流实践中遇到的设置相同:攻击者仅需要访问现场FPGA的配置接口。在这种设置下,秘密解密密钥已经加载到FPGA中-例如,在设备制造后,密钥被存储在内部电池供电的RAM(BBRAM)或eFUSE中。如后所述,对手将FPGA与存储的密钥一起使用作为对比特流进行解密的神谕。”

为了阻止Starbleed攻击,黑客需要访问FPGA上的硬件配置接口,这通常意味着他们需要对设备的物理访问。但是,某些FPGA是通过单独的微控制器进行编程和重新编程的,这些微控制器可以连接到网络,在这种情况下,可以远程执行这种攻击。

由于设计缺陷存在于芯片中,因此无法修补,因此将在下一代Xilinx FPGA中予以纠正。在论文发表之前,该公司已收到该漏洞的通知,并已向客户发送了咨询。

鸭嘴兽

鸭嘴兽 是一种侧信道攻击,滥用了运行平均功率限制(RAPL)接口,该接口用于测量CPU内核的功耗,并且自2011年以来开发的所有Intel CPU(Sandy Bridge)中都存在。这是第一种可以远程执行的差分功率分析攻击,可用于泄漏Linux内核内存和Intel SGX安全区域中的秘密(例如加密密钥)。

该攻击于2020年11月宣布,由格拉茨科技大学,英国伯明翰大学和CISPA亥姆霍兹信息安全中心的一组研究人员设计。 Linux内核开发人员通过阻止无特权的应用程序访问RAPL能耗数据,修补了漏洞(跟踪为CVE-2020-8694和CVE-2020-8695)。

但是,这无法解决针对英特尔SGX的特权攻击媒介,英特尔SGX是CPU中内置的受信任执行环境(TEE),即使在操作系统完全受损的情况下,该环境也应确保敏感密码数据的安全。为了解决这个问题,用户必须部署 英特尔发布的CPU微代码更新.

当研究人员测试并确认了他们对英特尔CPU的攻击时,他们警告说,包括AMD,Nvidia和ARM在内的其他芯片制造商的CPU也具有可访问的板载电表,并且很容易受到这种攻击的影响。

DRAM存储器Rowhammer攻击

罗哈默

罗哈默 是一种具有安全隐患的物理效应,发生在SDRAM芯片内部,当快速连续连续读取同一条物理存储单元行时,这种行为被称为锤击。这可能导致来自锤击行中的单元的电荷泄漏到相邻行中,从而修改了那些行中的单元的值。由于现代SDRAM芯片(特别是DDR3和DDR4)增加了单元密度,因此这被称为位翻转(bit flip),并且可能发生这种情况。

尽管Rowhammer效应已为人所知或记载了很长时间,但Google零项目团队的成员在2015年3月率先证明了它可能带来安全隐患,当时他们揭示了基于此的两个特权提升漏洞。

罗哈默 .js

罗哈默 .js是通过JavaScript对Rowhammer攻击的一种实现,证明了可以通过浏览器远程访问此漏洞,只需访问恶意网页即可。浏览器供应商已添加针对此漏洞的缓解措施。

德拉默-CVE-2016-6728

德拉默 是2016年针对Android设备展示的Rowhammer型攻击。在此之前,人们认为移动设备中的存储芯片不受影响。

翻转风水

针对虚拟机的Rowhammer攻击的一种实现,其中恶意来宾VM可以以受控方式翻转物理内存中的位,从而影响其他虚拟机。研究人员通过在目标VM中破坏OpenSSH公钥身份验证来证明这一点。

ECCploit  

ECCploit 这种攻击表明Rowhammer型攻击甚至可以对具有纠错码(ECC)功能的SDRAM芯片起作用。通常在服务器中使用的这种类型的内存被认为不受Rowhammer的影响。

掷锤

有关:
1 2 Page 1
第1页,共2页