#Coldcard 安全风险
Coldcard 失窃 1.5 亿美元:开源幻觉与 AI 审计新战局
WooFun2026-08-22 16:09
核心要点
Coldcard被盗超1.5亿美元暴露源码可见非真开源。本文剖析FOSS定义、Bitcoin Core范本、libngu审查缺失及AI红队如何重塑安全激励。
据 Woofun AI 消息,Coldcard 硬件钱包遭遇重大安全漏洞,导致用户损失超过 1 亿美元(逾 1500 枚 BTC),这一事件由 Juan Galt 撰文并经 AididiaoJP 编译、Foresight News 报道,彻底揭开了比特币软件激励体系背后的残酷真相。长期以来,比特币支持者坚信全球金融基础设施必须基于透明和可审计原则构建,但在应用层与传统金融领域,这一理念往往遭遇冷遇。此次失窃案将'开源'概念的实质含义推向舆论风口,暴露出即便是资深比特币玩家,对开源软件开发哲学及其失效场景的理解也存在显著盲区。核心冲突在于,代码的公开可见并不等同于真正的开源自由,这种认知偏差直接导致了安全防线的崩塌。
厘清术语是理解此次危机的基础。自由开源软件(FOSS)和自由 / 开源软件(FLOSS)并非简单的代码公开,而是严格符合正式用户自由定义的软件形态。自由软件基金会(FSF)通过四项基本自由来界定'自由软件':自由 0 允许用户按意愿和任何目的运行程序;自由 1 赋予用户研究程序工作机制并进行修改的权利,前提是必须能获取源代码;自由 2 保障用户重新分发副本以帮助他人的能力;自由 3 则允许用户分发修改后的版本,同样以源代码为前提。
FSF 强调,'free'意指自由而非免费,正如那句经典口号:''free' as in 'free speech',不是'free beer'。'开源促进会(OSI)则进一步制定了十项实践标准,包括可自由再分发且无需支付版税、源代码必须以适合修改的形式提供、允许创建并分发衍生作品、不得歧视任何个人、群体或用途(包括商业用途)。只有完全满足这十项标准的许可证,才能获得'开源'的正式资格。
相比之下,'源码可见'(source available)或'源码可查看'是另一回事。代码虽可公开阅读,但许可证可能限制商业销售权。Coldcard 的固件便是典型例子——它采用 MIT 许可证,但附加了严格的许可条件。该条款明确禁止'销售'软件,定义为向第三方提供该软件以换取费用或其他对价,且产品或服务的价值完全或实质来自该软件本身。换言之,Coldcard 固件被禁止用于商业用途。许可条件直言不讳:'这是开源吗?不是。'它指出,附加该条款后,软件虽满足开源定义的许多要素,但并非全部,因此不应被称为开源。这些区别至关重要。公开源代码仅创造了被检查的可能性,真正赋予自由软件定义或开源定义中全部权利,才是 FOSS。批评者认为,开源中的商业自由才能解锁第三方测试和审查代码的激励,否则这些激励可能根本不存在。
四项自由是开源的哲学核心,但在实践中,它建立在一个经济假设上:会有足够多有动机的人真正去审查代码。当这个假设失效时,系统就会上演经典的'公地悲剧'——共享资源因个人短期自利而被过度使用或忽视,最终走向退化。每个人都有动机多拿一点(或少贡献一点),结果资源整体受损。一位比特币开发者直言:'在测试中使用开源代码的两种测试替身 mocks 和 stubs 是不负责任且短视的。开源代码被认为安全,是因为任何人都可以验证它。
如果你连自己真正依赖的功能都不愿意做最低限度的测试,那你就是在当寄生虫。'因此,开源本身并不自动创造安全,它只创造了验证的可能。验证是否真正发生,取决于激励、技能和注意力。历史上,优秀的 FOSS 会随着漏洞被发现、披露和修复而逐渐加固,成为其他人构建的坚实基础。Linux 内核就是典型例子——它驱动了全球绝大多数服务器、云基础设施、安卓设备和嵌入式系统,是有史以来部署最广泛的软件之一。
比特币核心(Bitcoin Core)作为比特币的参考实现,是另一个大规模纯开源在现实中运行的经典案例。它采用 MIT 许可证,开发过程从设计上就是公开的。任何人都可以提交 pull request(合并请求)。代码审查是主要过滤机制,也是新人推荐的入门路径。审查者使用正式术语:Concept ACK(同意目标)、Approach ACK(同意目标和方法)、带具体 commit hash 的 ACK(已测试并批准合并),或 NACK(不同意,需附技术理由)。
维护者在合并前会权衡贡献者共识与技术优劣。共识关键变更门槛更高,通常需要比特币改进提案(BIP),并在 bitcoin-dev 邮件列表和 IRC 上进行多年充分讨论。这里没有特权阶层的'比特币核心开发者',信任是靠长期展示能力挣来的。维护者的存在只是出于实际需要——审计合并代码、管理发布、基本审核——但产出的是纯开源代码,任何人都可以检查、编译、分叉或运行。
代码被合并进 Bitcoin Core 的人,通常被称为 Bitcoin Core 贡献者。长期开源比特币开发者 Calle 最近总结道:'那些觉得核心是某种在阴影中不透明运作机构的人,要么太懒,要么太蠢,懒得自己去看一眼。他们做的一切都是公开的,任何人都可以参与,最终产出的就是纯开源代码。'这些工作的资金主要来自非营利和资助结构,例如 Brink、OpenSats、Spiral 等,而不是传统公司的产品路线图。
技术讨论在公开的 bitcoin-dev 邮件列表和 Libera Chat 的 bitcoin-core-dev IRC 频道进行,提案在提交 pull request 前后都会被严格审视。GitHub 上的 issue 和 pull request 常有长达十年的评论历史。结果是一种优先追求正确性和可审计性的开发文化,而不是速度或商业功能迭代速度。
Woofun AI 整理数据显示,审查失效的案例比比皆是。大多数开源或源码可见软件的用户,从来不会自己去读代码。他们依赖'别人在审查'的假设。在 Coldcard 案例中,一个关键的熵缺陷在公开固件中潜伏了大约五年,才被利用并因此被发现。这个 bug 是在 2021 年一次重大重写中引入的。那次重写也移除了源自 Trezor 的剩余 GPL 代码。Trezor 是第一款硬件钱包,目前是自托管行业第二大。问题核心的库叫 libngu,它取代了 trezor-crypto,但外部审查极少——在生产环境使用超过五年后,只有 7 个 star、不到 20 个 fork。对比之下,trezor-crypto 有 512 个 star 和 212 个 fork,更现代的 trezor-firmware 则有 793 个 fork 和 1800 个 star。
这种关注度差异揭示了源码可见本身并没有带来真正重要的审查。批评者认为,原因在于其他有资金、有能力的盈利公司被限制使用,缺乏商业激励。比特币领域的利害关系远高于大多数软件领域。一个关键缺陷可以直接在公开市场转化成流动资金。Coldcard 被盗资金的前半部分仍存放在少数地址,黑客或许有一天会被抓住,但后续的模仿者更谨慎,有人已经成功盗取更多比特币并洗白(总损失至少已达 1700 BTC)。
比特币的抗审查和不可篡改交易,既给攻击者提供了强大激励,也形成了达尔文式筛选:只有那些持续吸引高质量审查、用户和公司认真采取防护措施的项目,才有长期生存的可能。许可证选择会塑造这些激励。纯开源许可证能最大化潜在审查者和分叉的池子。而受限的'源码可见'许可证虽然能减少商业'搭便车',但也缩小了同时拥有合法权利和经济动机去深度投入注意力的人群。结果,代码审查的重担又回到公司自己身上,某种程度上让它更接近闭源,而非开源。
人工智能正在改变开源与闭源之间的平衡。Coldcard 事件后,一个由 Calle、AnchorWatch 的 Rob Hamilton 等开发者主导、OpenSats 支持的志愿者项目 Bitcoin Red Team,用前沿 AI 模型扫描了数百个开源比特币代码库。在一段密集时期内,团队提交了数千项发现,其中数十项被定为关键或高严重性,覆盖数百个项目。责任披露先给维护者,再公开。这证明了系统性 AI 辅助审查,能以人类团队此前难以企及的规模和速度发现漏洞。
值得注意的是,Bitcoin Red Team 发现中国开源权重模型比闭源美国模型可靠得多。即便是拥有网络权限和顶级访问权的美国模型,也拒绝回答 Bitcoin Red Team 的查询,这让美国开发者颇为遗憾。
与此同时,AI 生成代码的洪流也给 FOSS 维护者带来了新的'拒绝服务'压力。审查 AI 输出往往比生成它更耗时。一些比特币之外的开源项目已经开始限制 issue tracker,或制定严格的反 AI 贡献规则,只为维持基本运转。在闭源一侧,传统'通过隐蔽获得安全'的优势正在被侵蚀。现代 AI 模型能以极高速度阅读、去混淆、探测端点并推理代码。开源与闭源的实际差异,如今主要只剩那些从未上线的后端代码。闭源代码最终只能依靠专业审计的质量、补丁部署速度,以及能让有权限的人持续认真审查的激励结构。
比特币和更广泛的加密行业,正给自由开源软件施加不同寻常的压力。真实货币价值、对抗性经济,以及现在的 AI 规模分析,正迫使软件模式不断进化。回到模拟前数字系统,对支撑现代社会的基础设施来说几乎不是选项。只有那些被充分审计的项目,才有可能在 AI 辅助黑客和数字优先金融的重压下存活下来。这是继传统网络安全范式失效后,Web3 基础设施面临的又一次深刻重构。
评论
暂无评论