安全研究人员发现了一种令人不安的新方法,黑客可以用它来从只有两笔签名交易的比特币硬件钱包中提取私钥,他们将其命名为“Dark Skippy”。
该漏洞可能会影响所有硬件钱包型号,但只有在攻击者诱骗受害者下载恶意固件时,它才能起作用。
该方法的先前版本要求受害者将“数十笔”交易发布到区块链上。但是,即使受害者只向区块链发布几笔交易,也可以执行新的“Dark Skippy”版本。此外,即使用户依赖单独的设备生成种子词,也可以执行攻击。
8月5日,Lloyd Fournier、Nick Farrow和Robin Linus发布了披露报告。Fournier 和 Farrow 是硬件钱包制造商 Frostsnap 的联合创始人,而 Linus 是比特币协议 ZeroSync 和 BitVM 的共同开发者。
根据该报告,硬件钱包的固件可以被编程,将用户的部分种子词嵌入到“低熵秘密随机数”中,然后用于签署交易。当交易得到确认时,生成的签名会被发布到区块链上。然后,攻击者可以扫描区块链以查找并记录这些签名。
生成的签名仅包含“公共随机数”,而不包含种子词本身的部分。但是,攻击者可以将这些公共随机数输入到 Pollard 的袋鼠算法中,以成功计算其公共版本的秘密随机数。
波拉德袋鼠算法由数学家约翰·波拉德(John Pollard)发现,是一种计算代数算法,可用于解决离散对数问题。
根据研究人员的说法,即使用户只从他们受感染的设备产生两个签名,即使种子词是在单独的设备上产生的,也可以使用这种方法得出用户的全套种子词。
研究人员表示,该漏洞的先前版本在过去已被记录在案。然而,这些旧版本依赖于“随机数研磨”,这是一个慢得多的过程,需要更多的交易才能发布到区块链上。即便如此,研究人员也没有将Dark Skippy称为新的漏洞,而是声称这是“一种利用现有漏洞的新方法”。
为了减轻这种威胁,该报告建议硬件钱包制造商应格外小心,以防止恶意固件进入用户的设备,他们可以通过“安全启动和锁定的JTAG/SWD接口[...]可复制和供应商签名的固件构建[,...][和]其他各种安全功能。此外,它还表明,钱包所有者可能希望采取一些措施来保护他们的设备安全,包括“秘密场所、个人保险箱,甚至可能是防篡改的袋子”,尽管该报告还表明这些做法可能“很麻烦”。
它提供的另一个建议是钱包软件使用“防渗透”签名协议,这可以防止硬件钱包自行产生随机数。
比特币钱包的漏洞在过去曾给用户造成重大损失。2023 年 8 月,网络安全公司 SlowMist 报告称,价值超过 900,000 美元的比特币因 Libbitcoin 浏览器库中的漏洞而被盗。去年 11 月,Unciphered 报道称,由于 BitcoinJS 钱包软件中的缺陷,旧钱包中价值 21 亿美元的比特币 (在 Libbitcoin 浏览器库中。去年 11 月,Unciphered 报告称,价值 21 亿美元的比特币 可能面临被攻击者耗尽的危险。