Coldcard 随机数漏洞根源确认:2021 年构建错误让硬件熵源失效长达五年

Coldcard 硬件钱包被曝随机数生成漏洞,根源是 2021 年构建配置错误导致硬件熵源失效,软件 fallback 种子的熵严重不足。官方已发布修复固件,要求用户更新并重设种子;被盗资金估计在 3800 万至 8900 万美元之间。

支付公司 Block(由 Twitter 创始人 Jack Dorsey 创立)的工程团队,在收到用户资金遭窃的通报后,于 7 月 30 日与其他研究者各自定位到问题所在:一段 2021 年 3 月写入的代码,让设备的硬件随机数生成器形同被关闭,改用可预测的软件替代方案,而这个缺陷直到近期才被发现。

根据 Block 公布的技术分析,问题出在 2021 年 3 月将椭圆曲线运算迁移到比特币核心的 libsecp256k1 函数库时,一个构建配置被写错。固件在判断硬件随机数是否可用时,检查的是这个开关“有没有被定义”,而不是“是否被设为启用”。由于该开关的值被设为 0(关闭),判断却仍然通过,于是程序改去调用 MicroPython 内置的软件随机数 fallback。这条路径最早出现在 2021 年 3 月 17 日发布的 v4.0.0 固件,五年间未被察觉。

问题在于,这个软件 fallback 并不是真正的随机来源。它的种子只由芯片的固定序列号、计时器与时钟寄存器推导出来,这些值都可预测、或范围极小。Block 指出,在 Mk2 与 Mk3 的 v4 固件上,产生的种子几乎可以完全重算;在 Mk4、Mk5、Q 等较新型号上,因为多了一次重新植入,理论上最多也只有约 2^32 种可能,远低于一组助记词应有的强度。这意味着攻击者只要重算或穷举这些有限的可能性,就有机会还原出私钥。

官方 Coinkite 已发布安全公告,并采取一连串补救措施:停止出货、销毁受影响的库存,并逐一 email 通知已收到设备的客户。公告同时列出各型号的修复固件版本:Mk2/Mk3 需升级到 4.2.0 以上,Mk4/Mk5 需 5.6.0 以上,Q 需 1.5.0Q 以上,并要求用户在更新前不要用这些型号产生新种子。官方也重申,若种子是用“至少 50 次独立且私密的掷骰”产生的,就不受这个随机数漏洞影响。

至于实际损失规模,各家链上分析的估计差距很大,从约 3800 万美元到 8900 万美元不等,涉及数百到逾千个地址。但截至目前,Coinkite 官方并未证实任何一笔用户损失,Block 也表示“尚未做完整的实测来确认可利用性”。此外,有加密社区成员在 X 上公开个人遭窃经过,其中自称损失 18.25 枚比特币的 Jonathan Goodman 引发较多讨论;也有研究者示范,用 AI 工具在数分钟内就从开源代码找出这个漏洞。这些都属于个别说法或示范,官方公告并未把 AI 列为攻击途径,实际被盗金额也仍待厘清。

对持有 Coldcard 的用户来说,官方的建议相对明确:先确认自己的型号与固件版本,只从官方管道更新到修复版本,再在新固件上重新产生种子,并把资产转移到新的钱包地址。

免责声明:本文提供的信息不是交易建议。BlockWeeks.com不对根据本文提供的信息所做的任何投资承担责任。我们强烈建议在做出任何投资决策之前进行独立研究或咨询合格的专业人士。

(0)
区块链小猫的头像区块链小猫作者
上一篇 1天前
下一篇 1天前

相关推荐

发表回复

登录后才能评论
分享本页
返回顶部