Coldcard 漏洞解析:谁失去了比特币,谁处于风险中

CN
6小时前

关键要点

  • 冷卡链接的盗窃在7月30日从数百个钱包中盗取比特币。
  • Coinkite称Mk3种子具有约40位熵,而不是128位。
  • 冷卡用户必须安装修复固件并创建新的种子,才能转移资金。

根据Galaxy Research的深入分析,核心盗窃在约25分钟内紧密协调地展开,而后续的更广泛分析将大约1196个地址和多达1083个比特币(价值近7000万美元)连接到大约41分钟的活动。最终数字可能会随着调查者继续追踪公共比特币区块链上的交易而变化。

受影响的钱包主要属于长期持有者,他们使用从2021年3月开始发布的脆弱固件运行的冷卡设备生成了恢复种子。冷卡是一种由加拿大制造商Coinkite生产的气隙硬件钱包,旨在将比特币(BTC)密钥与互联网连接的设备隔离。

许多被清空的地址多年来一直处于休眠状态。攻击者迅速行动,支付了较高的固定交易费用,并未留下找零输出,这意味着每个地址都被完全清空。这种模式表明,这是一种自动化操作,使用了预先准备的私钥列表,而不是客户独立转移资金。

盗窃并非由于网络钓鱼、用户计算机上的恶意软件、物理设备盗窃或传统的远程入侵造成。相反,一个固件错误削弱了某些冷卡设备在创建钱包种子时使用的随机性。这些种子看起来正常,但来自一个比用户所承诺的可能组合范围小得多的范围。

比特币钱包种子是一个秘密,通常以12或24个单词的形式显示,钱包根据这个种子生成其地址和私钥。一个正确生成的12个单词的种子包含128位熵,这是一个技术指标,描述了巨大的可能组合数量,使得猜测种子变得几乎不可能。

冷卡设备本应从设备微控制器内部的硬件随机数生成器获取这种随机性。该组件从物理电噪声中获取,外部观察者理应无法预测。

然而,在2021年的软件库迁移中,Coinkite披露了两个具有匹配接口的随机数功能混淆了。一个访问设备的正确硬件生成器,另一个是弱软件后备,旨在用于没有合适硬件的电路板。

一个配置设置禁用默认的MicroPython硬件路径,因为Coinkite提供了自己的硬件封装。软件只检查该设置是否存在,而不是是否启用。因为该设置存在但赋值为零,构建成功完成,而种子生成则在静默中转向了弱软件生成器。

该后备严重依赖于可预测的设备信息,包括类似于序列号的芯片标识符和与启动时间相关的内部时钟值。能够缩小这些输入的攻击者将面临比预期的128位范围小得多的搜索。

Coinkite估计在当前条件下,脆弱的Mk3种子的有效搜索空间约为40位。这仍然是一个很多可能性的数字,但可以使用专业计算设备进行搜索,尤其是当攻击者可以将候选种子与区块链上可见的比特币地址进行比较时。

冷卡Mk3模型的截图。

冷卡Mk3模型的快照。

后来发布的冷卡模型,包括Mk4、Q和Mk5,从安全元件中添加了一些随机性。然而,只有有限的一部分到达受影响的生成器,导致在安装了修正固件之前创建的种子上留下约72位的有效熵。这比Mk3路径强,但仍低于预期的128位标准。

这个差别就像将一个真正随机的锁组合替换为一个源自锁的序列号和首次开启时间的组合。结果的组合可能看起来是随机的,但知道公式并能够估计起始信息的人可以复制它。许多用户正在迁移,不仅从Mk3设备,也从Mk4、Q和Mk5中迁移。

Coinkite在意识到主动威胁后发布了安全通告和修复固件。该公司表示,受影响固件上生成种子的用户应使用修复版本创建一个全新的种子,并将比特币转移到由该种子控制的地址。

仅仅安装更新是不够的。在有缺陷的系统下创建的种子始终保持脆弱,因为固件更新无法给已经存在的单词添加随机性。

Coinkite建议用户更新他们的设备,创建新种子,验证备份和钱包指纹,确认接收地址,发送小额测试交易,然后转移剩余余额。用户应保留旧备份,直到转移确认,但不应再将旧种子视为安全。

该公司确认修复的版本包括Mk3 版本4.2.0或更高版本,Mk4和Mk5 版本5.6.0或更高版本,以及Q版本1.5.0Q或更高版本,以及相应的边缘版本。Tapsigner、Opendime和Satscard产品使用不同的代码,报道称未受到影响。

那些在生成种子时添加了足够独立骰子投掷的用户得到了实质性保护,因为他们自己的随机性超过了有缺陷的软件输入。Coinkite表示,至少50次公平骰子的私密投掷提供了足够的保护,虽然额外的投掷可以提供更大的安全边际。

强大的BIP-39口令还创建了一个不能仅从种子单词重建的独立钱包。多签名钱包在转移比特币之前需要来自多个设备或位置的密钥,当脆弱的冷卡种子仅代表签名安排的一个部分时,大部分或完全受到保护。

然而,这些保护措施是可选的。许多受害者似乎遵循了当时可用的标准安全建议:购买信誉良好的硬件钱包,离线生成种子,保护备份,绝不要将其输入到互联网连接的设备中。

Coinkite首席执行官罗道夫·诺瓦克(Rodolfo Novak),广泛称为NVK,在7月31日公开道歉,并表示公司对固件失败承担全部责任。“我很抱歉,我感到悲痛。我们的团队对此事感到心碎,”诺瓦克写道。他承认,热修复可以保护新创建的种子,但无法修复在有缺陷软件下生成的种子。

Coinkite首席执行官罗道夫·诺瓦克的文章截图。

Coinkite首席执行官罗道夫·诺瓦克的道歉文章。图片来源:X。

诺瓦克解释说,Coinkite将在验证细节后发布完整的技术说明,并协助受影响用户寻求警察报告、保险索赔或独立调查。他还警告开发人员,人工智能(AI)工具现在可以比传统审查过程更快地扫描旧公开代码以检查隐藏的弱点。

Coinkite强调,他们必须假设攻击者使用AI检查其开源固件,尽管没有证据建立缺陷是如何被发现的。该公司还承认,最近使用领先的AI模型进行的审核未能识别问题。几家竞争对手硬件钱包制造商已在社交媒体上表示,他们的产品不受影响。

“Ledger不受最近发布的冷卡Mk3警告的影响,”该公司在冷卡事件后对X用户表示。“Ledger设备使用直接集成到我们的安全元素芯片中的认证真随机数发生器(TRNG),为每个24个单词的秘密恢复短语生成256位的完全熵。”

“Trezor用户:你的资金是安全的,”硬件钱包制造商Trezor在周五解释道。“最近的冷卡问题仅限于他们自己的定制固件以及他们的一些设备如何生成随机性。Trezor不共享该代码。”

Trezor X账户补充道:

“我们一直将多种独立的随机性来源混合在一起(设备硬件 + 主机 + 新模型上的安全元件)。我们对每一个失去比特币的人感到非常遗憾。”

攻击者的身份仍然未知,被盗的比特币可能随时从其合并地址中转移。调查人员仍在努力确定实际生成了多少脆弱的种子,多少比特币仍然暴露,以及攻击者是否已经识别出其他高价值钱包。然而,Coinkite可能对过去的所有者没有太多信息。

“有趣的双刃剑:Coinkite在120天后删除所有客户记录以防止数据泄露,”Casa的联合创始人Jameson Lopp在X上报告。“这意味着他们无法联系过去5年购买脆弱冷卡的客户,以警告他们这一漏洞。”

X上名为calle的伪名开源比特币开发者截图。

名为calle的伪名开源比特币开发者分享了对此事的看法。“我对每一个受到影响的人感到非常难过,尤其是那些可能刚刚失去了毕生积蓄的人。最糟糕的是他们做了一切正确的事情,”calle在X上说。

这起事件也将考验Coinkite能否恢复对冷卡的信任,以及硬件钱包制造商是否采用更强的独立审查来生成种子。对于用户来说,眼下的优先事项更简单:任何在受影响固件上创建种子而没有强大的独立骰子熵、口令或多签名保护的用户应将其视为被破坏,并小心地将资金转移到新生成的钱包中。

除了毁灭性的盗窃外,整个社区的比特币用户正在发出警报,推动其他人传播信息,以便在更多脆弱的钱包被清空之前。

免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到support@aicoin.com,本平台相关工作人员将会进行核查。

分享至:
APP下载

X

Telegram

Facebook

Reddit

复制链接