CVE-2021-3011:Google Titan密钥上的密钥恢复

2021-01-09 07:43:48

Google Titan安全密钥是Google提出的FIDO U2F硬件设备(自2018年7月开始提供),是一种用于登录应用程序(例如您的Google帐户)的两因素身份验证令牌。我们的工作描述了一种侧通道攻击,它通过观察ECDSA签名(FIDO U2F协议的核心加密操作)期间的局部电磁辐射,来针对Google Titan安全密钥的安全元件(恩智浦A700X芯片)。换句话说,攻击者可以创建合法的Google Titan安全密钥的克隆。

为了了解NXP ECDSA的实现,发现漏洞并设计密钥恢复攻击,我们不得不快速停止Rhea(NXP J3D081 JavaCard智能卡)。该产品可从网上免费获得,看起来非常类似于NXP A700X芯片,并使用相同的密码库。 Rhea作为一个开放的JavaCard平台,使我们可以更好地控制ECDSA引擎。

然后,我们可以证明电磁边信道信号带有有关ECDSA临时密钥的部分信息。敏感信息可以通过非监督的机器学习方法进行恢复,并插入定制的基于格点的攻击方案中。

最后,通过4000次ECDSA观察,足以恢复Rhea上的(已知)秘密密钥并验证我们的攻击过程。然后成功地将它应用于Google Titan安全密钥(这次使用了6000次观察),因为我们能够提取与为该实验创建的FIDO U2F帐户相关联的长期ECDSA私钥。

两要素身份验证令牌(例如FIDO U2F硬件设备)的主要目标是对抗网络钓鱼攻击。我们的攻击需要物理访问Google Titan安全密钥,昂贵的设备,自定义软件和技术技能。

因此,就我们的研究而言,将您的Google Titan安全密钥或其他受影响的产品用作FIDO U2F两因素身份验证令牌来登录应用程序比不使用一个更安全。

尽管如此,这项工作表明,Google Titan安全密钥(及其他受影响的产品)无法避免攻击者不遗余力地愿意付出足够的努力。面临此类威胁的用户可能应该切换到尚未发现漏洞的其他FIDO U2F硬件安全密钥。

Victorlomné(NinjaLab)和Thomas Roche(NinjaLab)。 在Camille Mutschler(NinjaLab)和Laurent Imbert博士(LIRMM,CNRS)的帮助下。 受影响的Yubico Yubikey Neo是一种旧产品,不再销售。 目前,其网上商店中提供的所有FIDO U2F Yubico Yubikeys均基于英飞凌的更新安全元素,不受我们所知的影响。 2.受我们的工作影响的NXP P5 / SmartMX安全微控制器家族及其相关的密码库(最高v2.9)。 此后,恩智浦发布了两代安全微控制器家族,分别是“ NXP P60 / SmartMX2”家族和现在的“ NXP P70 / SmartMX3”家族。 两者都通过了Common Criteria认证(具有最新的认证过程),并且不受我们所知的工作影响。