将想法植入计算机大脑研究人员发现针对AMD计算机芯片的新攻击

摘要 每个人都曾或曾经历过梦如何影响我们的情绪和行为。然而,在别人做梦时将一个想法灌输到他们的头脑中,以便让他们醒来后做一些具体的事情,...

每个人都曾或曾经历过梦如何影响我们的情绪和行为。然而,在别人做梦时将一个想法灌输到他们的头脑中,以便让他们醒来后做一些具体的事情,这仍然是科幻小说中的内容。在2010年的电影《盗梦空间》中,莱昂纳多·迪卡普里奥饰演的角色试图让一位富商的继承人瓦解他父亲的帝国。为此,他与继承人分享了一个梦,在这个梦中,通过巧妙的操纵,继承人对他父亲的信念被巧妙地改变,导致他放弃了已故父亲的生意。

虽然分享梦想和种植这样的想法在现实中是不可能的,但最近在计算机世界中已经实现了非常类似的事情。苏黎世联邦理工学院信息技术与工程系教授KavehRazavi领导的研究小组展示了某些CPU(中央处理单元)的严重漏洞,攻击者可以在受害者的CPU中植入相当于想法的内容,诱导它执行某些命令,从而检索信息。Razavi和他的同事在本周的USENIXSecurity2023会议上展示了他们的研究成果。

复杂的攻击

虽然拉扎维的研究论文中包含的名字让人想起詹姆斯·邦德和灾难电影——“幽灵”和“熔毁”的出现——但大部分内容都是复杂的计算机科学。

“事实上,就像同名电影一样,盗梦空间攻击特别复杂且难以解释,”硕士生丹尼尔·特鲁希略(DaniëlTrujillo)说道。学生约翰内斯·威克纳。

“不过,”Wikner补充道,“所有这些攻击的症结相当简单,即计算机的CPU必须始终进行猜测,而这些猜测可能会被篡改。”

在现代计算机中,需要进行猜测,因为在程序(例如游戏或网络浏览器)执行过程中,CPU必须每秒做出数亿个决策。在执行过程中的某些时刻,以下命令可能取决于基于必须从计算机内存中检索的某些信息而做出的选择。近年来,CPU的速度变得令人难以置信,但数据从内存(DRAM)传输到CPU的速度却无法跟上这种加速。因此,CPU必须花费大量时间等待新数据才能做出决定。

通过猜测加速

这就是猜测发挥作用的地方:根据过去的经验,CPU创建一种查找表,并使用它来猜测最可能的下一步,然后执行该步骤。在绝大多数情况下,CPU都是正确的,从而节省了大量宝贵的计算时间。然而,有时它会做出错误的猜测,攻击者可能会利用这种错误预测来访问敏感信息。

Razavi表示:“2018年发现的Spectre攻击就是基于此类错误预测,但最初制造商似乎已经找到了减轻攻击的方法。”事实上,芯片制造商已经提供了一些功能,可以在安全上下文之间切换时(即访问计算机的敏感内核时)部分删除查找表,或者添加一些信息来告诉CPU是否进行了预测查找表是在内核中创建的,因此可以信任。

将想法植入CPU

尽管如此,拉扎维和他的同事开始测试即使采用新的安全措施是否也可以发起攻击。经过长时间的搜索,他们偶然发现了一些奇怪的东西:“看起来我们可以让AMD制造的CPU相信它们以前见过某些指令,而实际上从未发生过,”Trujillo说。就像电影中一样,研究人员可以在CPU中植入一个想法(某种意义上说是在做梦)。

因此,CPU根据过去的指令不断创建的查找表可以再次被操纵。由于CPU确信查找表中的条目源自它之前见过的指令,因此绕过了旨在确保仅考虑可信预测的安全功能。通过这种方式,ETH研究人员能够从计算机内存中的任何位置泄露数据,包括敏感信息,例如root密码的哈希值。

严重漏洞

当然,这是一个非常严重的安全漏洞,因此Razavi在2月份通知AMD,确保他们有时间在研究论文发表之前拿出补丁(AMD为该漏洞分配了编号CVE-2023-20569)。

拉扎维说:“我们已经展示了这种新型危险攻击的概念,这在云计算的背景下尤其重要,因为在云计算中,多个客户共享相同的硬件,这也对未来提出了问题。”例如,他想了解是否存在其他类似的攻击,以及其他制造商的CPU上是否也可能出现类似“Inception”的攻击。

每个人都曾或曾经历过梦如何影响我们的情绪和行为。然而,在别人做梦时将一个想法灌输到他们的头脑中,以便让他们醒来后做一些具体的事情,这仍然是科幻小说中的内容。在2010年的电影《盗梦空间》中,莱昂纳多·迪卡普里奥饰演的角色试图让一位富商的继承人瓦解他父亲的帝国。为此,他与继承人分享了一个梦,在这个梦中,通过巧妙的操纵,继承人对他父亲的信念被巧妙地改变,导致他放弃了已故父亲的生意。

虽然分享梦想和种植这样的想法在现实中是不可能的,但最近在计算机世界中已经实现了非常类似的事情。苏黎世联邦理工学院信息技术与工程系教授KavehRazavi领导的研究小组展示了某些CPU(中央处理单元)的严重漏洞,攻击者可以在受害者的CPU中植入相当于想法的内容,诱导它执行某些命令,从而检索信息。Razavi和他的同事在本周的USENIXSecurity2023会议上展示了他们的研究成果。

复杂的攻击

虽然拉扎维的研究论文中包含的名字让人想起詹姆斯·邦德和灾难电影——“幽灵”和“熔毁”的出现——但大部分内容都是复杂的计算机科学。

“事实上,就像同名电影一样,盗梦空间攻击特别复杂且难以解释,”硕士生丹尼尔·特鲁希略(DaniëlTrujillo)说道。学生约翰内斯·威克纳。

“不过,”Wikner补充道,“所有这些攻击的症结相当简单,即计算机的CPU必须始终进行猜测,而这些猜测可能会被篡改。”

在现代计算机中,需要进行猜测,因为在程序(例如游戏或网络浏览器)执行过程中,CPU必须每秒做出数亿个决策。在执行过程中的某些时刻,以下命令可能取决于基于必须从计算机内存中检索的某些信息而做出的选择。近年来,CPU的速度变得令人难以置信,但数据从内存(DRAM)传输到CPU的速度却无法跟上这种加速。因此,CPU必须花费大量时间等待新数据才能做出决定。

通过猜测加速

这就是猜测发挥作用的地方:根据过去的经验,CPU创建一种查找表,并使用它来猜测最可能的下一步,然后执行该步骤。在绝大多数情况下,CPU都是正确的,从而节省了大量宝贵的计算时间。然而,有时它会做出错误的猜测,攻击者可能会利用这种错误预测来访问敏感信息。

Razavi表示:“2018年发现的Spectre攻击就是基于此类错误预测,但最初制造商似乎已经找到了减轻攻击的方法。”事实上,芯片制造商已经提供了一些功能,可以在安全上下文之间切换时(即访问计算机的敏感内核时)部分删除查找表,或者添加一些信息来告诉CPU是否进行了预测查找表是在内核中创建的,因此可以信任。

将想法植入CPU

尽管如此,拉扎维和他的同事开始测试即使采用新的安全措施是否也可以发起攻击。经过长时间的搜索,他们偶然发现了一些奇怪的东西:“看起来我们可以让AMD制造的CPU相信它们以前见过某些指令,而实际上从未发生过,”Trujillo说。就像电影中一样,研究人员可以在CPU中植入一个想法(某种意义上说是在做梦)。

因此,CPU根据过去的指令不断创建的查找表可以再次被操纵。由于CPU确信查找表中的条目源自它之前见过的指令,因此绕过了旨在确保仅考虑可信预测的安全功能。通过这种方式,ETH研究人员能够从计算机内存中的任何位置泄露数据,包括敏感信息,例如root密码的哈希值。

严重漏洞

当然,这是一个非常严重的安全漏洞,因此Razavi在2月份通知AMD,确保他们有时间在研究论文发表之前拿出补丁(AMD为该漏洞分配了编号CVE-2023-20569)。

拉扎维说:“我们已经展示了这种新型危险攻击的概念,这在云计算的背景下尤其重要,因为在云计算中,多个客户共享相同的硬件,这也对未来提出了问题。”例如,他想了解是否存在其他类似的攻击,以及其他制造商的CPU上是否也可能出现类似“Inception”的攻击。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢。