最新研究发现对AMD芯片的电压故障攻击将给云环境带来新的风险
2021-08-15
来源:网空闲话
柏林工业大学(TU Berlin)研究人员描述了一种电压故障攻击,表明AMD的安全加密虚拟化(SEV)技术可能无法为云环境中的机密数据提供适当的保护。这项研究成果在柏林工业大学(TU Berlin)的一个团队本周发表的一篇《One Glitch to Rule Them All: Fault Injection Attacks Against AMD's Secure Encrypted Virtualization》论文中进行了详细论述。
AMD处理器易受电压故障攻击,AMD公司的EPYC处理器采用了SEV技术,该技术旨在保护虚拟机及其存储的数据不受内部威胁,比如提高权限的问题,如恶意管理员。SEV通常用于云环境。
SEV旨在通过加密虚拟机的内存来保护机密数据,加密密钥使用AMD的安全处理器(SP),一种专用的安全协处理器。这应该确保只有SP可以访问内存加密密钥,而可以由威胁参与者控制的管理程序则不可以。
然而,柏林工业大学的研究人员表明,攻击者可以通过对SP发起电压故障注入攻击,获得对sev保护的虚拟机内存内容的访问权。
为了按照预期工作,集成电路需要在特定的温度、时钟稳定性、电磁场和电源电压范围内工作。有目的地操纵其中一个参数被称为故障攻击。这种攻击需要对芯片进行物理访问,但它们对于获取敏感信息、绕过安全检查或实现任意代码执行都很有用。
在他们的电压故障攻击中,研究人员表明,通过操纵AMD芯片的输入电压,他们可以在SP的ROM引导加载程序中诱发一个错误,从而使他们获得完全的控制。他们描述了由于SEV未能适当地保护潜在的敏感信息免受恶意内部人员的攻击而给云环境带来的风险。
研究人员在他们的论文中解释说:“我们展示了一个能够物理访问目标主机的对手,是如何植入一个定制的SEV固件,该固件使用SEV的调试API调用来解密VM的内存。”“此外,我们证明了故障攻击能够提取背书密钥( endorsement keys)。背书密钥在SEV的远程认证机制中起着核心作用,可用于发起远程攻击。即使没有物理访问目标主机的攻击者也可以使用提取的背书密钥攻击sev保护的虚拟机。通过伪造认证报告,攻击者可以伪装成虚拟机迁移的有效目标,从而获得对虚拟机数据的访问。”
进行此类攻击所需的硬件很容易获得,而且价格低廉,但研究人员表示,他们花了4个小时来准备一个系统,这大大降低了现实世界环境中的风险。
虽然这不是第一个专注于电压故障攻击或攻击AMD的SP和SEV的研究项目,研究人员说,据他们所知,这是第一个影响所有AMD EPYC cpu (Zen 1, Zen 2和Zen 3)的攻击。
研究人员向AMD报告了他们的发现,并提出了一些可以在未来cpu中实现的缓解措施。
研究人中央论文最后给出了防范该类攻击的缓解措施,“我们认为可以采取两种不同的策略来减轻我们的攻击。一方面,可以尝试阻止对手实现代码执行(第7.2.1节)(基于软件和硬件的不同的检测和防御)。另一方面,可以尝试保护架构密钥不被提取,即使对手设法实现代码执行(第7.2.2节)。”
《安全周刊》称已经联系了AMD求证及评论,如果该公司作出回应,将更新本文。*更新澄清,研究人员花了4个小时准备一个系统来应对攻击。

