預言機故障導致 193 億美元清算災難 — 五年教訓被忽視
來源: @LumaoDoggie
日期: Sun Oct 12 18:51:26 +0000 2025
標籤:
預言機安全閃電貸攻擊清算機制
2025 年 10 月 10 日至 11 日,一場價值 6,000 萬美元的市場拋售摧毀了 193 億美元的價值。這不是通過市場崩潰造成的,也不是通過對實際受損頭寸進行級聯追加保證金導致的,而是通過預言機故障。
這並非新鮮事。自 2020 年 2 月以來,同樣的攻擊模式已被成功利用,在數十起事件中給行業造成了數億美元的損失。2025 年 10 月的事件,將此前最大預言機攻擊的破壞力放大了 160 倍——這不是因為技術上的複雜性,而是因為底層系統在保持相同根本漏洞的情況下擴大了規模。
五年來昂貴的教訓,卻被忽視了。
預言機困境:敏感性與穩定性
每一個涉及槓桿的平台,不管是 DEX 還是 CEX,都面臨一個難題:如何在準確給抵押品定價的同時防止操縱?
- 過於靈敏 → 易受操縱攻擊
- 過於穩定 → 錯過真實的資產受損
2025 年 10 月的事件中,幣安選擇了靈敏性。當 6,000 萬美元的現貨拋售進市場時,預言機忠實地跟蹤了現貨價格,實時調低了抵押品價值,觸發了大規模清算。
但這個設計存在災難性的缺陷。
五年以來不斷上演的問題
首次出現 (2020-2022)
2020 年 2 月:bZx(35 萬美元 + 63 萬美元)
單源預言機。閃電貸操縱 Uniswap 的 WBTC 價格。14.6% 的總供應量被用於操縱 bZx 獨家依賴的價格機制。
2020 年 10 月:Harvest Finance(2,400 萬美元被盜,5.7 億美元擠兌)
七分鐘內。攻擊者用 5,000 萬美元閃電貸,操縱 Curve 的穩定幣價格。
2020 年 11 月:Compound(8,900 萬美元被清算)
DAI 穩定幣在 Coinbase Pro 上短暫飆升至 1.30 美元——但在其他地方沒有。
Compound 的預言機使用 Coinbase 作為基準。用戶根據僅在一個交易所以一小時為單位存在的價格被清算。
然而 Coinbase 深度不夠,操縱 30 萬深度訂單簿僅需 10 萬美元。
2022 年 10 月:Mango Markets(1.17 億美元)
500 萬美元初始資本。有人在多個場所將 MNGO 代幣拉高 2,394%。然後用虛高的抵押品借出 1.17 億美元。然後使用竊取的治理代幣為自己投票了一筆 4,700 萬美元的「漏洞賞金」。這是 CFTC(美國期貨委員會)首次針對預言機操縱的執法行動。
共同點
每次攻擊都遵循相同的路徑:
- 確定預言機對可操縱來源的依賴性
- 計算:操纵成本 < 潜在獲利
- 行動
- 打完收工
從 2020 年到 2022 年:41 起預言機操縱攻擊共竊取了 4.032 億美元。
行業反應:碎片化,遲鈍。
大多數平台繼續使用現貨權重過高且冗餘不足的預言機。
2025 年 10 月的災難
2025 年 10 月 10 日,凌晨 5:43:6,000 萬美元的 USDe 被拋入現貨市場。
在一個設計得當的預言機中,這種操作應該影響極小,拋售被多個獨立來源吸收。
但是這次是個災難:
6,000 萬美元現貨拋售 → 預言機調低抵押品(wBETH、BNSOL、USDe)→ 大規模清算 → 基礎設施過載 → 流動性真空 → 193 億美元價值被摧毀
放大係數
- Mango Markets (2022):500 萬美元操縱 → 1.17 億美元提取(23 倍)
- 2025 年 10 月:6,000 萬美元操縱 → 193 億美元摧毀(322 倍)
不是因為複雜性,而是因為同樣的漏洞存在於 CEX 中。
權重分配問題
該預言機嚴重依賴幣安自己的現貨價格。獨家使用內部價格會造成自我參照循環。
交易量集中不是價格準確性的證據,它是操縱機會的證據。
預定的漏洞窗口
預言機方法更新在實施八天前就被宣布了。攻擊者獲得了寶貴信息:
- 幣安 bnSol/WBEth 預言機依賴性
- 具體過渡時間
- 有八天的時間來布局和準備
2025 年 10 月的事件利用了預言機方法之間的過渡期——這個漏洞之所以存在,幣安提前宣布了,但是又沒有實施這些措施。
證據清晰地證明這是預言機故障
- 幣安:USDe 價格為 $0.6567,wBETH 為 $430
- 其他場所:變化小於 0.3%
- 鏈上池子:影響極小
正如 Ethena 的 Guy 所指出的:「在整個事件中,USDe 有 90 多億美元的可即時贖回的穩定幣。」
所以 USDe 流動性不是問題。
預言機報告了被操縱的價格。幣安根據市場上其他地方都不存在的價格進行了清算。
這就是 Compound 2020 年的模式:小範圍報價被操縱。
放大機制
分析師 agintender 確定了放大機制:
「連鎖清算導致服務器因數以百萬計的請求而繁忙。做市商無法及時下達買入訂單,從而導致流動性真空。」
這是 Harvest Finance 模式的放大版。攻擊觸發清算的速度快於基礎設施的處理速度。做市商無法響應。流動性消失。清算進入一個惡性循環。
在 Harvest 2020 年 10 月的基礎設施崩潰(用戶逃離導致 TVL 從 10 億美元降至 5.99 億美元)之後,教訓是顯而易見的:預言機系統必須在壓力事件期間考慮到基礎設施容量。
然而 2025 年 10 月的事件證明我們沒有吸取教訓。
核心設計挑戰
Ethena 的 Guy 闡述了核心設計挑戰:預言機必須區分臨時性錯位(市場噪音)和永久性受損(實際損失)。
2025 年 10 月的事件顯示了兩種預言機處理方式:
高靈敏性方法(本次幣安的做法)
- 實時現貨價格
- 快速市場響應
- 結果:190 億美元連鎖清算
這也是 bZx/Harvest 的方法:信任現貨市場,被價格操縱摧毀。
高穩定性方法(Aave)
- 硬編碼 1 USDe = 1 USDT
- 忽略臨時性錯位
- 結果:沒有清算
這是矯枉過正。比失敗要好,但並非最優。
行業有五年的時間來開發更好解決方案。然而我們得到了兩個極端,而這次的 CEX 選擇了最災難性的那個。
預言機攻擊模式
在任何滿足以下條件的槓桿系統中:
- 預言機價格主要依賴於可操縱的現貨市場
- 清算觸發機制是明確的
- 基礎設施存在性能限制
那麼只要:操縱成本 < 通過連鎖清算可獲得的收益
就會有人攻擊。
隨著系統規模線性增加,損害呈指數級增加。操縱成本保持大致恆定(由場所流動性決定),但連鎖清算可獲得的收益隨著系統總槓桿而增長。
預言機設計原則:我們本應學到的教訓
多來源驗證
永遠不要依賴單一場所的價格,尤其是來自你自己的訂單簿的價格。這是 bZx 2020 年 2 月的教訓。正確的預言機設計需要:
預言機價格 = 加權平均值(多個來源)
- 多個場所價格(40%)
- 鏈上流動性池(30%)
- 包裝資產的轉換比率(20%)
- 時間加權歷史價格(10%)
自適應敏感性
預言機應根據市場狀況調整敏感性:
- 正常市場:對價格變化敏感度更高
- 波動市場:通過時間加權增加穩定性
- 極端變動:設置斷路器和操縱檢查
時間加權平均價格(TWAP)預言機在 2020 年閃電貸攻擊後被廣泛採用,正是為了防止單筆交易操縱。
基礎設施彈性
預言機系統必須在連鎖清算期間能夠正常可用:
- 預言機需要有獨立基礎設施
- 處理數百萬並發查詢的能力
- 高負載下的優雅降級
在 Harvest Finance 2020 年 10 月的基礎設施崩潰之後,壓力期間的系統容量重要性變得顯而易見。連鎖清算會產生指數級增加的負載。你的基礎設施不僅必須處理第一次清算,還必須處理第一千次並發清算,尤其是在做市商跟不上和用戶恐慌時。
透明度與漏洞的平衡
公告與實施之間的八天窗口期造成了一個已知的攻擊方向。其實可能有更好的方法:
- 宣布後立即實施更改
- 使用滾動更新,不設固定日期
- 維護審計追蹤,不設預覽期
這是一個新的經驗:永遠不要提前宣布可能被黑客利用的項目變更。
這次的教訓
混合預言機設計
結合多個價格來源,並輔以真正有效的理智檢查:
- CEX 價格(跨場所的交易量加權)
- DEX 價格(僅限高流動性池)
- 鏈上儲備證明
- 跨交易所偏差限制
每個來源都應是獨立的。如果操縱一個來源會影響另一個,你就沒有冗餘。
動態加權
根據市場條件調整預言機敏感性:
- 正常波動:標準權重
- 高波動:增加 TWAP 窗口,減少現貨影響
- 極端變動:暫停清算,調查後再繼續
Compound 攻擊表明,有時一個交易所上的「正確」價格對整個市場來說是錯誤的。你的預言機應該足夠智能以知道這一點。
斷路器
在極端價格變動期間暫停清算——目的不是阻止合法的去槓桿化,而是區分操縱的場景與真實的市場:
- 如果價格在幾分鐘內跨場所趨同:很可能是真實的
- 如果價格仍然孤立於單個場所:很可能是操縱
- 如果基礎設施過載:暫停直到性能恢復
目標不是阻止所有清算,而是阻止由被操縱價格觸發的連鎖清算。
長期解決方案
去中心化預言機網路
轉向 Chainlink、Pyth 或 UMA 等成熟的預言機解決方案,它們聚合多個來源並內置了抗操縱機制。它們並非完美,但比每 18 個月就被利用一次的現貨依賴型預言機要好得多。
bZx 在 2020 年攻擊後集成了 Chainlink。他們之後就沒有因預言機操縱而被攻擊,這並不是巧合。
儲備證明
對於包裝資產和穩定幣,要求儲備證明,在鏈上驗證抵押品價值。
USDe 應該根據可驗證的儲備來定價,而不是訂單簿動態。
漸進式清算
通過分階段清算來防止級聯放大:
- 第一閾值:警告和增加抵押品的時間
- 第二閾值:部分清算(25%)
- 第三閾值:更大清算(50%)
- 最終閾值:完全清算
這為用戶提供了響應時間,並減少了大規模同步清算對系統的衝擊。
實時審計
監控預言機操縱攻擊:
- 跨交易所價格偏差
- 低流動性配對上的異常交易量
- 預言機更新前的持倉規模快速增加
2025 年 10 月的攻擊很可能顯示了預警信號。
有人在凌晨 5:43 拋售 6,000 萬美元的 USDe 應該觸發警報。
結論
行業已經被這個教訓教育了五次,損失不斷增加。
每個處理槓桿頭寸的平台現在都必須思考,自己能否抵擋住預言機攻擊?