他们检测到AMD SEV中的一个漏洞,该漏洞可以确定加密密钥

超微SEV

Google云端小组的开发人员已发现一个漏洞 (CVE-2019-9836) 在实施AMD SEV技术(安全加密虚拟化),这可能会破坏使用此技术保护的数据。

硬件级别的AMD SEVe提供虚拟机的透明内存加密, 在这里,只有当前的来宾系统才能访问解密的数据,而其余的虚拟机和虚拟机管理程序在访问此内存时会获得一组加密的数据。

发现的问题允许完全恢复PDH私钥的内容 在主操作系统不可用的单个受保护PSP(AMD安全处理器)处理器级别进行处理。

通过拥有PDH密钥,攻击者可以恢复会话密钥和秘密序列 在创建虚拟机和访问加密数据时指定。

该漏洞是由于椭圆曲线的实现存在缺陷 (ECC)用于加密,允许攻击者恢复曲线的参数。

在执行受保护虚拟机的启动命令期间,攻击者可以发送与NIST建议的参数不匹配的曲线参数,这将导致在乘法运算中使用低阶点值和私有数据键。

发现SEV的椭圆曲线(ECC)实施容易受到无效曲线攻击。 在启动启动命令时,攻击者可以发送

小顺序ECC点不在官方NIST曲线中,它们迫使SEV固件将小顺序点乘以标量固件的专用DH。

通过收集足够的模块化废物,攻击者可以恢复完整的PDH私钥。 使用PDH,攻击者可以恢复会话密钥并启动虚拟机的秘密。 这违反了SEV提供的机密性保证。

ECDH协议的安全性直接取决于生成的起点的顺序 曲线的离散对数是非常复杂的任务。

在初始化AMD SEV环境的步骤之一中,将从用户获得的参数与私钥一起用于计算。

本质上,执行两点相乘的操作,其中之一对应于私钥。

如果第二点是低阶质数,那么攻击者可以通过列出所有可能的值来确定第一点的参数(幂取模运算中使用的模的位)。 可以使用残数的中文定理将选定的质数片段进行组合以确定私钥。

无效曲线攻击是在不同曲线-不同参数(a,b)上执行ECDH点乘法。 由于不使用参数“ b”,因此可以在较短的Weierstrass点总和函数中实现此功能。

在此曲线上,该点的初级阶较小。 通过尝试小阶点的所有可能值,攻击者可以检索私有标量位(调制阶数)。

使用SEV固件版本高达0.17 build 11的AMD EPYC服务器平台是一个问题。

AMD已经发布了固件更新,这增加了对使用与NIST曲线不匹配的点的锁定。

同时,以前为PDH密钥生成的证书仍然有效,从而使攻击者可以针对从受漏洞保护的环境进行虚拟机迁移的攻击。

还提到了对以前的易受攻击版本的固件版本执行回滚攻击的可能性,但是尚未确认此功能。

数据来源: https://seclists.org/


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。