SEVered攻击:看研究人员如何破解AMD的安全加密虚拟化(SEV)技术

SEVered攻击:看研究人员如何破解AMD的安全加密虚拟化(SEV)技术

2017年,AMD在其最新的Zen处理器上提供了安全加密虚拟化(SEV)技术,这项新技术可以让云服务器获得全程的硬件加密保护。SEV的设计目标在于服务那些不信任任何托管其虚拟机的安全敏感人士,这项技术会在虚拟机启动时进行验证,并确保其在启动前与启动期间未受到任何篡改,同时加密系统能够正常工作。

SEVered攻击:看研究人员如何破解AMD的安全加密虚拟化(SEV)技术

【AMD SEV安全模型】

但是,就在近日,来自德国慕尼黑Fraunhofer应用与集成安全研究所的4位研究人员,在其发布的一篇研究论文中,详细介绍了破解经由AMD安全加密虚拟化(SEV)技术所加密的数据的方法。

该研究团队表示,他们称之为“SEVered”的攻击方式,能够从与受损虚拟机运行在同一服务器上的访客虚拟机中恢复明文内存数据。

SEVered攻击能够从加密虚拟机中恢复数据

研究人员在其名为《SEVered:颠覆AMD的虚拟机加密》(SEVered: Subverting AMD’s Virtual Machine Encryption)的论文中写道,

在重映射(re-mapping)所标记的内存页面时,通过反复向服务器发送相同资源的请求,我们将能够以纯文本的形式提取所有虚拟机的内存。

SEVered攻击:看研究人员如何破解AMD的安全加密虚拟化(SEV)技术

攻击之所以能够成功,主要得益于虚拟机将其部分数据存储在主RAM内存中,而主存储器的page-wise加密缺乏完整性地保护。这就使得攻击者能够映射出整个内存,然后请求其他附近虚拟机所使用的那部分,对于这部分内存数据,受损的访客虚拟机本该无权访问的,更别说是明文形式了。

在对其攻击进行测试期间,研究人员表示他们能够检索测试服务器的完整2GB内存,其中包括来自一个访客虚拟机的数据。

研究人员取得的最好结果,是通过重复请求轰炸Apache和nginx(两款Web服务器),以79.4 KB /秒的速度检索内存数据;而对OpenSSH的攻击速度却慢得多,仅以41.6 KB/秒的速度检索数据。降低攻击可行性的一个严重限制,是攻击者需要修改服务器的虚拟机管理程序来执行SEVered攻击。

即使在高负载的虚拟机上,SEV攻击也能成功实现

该研究团队还补充说,他们的SEVered攻击不会受阻于最大化的(maxed out)服务器,即使在目标虚拟机处于高负载状态时,也一样能够恢复内存数据。

该团队的研究成果,已经在上个月于葡萄牙波尔图举行的第11届欧洲系统安全研讨会上得到了展示。提到此次攻击的测试平台,研究人员表示,他们使用的是AMD Epyc 7251处理器,这是一款面向数据中的AMD CPU,于2017年6月发布。

据悉,这已经不是SEV技术第一次遭遇破解危及了,早在2017年11月,中国致象科技安全团队就曾宣称,他们已经完全破解了AMD的SEV技术,并完成了模拟攻击,成功拿到了客户虚拟机的超级管理员权限。


原文发布时间为:2018-05-30

本文来自云栖社区合作伙伴“嘶吼网”,了解相关信息可以关注“嘶吼网”。

上一篇:【原创】MySQL 模拟PostgreSQL generate_series 表函数


下一篇:Android热插拔事件处理详解