Drift Protocol 遭遇 2.86 亿美元攻击:合法的 Solana 功能如何沦为 DeFi 的致命武器
2026 年愚人节,加密货币社区收到了一个严峻的提醒:最危险的攻击利用的不是代码漏洞,而是信任。Drift Protocol 是 Solana 上最大的去中心化永续合约交易所,其总锁仓价值(TVL)超过 5.5 亿美元。在一场精心策划的抢劫案中,约 2.86 亿美元被洗劫一空。攻击者选择的武器是一个名为“持久化 nonce”(durable nonces)的 Solana 区块链合法功能。该功能本是为了提供便利而设计,却被武器化并造成了毁灭性的后果。
事件回顾:攻击时间线
Drift 漏洞利用并非始于 4 月 1 日。早在几周前,攻击者就开始了铺垫工作。区块链分析公司 Elliptic 将此模式与朝鲜支持的国家级黑客行动联系在了一起。
2026 年 3 月 23 日至 30 日:攻击者在漏洞利用发生的大约 8 天前,在 Solana 上创建了多个“持久化 nonce”账户和一个钱包。在准备阶段,攻击者还创建了一种名为 CarbonVote Token (CVT) 的虚假代币,仅向资金池注入了 500 美元的流动性,并在几周内进行刷量交易(wash-trading),以生成虚假但稳定的预言机价格历史。
2026 年 4 月 1 日:Drift Protocol 从其保险基金中进行了一次合法的测试提现——这是例行的操作程序。大约一分钟后,攻击者提交了预先签署的持久化 nonce 交易。仅仅相隔 4 个 Solana 区块槽位(slots)的两笔交易,就足以创建并批准一笔恶意的管理员转账,随后进行批准并执行。
几分钟内,攻击者就完全控制了 Drift 的协议级权限。
持久化 Nonce 攻击向量解析
要理解为什么这次漏洞利用如此具有破坏性,需要了解 Solana 交易通常是如何运作的,以及持久化 nonce 如何改变了规则。
在 Solana 上,每笔交易都包含一个“近期区块哈希”(recent blockhash),这本质上是一个证明交易是近期创建的时间戳。该区块哈希在大约 60 到 90 秒后失效。如果一笔交易没有在该窗口期内提交到网络,它就会变得无效。这是一种安全功能,旨在防止旧的、过时的交易被重放。
持久化 nonce 完全绕过了这一安全功能。 它们允许交易被提前签名,并在几天甚至几周后提交,且依然保持完全有效。该功能的存在有其合理理由——离线签名、定时交易以及复杂的多方批准工作流。
攻击者利用这一点,从 Drift 的五位安全理事会多签(multisig)成员那里骗取了两份具有误导性的批准。理事会成员以为他们签署的是例行管理交易。相反,他们预先批准了攻击者留作储备并在最佳时机执行的转账。由于持久化 nonce 交易不会过期,签名者根本无法预料到他们的批准会在几周后被用于完全不同的场景。