Drift Protocol 2.85 億美元駭客事件深度剖析:假代幣、Durable Nonce 與治理劫持的完美風暴
2026 年 4 月 1 日,愚人節這天,Solana 上最大的去中心化永續合約交易所 Drift Protocol 遭遇了年度最大 DeFi 駭客攻擊。攻擊者在短短 12 分鐘內抽走約 2.85 億美元的用戶資產,TVL 從 5.5 億美元暴跌至不到 2,400 萬美元,DRIFT 代幣價格一度暴跌逾 40%。
這不是一個簡單的智能合約漏洞。這是一場精心策劃超過三週、結合假代幣製造、預言機操縱、社會工程學與 Solana 原生功能濫用的複合攻擊——區塊鏈安全公司 Elliptic 與 TRM Labs 均指出,攻擊手法與北韓 Lazarus Group 過往操作高度一致。
本文將從技術層面完整拆解這起事件。
一、攻擊全景概覽
在深入細節之前,先建立整體框架。這次攻擊涉及三個主要攻擊向量,彼此環環相扣:
- 假代幣製造與預言機操縱:創建 CarbonVote Token(CVT),透過洗售交易建立價格歷史,讓預言機將其視為合法資產
- Durable Nonce 預簽名攻擊:利用 Solana 的 durable nonce 機制,預先取得多簽成員的授權簽名,將「簽署時刻」與「執行時刻」分離超過一週
- 治理劫持:透過被妥協的管理金鑰,將 CVT 列為合法抵押品、拉高提款上限、最終批量清空金庫
每一個環節獨立來看都不足以造成損害,但當它們被串聯在一起時,形成了一場幾乎無法防禦的攻擊。
二、前置部署:三週的精心準備
2.1 資金來源與代幣製造(3 月 11 日 - 3 月 23 日)
攻擊的鏈上布局始於 3 月 11 日——一筆從 Tornado Cash 提取的 10 ETH。這筆資金在 3 月 12 日凌晨 0:00 GMT(約平壤時間上午 9:00)開始移動,隨後被用於部署 CarbonVote Token(CVT)。
攻擊者的代幣製造流程:
- 鑄造:鑄造 7.5 億枚 CVT
- 注入流動性:在 Raydium 上僅以數千美元建立流動性池
- 洗售交易:透過多個地址反覆交易,人為製造接近 1 美元的價格歷史
- 建立合法性:持續數天的交易量讓鏈上預言機開始報價,CVT 看起來就像一個「真實」的資產
這個階段的關鍵在於:攻擊者不需要 CVT 真的有價值,只需要預言機認為它有價值。
2.2 Durable Nonce 帳戶準備(3 月 23 日)
3 月 23 日,攻擊者創建了四個 durable nonce 帳戶。其中兩個與 Drift 安全委員會的合法成員相關聯,另外兩個由攻擊者控制。
要理解這步的意義,需要先理解 Solana 的 durable nonce 機制。
Solana 交易的時效性問題
Solana 上每筆交易都包含一個 recent blockhash——本質上是一個時間戳,證明交易是最近建立的。這個 blockhash 在大約 60 到 90 秒後就會過期。如果交易沒有在這個視窗內提交到網路,就會失效。這是一個安全功能,防止舊交易被重播。
Durable Nonce:繞過時效的合法功能
Durable nonce 覆蓋了這個安全功能。它用一個儲存在鏈上特殊帳戶中的固定 nonce(一次性代碼)來替換會過期的 blockhash,讓交易無限期有效——直到有人選擇提交它。
這個功能本身是合法的,設計目的是支持離線簽名、多簽工作流程等場景。但攻擊者將它變成了武器:將簽署的時刻與執行的時刻分離超過一週,創造了一個簽署時的上下文與使用時的上下文完全不匹配的缺口。
2.3 治理遷移:移除最後防線(3 月 27 日)
3 月 27 日,Drift 將其安全委員會遷移到新的 2/5 門檻配置——更關鍵的是,採用了零時間鎖(zero timelock)。
時間鎖是多簽治理中的關鍵安全機制:當管理操作被批准後,需要等待一段時間才能執行,讓社群和監控系統有機會偵測並介入可疑操作。Drift 的這次遷移直接移除了這道防線。
在 2/5 的門檻配置下,攻擊者只需要控制兩個簽名者就能通過任何提案。而他已經在 3 月 23 日取得了這個條件。
2.4 預簽名交易(3 月 31 日)
攻擊執行前一天,攻擊者準備好了所有預簽名交易。這些交易利用 durable nonce 保持有效,等待時機觸發。
多簽成員很可能認為他們簽署的是例行性交易。Durable nonce 的特性使得簽名者在審查交易時,無法判斷這筆交易會在何時、在什麼狀態下被執行。
三、D-Day:12 分鐘的精準打擊
3.1 攻擊觸發
4 月 1 日,在 Drift 執行一筆合法的保險基金測試提款後大約一分鐘,攻擊者提交了預簽名的 durable nonce 交易。
兩筆交易,在 Solana 區塊鏈上僅相隔四個 slot,就完成了:
- 建立惡意管理轉移並取得批准
- 批准並執行該轉移
數分鐘內,攻擊者取得了 Drift 協議級別的完整控制權。
3.2 金庫清空
取得控制權後,攻擊者立即執行以下操作:
- 將 CVT 列為合法抵押品市場:利用 Drift 的
initializeSpotMarket函數,這個函數允許管理員直接指定 oracle 地址和來源參數。即使是像 CVT 這樣沒有 Pyth 預言機 feed 的代幣,只要有管理權限,就能以任意 oracle 來源上架 - 拉高提款上限至極端水準:移除正常情況下會限制大額資金流出的安全護欄
- 存入數億枚 CVT 作為抵押品:基於被操縱的預言機價格,這些抵押品看起來價值數億美元
- 批量提款:31 筆提款交易在約 12 分鐘內執行完畢,抽走包括 USDC、JLP 等真實資產
3.3 資金轉移
資金被迅速整合並轉換:
- 被盜資產首先統一兌換為 USDC 和 SOL
- 部分資金透過 Circle 的 Cross-Chain Transfer Protocol(CCTP)橋接到以太坊
- 在以太坊上,部分轉換為 ETH
- 部分資金流經中心化交易所
- 資金最終分散到多個錢包,增加追蹤難度
整個洗錢模式——包括跨鏈橋接的速度和規模——與 2025 年 2 月 14 億美元 Bybit 駭客事件中觀察到的手法高度一致。
四、技術根因分析
4.1 這不是智能合約漏洞
必須強調:這次攻擊沒有利用任何智能合約程式碼漏洞。這是近幾個月來第三起不涉及程式碼漏洞的重大 DeFi 攻擊。攻擊的核心是:
- 社會工程學(誘導多簽成員預簽交易)
- 治理架構的系統性弱點
- 合法功能的武器化(durable nonce)
4.2 管理金鑰的過大權限
Drift 的管理金鑰具有過度集中的權限「攻擊面」。一個被妥協的簽名者就能:
- 重寫全協議的風險參數
- 指定任意預言機來源
- 上架新的抵押品市場
- 修改提款限制
- 停用安全防護
當這些權限全部集中在一個管理角色上時,攻陷這個角色等同於攻陷整個協議。
4.3 預言機設計的脆弱性
Drift 的 initializeSpotMarket 函數允許管理員直接指定 oracle 地址和來源參數,這意味著:
- 不需要經過去中心化預言機(如 Pyth)的驗證流程
- 管理員可以為任何代幣設定任意價格來源
- 沒有對新上架抵押品的流動性深度或市場成熟度進行自動化檢查
4.4 零時間鎖的致命決策
從安全角度來看,3 月 27 日的治理遷移是最關鍵的失誤。將時間鎖設為零意味著:
- 惡意操作可以被即時執行
- 社群沒有偵測視窗
- 監控系統沒有反應時間
- 任何管理操作一旦通過多簽門檻就立即生效
這本質上把多簽從「安全閘門」降級為「橡皮圖章」。
五、歸因分析:北韓 Lazarus Group
Elliptic 和 TRM Labs 的分析均指向北韓國家級駭客組織。主要證據包括:
- 鏈上行為模式:資金啟動時間(平壤時間工作時段)、跨鏈橋接速度和規模、洗錢路徑,均與此前 DPRK 歸因操作一致
- 歷史關聯:攻擊手法與 2025 年 2 月 Bybit 14 億美元駭客事件高度相似
- 統計數據:如果歸因確認,這將是 2026 年追蹤到的第 18 起 DPRK 相關操作,今年累計被盜金額已超過 3 億美元
值得注意的是,朝鮮駭客組織的攻擊焦點正在從「找程式碼漏洞」轉向「找人的漏洞」。社會工程學和操作安全失敗,正成為 DeFi 協議資金被盜的主要途徑。
六、事件後續
即時反應
- Drift 立即暫停所有存提款功能
- 團隊確認正與安全合作夥伴和生態系統參與者合作調查
- 4 月 3 日推送軟體修補程式
- 4 月 5 日共同創辦人舉行直播 Q&A,坦承許多重要細節仍然未知
賠償現況
截至 4 月 5 日:
- 沒有公布全面的賠償計劃
- 4 月 6 日 Drift 與 DeFi 保險提供者會面討論可能的補償方案
- 尚未確認任何被盜資金的追回
- 追回工作因資金已經跨鏈分散而極為複雜
ZachXBT 對 Circle 的批評
鏈上偵探 ZachXBT 公開批評 Circle 在 USDC 處理上的反應速度,認為如果 Circle 能更快凍結相關 USDC,部分損失可能得以避免。這再次引發了穩定幣發行商在安全事件中應承擔何種角色的爭論。
七、DeFi 安全啟示
7.1 審計管理金鑰,不只是程式碼
CoinDesk 的一篇評論文章標題精準概括了這個教訓:「Audit admin keys, not just code」。當前的 DeFi 安全審計過度聚焦於智能合約程式碼本身,而忽略了:
- 管理金鑰的權限邊界
- 多簽配置的安全性
- 時間鎖機制的存在與合理性
- 治理遷移的風險評估
7.2 Durable Nonce 是雙面刃
Durable nonce 是 Solana 的合法功能,為離線簽名和多簽工作流程提供便利。但這次攻擊揭示了它在多簽治理中的系統性風險:
- 簽名者無法控制交易的執行時機
- 預簽名交易可以在完全不同的上下文中被執行
- 多簽成員需要更嚴格的交易審查流程
7.3 分層防禦的重要性
如果以下任何一個防禦層存在,這次攻擊都可能被阻止或減緩:
- 時間鎖:給社群偵測和反應的時間視窗
- 抵押品上架的額外審查:要求新抵押品通過流動性深度、市場成熟度等自動化檢查
- 提款限制的硬性上限:即使管理員也無法在短時間內突破的提款上限
- 預言機多源驗證:要求抵押品至少通過兩個獨立預言機來源的價格驗證
- 管理操作的分級授權:高風險操作(如上架新抵押品、修改提款限制)需要更高門檻的批准
7.4 「人」是最大的攻擊面
技術再完善,最終操作權還是在人手上。DeFi 協議需要正視:
- 多簽成員的操作安全培訓
- 社會工程學防禦演練
- 簽名請求的獨立驗證流程
- 對「看起來例行」的交易保持警覺
八、結語
Drift Protocol 的 2.85 億美元駭客事件不是一個「程式碼有 bug」的故事。它是一個關於信任、治理設計、與人性弱點的故事。
攻擊者花了三週時間布局,製造了一個看起來合法的代幣,利用了一個設計用於便利性的 Solana 功能,誘導了多簽成員在不知情的情況下簽署授權,然後在移除了最後安全防線的一刻,用 12 分鐘完成了收割。
對整個 DeFi 產業而言,這次事件的教訓很清楚:程式碼審計是必要的,但遠遠不夠。 治理架構、管理金鑰權限、時間鎖機制、預言機設計、操作安全——這些「非程式碼」的安全層同樣需要被嚴肅對待。
下一個 2.85 億美元的漏洞,可能不在程式碼裡,而在你的治理流程中。
本文資料來源包括 Elliptic、TRM Labs、CoinDesk、CCN、The Hacker News、Unchained Crypto、CryptoTimes 等機構的報導與分析。