Coldcard硬件钱包代码漏洞致约1.6亿美元比特币被盗
加拿大硬件钱包厂商Coinkite旗下的Coldcard产品近期被发现存在代码漏洞,导致大量用户比特币被盗。据区块链研究机构Galaxy Research估计,约1596枚比特币(价值超过1亿美元)从约7300个地址中被转走,至少15个不同的攻击者利用了这一漏洞。该漏洞无需物理接触设备即可远程利用。
事件经过
多伦多企业家Jonathan Goodman在7月29日发现其所有钱包被清空,损失18.25枚比特币(当时价值约117万美元)。Goodman表示,他严格遵守了比特币安全存储规则:存放私钥的Coldcard硬件钱包从未连接互联网,存放在银行保险箱中;种子短语也从未分享,存放在另一个保险箱中。他称“或许最困难的是我已经做对了一切”。
漏洞根源
问题并非出在硬件钱包本身,而是生成种子短语的随机数机制。Coldcard在2021年3月发布的固件版本4.0.0中采用了名为libngu的代码库,该库用于生成钱包创建所需的随机数。然而,由于代码中的一个配置错误,本应使用硬件专用随机数生成器的系统,转而使用了基于设备和时序数据的软件生成器,导致随机性大幅降低。Coinkite估计,受影响的较新设备(Mk4、Q、Mk5)产生的种子仅具有72位随机性,而非预期的128位,这意味着可能的种子数量减少了约72亿亿倍。
漏洞发现与修复
比特币开发者James O'Beirne在2025年5月审计Coldcard代码时发现了该问题。他追踪到随机数来源为libngu,并向Coinkite报告了潜在缺陷。Coinkite最初回应称,如果存在真实问题应该早已被发现。直到2025年7月底大规模资金被盗后,Coinkite才确认漏洞并发布修复固件。Block公司的比特币工程和安全团队也独立分析了该漏洞,指出问题在于两段软件通信读取设置的方式:Libngu仅检查设置是否存在,而未检查其是开启还是关闭。

影响范围
漏洞影响所有运行固件版本4.0.0及之后的Coldcard设备。Mk2和Mk3设备完全未获得安全的随机数;Mk4、Q和Mk5设备虽获得部分安全随机数,但软件仅保留了很小一部分。Coinkite已发布修复固件,但修复仅影响未来种子生成,已创建的种子仍然脆弱。受影响用户需安装更新固件、生成新种子,并将比特币迁移至新地址。
事件启示
Coldcard的设计理念是让用户移除托管方,减少信任方。但此次事件表明,自托管虽消除了对交易所或银行的信任依赖,却引入了新的依赖关系:用户持有私钥,但钱包制造商仍然决定了这些私钥是否被安全创建。即使像Goodman那样物理上完美保护设备,也无法避免代码层面的缺陷。
投资有风险,参与加密货币相关活动需谨慎,本资讯不构成任何投资建议。
信息来源:CoinDesk