Coinkite认为,攻击者利用人工智能发现了其Coldcard硬件钱包的一个漏洞,导致用户损失数千万美元比特币。该公司表示,数周前其自身对相同代码的AI审查并未发现问题。这家硬件钱包制造商于周四发布了针对Mk3型号的公告及技术分析,此前发现其设备生成的种子远低于预期安全性。
该漏洞于周五凌晨被利用,估计损失为594 BTC,约合3800万美元。资金在25分钟内从约500个钱包中被抽走,其中562 BTC已合并至一个地址。Coinkite表示,必须假设“有人使用AI审查了我们之前版本的固件”以发现漏洞。该公司称,数周前曾用当时最好的模型审查自身代码,但模型“未发现此漏洞或任何严重问题”。攻击者和防御者拥有相同的工具,但这次“工具没有帮助我们,只帮助了坏人”。
问题出在哪里? Coldcard的固件调用了一个获取随机数的函数,代码库中存在两个具有相同签名的实现:Coinkite编写的硬件生成器,以及从MicroPython继承的软件备用方案。预处理器仅检查设置是否已定义,而未测试其值,因此构建过程在无警告的情况下使用了备用方案。自2021年3月迁移以来,种子生成一直依赖该备用方案。
所有当前型号均受到不同程度影响。Coinkite估计Mk3种子的有效搜索空间约为40比特,而种子本应具有128比特。Mk4、Q和Mk5上的安全元件提供了额外熵,使其搜索空间提升至约72比特,公司称这显著改善了状况,但未达到目标。Tapsigner、Opendime和Satscard使用不同代码,不受影响。
用户需采取的措施 Coinkite已发布紧急热修复:Mk4和Mk5的5.6.0版本,以及Q的1.5.0Q版本。更新无法修复受影响固件上已创建的种子。用户需在修补后的硬件上生成新种子,公司建议使用强BIP-39助记词、至少99次掷骰子,或两者结合。Mk3用户(该型号已停止支持)需参考单独的迁移路径。
在受影响的Coldcard上创建的种子即使恢复到其他品牌设备后仍然脆弱,竞争对手硬件钱包制造商Trezor在告知用户资金安全时指出了这一点。Block公司于周五发布了独立分析,称其所有产品均未受影响,其硬件负责人Max Guise敦促所有受影响者尽快安全转移资金。
