500 个冷钱包 25 分钟全被掏空!Coldcard 漏洞酿 594 枚比特币被盗

百款NFT链游免费玩 数字货币支付图解教程 区块链游戏获利技巧

加密货币市场近日爆发惊人窃案,骇客利用硬体钱包 Coldcard 韧体中潜藏多年的「随机数生成缺陷」,在短短 25 分钟内洗劫近 500 个冷钱包,卷走 594 枚比特币(价值约 3,800 万美元)。

根据调查,这起攻击发生于 UTC 时间 7 月 31 日 01:31 至 01:56,骇客在短短 25 分钟(3 个区块)内,透过约 500 笔交易,从约 500 个独立钱包转出共 1,324 笔比特币 UTXO(未花费交易输出),合计约 594 枚比特币。

随后,其中约 562 枚比特币被集中转入同一个地址,目前尚未被进一步转移。所有遭清空的钱包皆为单签钱包(Single-signature Wallet),每个钱包持有超过 0.15 枚比特币。不少地址已被闲置多年,且遭窃资金的存入时间横跨 2021 年至今,这与漏洞潜伏在系统内的时间点几乎完全吻合。

Coldcard 是加拿大公司 Coinkite 推出的比特币专用硬体钱包,透过离线保存私钥降低遭骇风险,历年来陆续推出 Mk2 、 Mk3 、 Mk4 、 Q 与 Mk5 等多代机型。

不过,是否受到漏洞影响,并非取决于冷钱包购买年份,而是取决于「初次创建钱包时,设备所执行的韧体版本」。

正常情况下,钱包建立时的助记词(Seed Phrase)理应从庞大的数据池中随机生成,确保复杂度高到让骇客无从猜测。然而,Coldcard 的韧体却在这个环节出了包。

根据支付巨头 Block 旗下比特币工程与资安团队发布的报告,Coldcard 系统中一项建置设定,竟指示设备「跳过」硬体内建的随机数生成器;更扯的是,辅助程式库在检查时,仅确认该设定「是否存在」,却未进一步核实它「是否有被启动」。

这导致密钥生成的重责大任,降级给了软体替代方案,而这个软体,竟仅依赖晶片的「产品序号」与「系统时间」来生成密钥。

问题在于,这些资讯并非机密。晶片序号属于出厂固定资讯,而时钟数值也可透过推算或在相同装置上量测取得,让攻击者得以大幅缩小暴力破解的范围。

Block 团队一路追查,发现这个荒唐的程式码变动发生在 2021 年 3 月 1 日,并随著当月发布的「4.0.0」韧体版本被推送给了广大用户。

危机爆发后,开发商 Coinkite 紧急发出警告,呼吁曾在「运行 4.0.1 或更高版本的 Mk3 设备」上生成助记词的用户提高警觉;不过初步分析显示,较新的 Mk4 、 Q 与 Mk5 机型暂未受波及。

Block 团队表示,他们已将调查结果通报 Coinkite 并获证实。尽管双方均强调这只是初步分析,且尚未完成完整的漏洞利用测试,但因骇客的洗劫行动已然展开,因此 Block 决定公开报告以警示大众。

这场灾难的影响范围不仅止于钱包助记词。相同的乱数生成器,也曾用于 Coldcard 的纸钱包(Paper Wallet)私钥生成,以及助记词分割(Seed Split)遮罩、装置复制金钥(Device Cloning Keys)与 Key Teleport 等功能,因此影响范围可能比最初预估更广。

百款NFT链游免费玩 数字货币支付图解教程 区块链游戏获利技巧