从没联网的冷钱包,为何41分钟被搬空?

源自158位全网作者

19:13

从没联网的冷钱包,为何41分钟被搬空?

你可能什么都没做错,睡一觉起来,钱包里的比特币被一次性转空了。这就是2026年下半年硬件安全圈最炸的瓜:Coldcard——公认最"硬核"的比特币硬件钱包,输给了自己的一行代码。哔哩哔哩

从没联网的冷钱包,为何41分钟被搬空?

事发:41分钟,1000多枚BTC集体失联

2026年7月30日UTC时间凌晨,一批比特币地址在约41分钟内被一次性转空,共涉及1082.65枚BTC,按当时价格约合7020万美元。知乎

攻击者的手法相当"机械":固定30 sat/vB手续费、不留找零,一看就是自动化工具在批量扫货。Galaxy Research随后识别出四轮手法相似的疑似攻击,前三轮就涉及4585个地址、1367.05枚BTC——不过这些数字均来自链上特征分析,不能视为逐一确认的受害清单。知乎

从没联网的冷钱包,为何41分钟被搬空?

根因:一个"定义了但没生效"的宏

钱包明明从没联网,攻击者碰不到设备,钥匙是怎么被"隔空扫走"的?Block安全团队的复盘揭了底:2021年3月Coinkite迁移底层代码时,把种子生成从硬件随机数接口`ckcc.rng_bytes()`切到了`ngu.random.bytes()`,硬件真随机数被软件伪随机数悄悄替换。哔哩哔哩知乎知乎

更要命的是编译环节:生产配置明明把`MICROPY_HW_ENABLE_RNG`设成了0(本意是关掉MicroPython自带RNG、改用自家硬件版),但libNgU相关代码只检查宏有没有被"定义",不检查值是不是非零——于是编译不报错,软件伪随机数生成器静默接管了私钥生成。知乎

这个伪随机数的初始状态来自MCU序列号部分数据、SysTick和RTC计时器——全都不是密码学秘密。攻击者只要缩小设备标识符、启动时间和随机数调用次数的范围,就能离线重放生成候选助记词,再拿地址去链上撞库。说白了,比特币私钥本质就是一个256位随机数,生成过程一旦不随机,随便一台电脑跑几个小时就能把你的私钥算出来。知乎知乎

最要命的不是漏洞,是"沉默失败"

受影响种子的有效熵:Mk2/Mk3约40位,Mk4/Mk5/Q约72位,远低于128位的设计目标。但整个过程零崩溃、零报错,助记词看起来完全正常——这就是硬件安全里最难防的silent failure:系统不说自己坏了,它只是悄悄不安全。讽刺的是,Coinkite承认此前用AI审查过代码却没发现问题;漏洞公开后,社区称Claude Code约8分钟就指出了随机数路径的毛病(未经独立复现)。知乎

用户侧最大误区:升级固件≠安全

风险取决于创建助记词那一刻的设备与固件版本——按Coinkite截至8月1日的公告,Mk2/3上4.0.1至4.1.9固件生成的种子即受影响;把旧助记词导入新钱包或升级固件都救不回已丢失的随机性,只能用修复后固件生成新种子再迁移资金。评论区的高赞判断很扎心:"硬件冷钱包是黑盒,你根本不知道它随机不随机。"而加了BIP39通行短语(“第25个词”)的钱包几乎全身而退——攻击者枚举出种子也猜不到你的短语。知乎哔哩哔哩知乎

底层密码学没被破解,塌的是"信任的最后一公里":随机数。这次,自己扔骰子生成熵这种土办法,反而被博主们认真推荐。知乎

内容由AI生成
0
扫一下,分享更方便,购买更轻松
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

最新文章 热门文章