前言:英特尔今天发布了微代码更新,以防止攻击者滥用英特尔RAPL机制从其CPU窃取敏感数据。
今天,一组学者公布了一种新的攻击方法,可以从英特尔cpu中提取数据。
该攻击名为鸭嘴兽攻击(Platypus),是“电源泄漏攻击:针对您受保护的用户机密”的首字母缩写,目标是英特尔处理器的RAPL接口。
RAPL是Running Average Power Limit的缩写,它是一个组件,允许固件或软件应用程序监视CPU和DRAM中的功耗。
RAPL系统可以有效地让固件和软件应用读取CPU执行其任务所消耗的电量,多年来,RAPL系统一直用于跟踪和调试应用程序和硬件性能。
研究人员通过英特尔RAPL窃取加密密钥
在今天发表的研究论文中,来自格拉茨技术大学,伯明翰大学和CISPA亥姆霍兹信息安全中心的学者揭示了鸭嘴兽攻击(Platypus)如何通过查看RAPL接口报告的值来确定CPU内部正在处理的数据。
研究人员说:“使用PLATYPUS,我们证明了我们可以观察到功耗的变化,以区分不同的指令以及不同的操作数和存储负载的权重,从而可以推断负载值。”
这些“已加载的值”是指CPU中加载的数据。这些可以是加密密钥、密码、敏感文档或任何其他类型的信息。
访问这类数据通常受到一系列安全系统的保护,如内核地址空间布局随机化(KASLR)或硬件隔离可信执行环境(tee),如Intel SGX。
但是,研究人员说,鸭嘴兽攻击(Platypus)允许攻击者通过通过观察功耗值的变化来绕过所有这些安全系统。
在测试中,研究人员表示,他们仅在20秒内观察RAPL耗电量值,就绕过了KASLR,然后从Linux内核中获取了数据。在另一项测试中,他们还检索了正在英特尔SGX安全区域内处理的数据。
鸭嘴兽攻击(Platypus)从SGX安全区检索RSA私钥,要求攻击者监视100分钟的RAPL数据,而从SGX安全区和Linux内核内存空间检索AES-NI加密密钥的攻击则花费了26个小时。
LINUX比其他地方更容易受到攻击
根据研究小组的说法,鸭嘴兽攻击(Platypus)在Linux系统上的工作效果最佳。这是因为Linux内核随附 powercap框架,该框架是与RAPL接口和其他功率限额API进行交互的通用驱动程序,可轻松读取功耗值。
Windows和macOS也可能受到攻击,但在这些情况下,必须在被攻击的设备上安装Intel Power Gadget应用程序,以便攻击者能够与RAPL接口进行交互。
不论底层操作系统如何,针对英特尔SGX安全区的鸭嘴兽攻击都可以工作,因为攻击者追求的是(单独的)SGX安全区,而不是底层的操作系统及其(独立的)CPU内存。
这是首次远程攻击
鸭嘴兽攻击(Platypus),得名于鸭嘴兽用喙感知电流的能力,是同类攻击中的第一例。
虽然其他研究团队已经设法通过将示波器连接到CPU来观察CPU功耗读数,但鸭嘴兽攻击可以远程执行。
例如,攻击的代码可以打包在目标设备上安装或植入的恶意应用(恶意软件)中。这样,这攻击就可以在不需要威胁执行者对被攻击系统进行物理访问的情况下进行。
鸭嘴兽攻击(Platypus)也不同于PlunderVolt, PlunderVolt是另一种针对Intel CPU电源电压接口的攻击。然而,这两种攻击是不同的,区别在于,PlunderVolt是一种主动攻击,可以修改能量(功率)值,而Platypus是一种被动攻击,仅通过查看功耗数据即可推断出数据。
从今天开始提供补丁
研究人员说,鸭嘴兽(Platypus)可以与英特尔服务器,台式机和笔记本电脑的CPU协同工作。英特尔还证实,某些移动和嵌入式CPU也受到影响。
该芯片制造商今天发布了微代码(CPU固件)更新, 以阻止鸭嘴兽攻击(Platypus),该公司已将其提供给行业合作伙伴,用在其产品的下一次安全更新中。
Linux内核也提供了一个更新。此更新将访问权限限制为仅具有较高特权的应用程序可以访问RAPL界面,这使得攻击更难从低级应用内部发起。
鸭嘴兽攻击(Platypus)的更新将包含对CVE-2020-8694 (Linux+Intel)、CVE-2020-8695 (Intel)和CVE-2020-12912 (Linux+AMD)的引用,这是鸭嘴兽攻击中利用的问题的三个标识符。
不必惊慌
但在最近英特尔CPU漏洞的冲击中,没有必要恐慌。英特尔表示,在学术研究领域之外,尚未发现任何利用这一漏洞的攻击。
受鸭嘴兽攻击(Platypus)影响的大多数CPU是英特尔和设备制造商仍支持的最新CPU型号,它们很可能在以后的更新中向用户分发英特尔的微代码更新。
受影响的CPU列表可在英特尔安全公告中找到。
其他CPU制造商也可能受到影响
除英特尔外,几乎所有其他芯片制造商的产品中都还包含RAPL接口。研究小组说,这些产品也可能会受到影响。但是,由于研究时间和预算成本的限制,他们并没有测试市场上的所有设备。
研究人员说:“我们已经在AMD上进行了一些实验,在该实验中,我们还观察到了能耗的泄漏(在论文的附录中)。” AMD也发布了Linux驱动程序更新。
“我们还讨论了基于ARM的设备,但没有时间对其进行全面评估。”
英伟达(NVIDIA)、迈威尔(Marvell)和安培(Ampere)等处理器供应商也推出了类似rapl的功率上限系统的处理器。
最后,关于鸭嘴兽攻击(Platypus)的更多细节,包括一份研究报告[PDF],学者们可以在专门的网站上找到。(本文出自SCA安全通信联盟,转载请注明出处。)