他们揭示了一种在NXP芯片上克隆令牌密钥的方法

NinjaLab安全研究员 发生了新的攻击 侧通道(CVE-2021-3011) 基于恩智浦芯片克隆存储在USB令牌上的ECDSA密钥。

攻击 针对Google Titan两因素身份验证令牌进行了演示 基于NXP A700X芯片,但理论上适用于使用同一芯片的Yubico和Feitian加密令牌。

拟议的方法 允许攻击者重新创建令牌中存储的ECDSA密钥 根据获得的数据 通过分析令牌发出的电磁信号 在数字签名的生成过程中。

研究人员已经表明,电磁信号与来自ECDSA的临时密钥信息相关,这足以使用机器学习技术检索秘密密钥。

特别地,信号变化的性质允许在与椭圆曲线的运算中在与标量相乘的过程中提取关于各个比特的信息。

对于ECDSA, 用信息定义一点点 超过初始化向量(即刻) 足以进行攻击并顺序恢复所有私钥。 要恢复Google Titan令牌中的秘密密钥,仅需在连接到Google帐户时根据用于FIDO U6.000F两因素身份验证的ECDSA密钥分析大约2种数字签名操作即可。

寻找弱点 在算法实现中 在恩智浦ECDSA芯片上使用ECDSA,使用了开放平台 用于创建NXP J3D081(JavaCard)智能卡,它与NXP A700X芯片非常相似,并使用相同的密码库,但同时提供了更多研究ECDSA引擎运行的机会。 要检索JavaCard密钥,足以分析大约4000次操作。

为了发动进攻 您必须对令牌具有物理访问权限,也就是说,令牌必须可供攻击者长期研究。 此外,该芯片还装有铝制屏蔽罩,因此必须拆开外壳,这很难掩盖攻击痕迹,例如,Google Titan令牌被密封在塑料中,并且无法在没有可见痕迹的情况下进行拆解。 (可选)建议在新外壳的3D打印机上打印)。

检索密钥大约需要6个小时 的FIDO U2F帐户,大约需要 还要花4个小时以上的时间来拆卸和组装令牌。

攻击还需要相当昂贵的设备,费用约为10欧元,包括微电路逆向工程技能和未公开发布的特殊软件(发生这种攻击的可能性已由Google和NXP确认)。

在袭击中 Langer ICR HH 500-6测量综合体,用于测试微电路 为了实现电磁兼容性,我们使用了Langer BT 706放大器,分辨率为3μm的Thorlabs PT10 / M微操纵器和PicoScope 6404D四通道示波器。

作为服务器端实现的部分保护措施,以防止使用克隆令牌进行两因素身份验证,建议使用FIDO U2F规范中描述的计数器机制。

FIDO U2F标准最初意味着存在一组密钥,这是由于该协议仅支持两个基本操作:注册和身份验证。

在注册阶段, 生成新的密钥对,私钥存储在令牌中 并将公钥传输到服务器。

令牌侧身份验证操作为服务器传输的数据创建ECDSA数字签名,然后可以使用公共密钥在服务器上对其进行验证。 私钥始终保留在令牌中并且无法复制,因此,如果需要绑定新令牌,则会创建新的密钥对,并将旧密钥放置在已撤销密钥列表中。

数据来源: https://ninjalab.io


发表您的评论

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

*

*

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