近日,一名 15 岁的英国男孩 Saleem Rashid 发现 Ledger 公司制造的加密货币硬件钱包存在一个严重的安全漏洞,被攻击者用来窃取 Ledger 设备私钥。根据这名男孩的说法,由于 Ledger 使用自定义体系结构来解决其安全元件的许多限制,因此造成了该漏洞的出现。
攻击者可以利用该漏洞在用户接收设备之前破坏设备,或者在某些情况下以物理方式远程从设备中窃取私钥。例如以下场景:
1、在设置 seed 之前进行物理访问:也被称为“ 供应链攻击 ”
它不需要目标计算机上的恶意软件,也不需要用户确认任何事务。由于所有的私钥都是从 recovery seed 中派生出来的,因此攻击者可以窃取任何加载到设备上的资金。
2、安装后的物理访问:通常被称为“ Evil Maid 攻击 ”
这种攻击可以提取 PIN 码,recovery seed 以及任何使用的 BIP-39 口令,只要目标设备在攻击后至少使用一次。和供应链攻击一样,Evil Maid 攻击也不需要计算机上的恶意软件,也不需要用户确认任何交易。它只是要求攻击者安装一个自定义的 MCU 固件,以便于在使用时对私钥进行过滤。
3、恶意软件(带有一些社会工程)
这种攻击要求用户在受感染的计算机上更新 MCU 固件,可以通过显示一条错误消息,要求用户按住左键重新连接设备(以进入 MCU 引导加载程序)来实现。然后恶意软件使用恶意代码更新 MCU,达到控制设备上的可信显示和确认按钮的目的。
奇怪的是,当 Saleem Rashid 在首次向 Ledger 报告其发现时遭到了驳回。不过 Ledger 近期已发布了固件更新 1.4.1,并承诺 “深入探讨安全问题”。