Intel与其他产业伙伴共同披露了Microarchitectural Data Sampling(以下简称MDS)安全漏洞。根据Intel官方新闻稿所提供的信息,这个漏洞首先由Intel内部的研究团队与合作伙伴发线,并有外部研究团队独立向Intel回应,MDS属于旁路漏洞,让攻击者有机会窃盗受害计算机中的数据,造成安全危害。
根据MDS Attacks网站披露的信息,MDS旁路漏洞可以用于进行RIDL与Fallout等2种推测性执行攻击,进而跨越受害计算机的任意安全边界(Security Boundary)以窃取信息,例如将窃取存储于云计算的信息,或将个人机密敏感数据发送给恶意网站。
与现有攻击手法不同的是,RIDL与Fallout可以从处理器内部管线填充缓冲区(Line Fill Buffer)、读取端口(Load Port)、存储缓冲区(Store Buffer)等位置窃取任何数据,甚至包括从未存储在CPU缓存内存的数据数据。
RIDL(Rogue In-Flight Data Load)能让攻击者在现实环境下通过MDS漏洞窃取机密敏感数据,能通过分析处理器管线的手法,在处理器访问内存的过程中,读取管线填充缓冲区、读取端口的数据。
研究人员展示通过RIDL,在搭载最新Intel处理器的计算机上执行无特权(Unprivileged)程序代码的攻击,并可对云计算虚拟计算机发动攻击,或通过JavaScript植入恶意网站或广告,达到跨越安全边界窃取执行于相同计算机其他程序的数据。
Fallout可以让攻击者从存储缓冲区窃取处理器管线访问的所有数据,更严重的是,攻击者可以随后任何挑选要读取哪些存储缓冲区中的数据,甚至可以打破随机核心内存空间布局(Kernel Address Space Layout Randomization,KASLR)的保护,与读取由作系统核心写入内存的敏感数据。
研究人员也指出,讽刺的是Intel在Coffee Lake Refresh时代处理器导入Meltdown的修补措施,反而让最新的处理器比旧款处理器更容易受到Fallout影响。
针对MDS漏洞并非存在硬件的产品而言,Intel正与OEM厂商共同通过更新处理器微码(Processor Microcode)的方式修正问题,用户也可能需要更新操作系统或虚拟机。
然而与先前的Meltdown与Spectre等漏洞相同,通过更新文件修正问题的代价,就是需要牺牲部分处理器性能。
而根据Intel官方声明,安装处理器微码更新文件之后,预期对于大多数应用程序的性能影响并不大,但对于某些数据中心的性能或资源利用率可能会受到比较大的影响,甚至在某些情况下需要考虑关闭Intel超线程(Hyper-Threading,HT)这类多线程(Simultaneous multithreading,SMT)功能,以确保系统安全。
读者可以保持关注主板厂商是否已推出微码更新文件,并至MDS Attacks网站了解更多细节,或是阅读RIDL(PDF)与Fallout(PDF)的白皮书。