Bible Network Crypto DeFi Onchain RWA AI Agent Stablecoin Chain SAFU CryptoTax DeFAI AGI Claude Me Claude Skill Claude Design Claude Cowork
獨立知識媒體
與任何項目無關聯
加密資產安全,從防禦到應對的完整指南
safu-bible.com
最新
私鑰、助記詞、錢包地址:三個最容易搞混的名詞,一次搞懂誰是誰、誰能給誰看  ·  地址投毒詐騙:駭客不用騙你簽名,只要騙你複製貼上就夠了  ·  盲簽是什麼:你按下確認鍵的那一刻,你的硬體錢包其實看不懂自己在簽什麼  ·  沒有駭客入侵、沒有程式碼漏洞:攻擊者只花 0.5 顆 ETH 就「合法投票」搬走 850 萬美元  ·  手機掉了,雙因素驗證全部鎖死:業界推薦的解方,其實是拿一種風險換另一種  ·  你交出去的不是密碼,是身分證照片跟住家地址:KYC 資料外洩為什麼比駭客攻擊更該讓你緊張
名詞解析 · hack-analysis

Oracle Manipulation

價格預言機操縱攻擊(Oracle Manipulation)
hack-analysis advanced

30 秒版 · 給沒耐心的人
攻擊者短時間內人為扭曲智能合約用來取得資產價格的預言機數據,讓合約在錯誤的價格基礎上執行借貸、清算或交易,藉此非法牟利的攻擊手法。
完整解說 +
01 · 這是什麼?

區塊鏈本身是一個封閉、確定性的系統,智能合約無法主動連上外部網路查詢現實世界的資訊,例如某個代幣目前的市場價格。為了解決這個限制,DeFi 協議普遍依賴「預言機」(oracle)這個橋樑,把鏈外的價格數據匯入合約,讓借貸、清算、衍生品定價等業務邏輯能依照即時價格運作。價格預言機操縱攻擊,指的就是攻擊者利用各種手法,在極短時間內人為扭曲預言機提供給合約的價格數據,讓合約基於一個被刻意製造出來、跟市場真實價格脫節的數字執行操作,藉此從中牟利。

這種攻擊之所以有效,核心在於它從頭到尾沒有破解任何密碼學機制、也沒有利用合約程式碼裡的邏輯錯誤——合約完全按照設計意圖正確執行,唯一的問題是它依據的輸入數據本身是假的。這跟這個站點已經介紹過的閃電貸攻擊經常同時出現:閃電貸讓攻擊者能在無需自有大額資本的情況下,瞬間取得足以扭曲市場價格的巨額資金,是價格操縱攻擊最常見的資金來源。

02 · 為什麼存在?

價格預言機操縱攻擊之所以能大規模發生,根本原因在於部分較早期或設計較單純的 DeFi 協議,直接把去中心化交易所(DEX)流動性池裡的即時兌換比例,當成資產價格的來源——這種設計方式在流動性池規模夠大時運作良好,但流動性池的兌換比例,本質上取決於池子裡兩種資產的相對數量,只要有人存入或提取足夠大量的資產,就能在極短時間內大幅改變這個比例。攻擊者正是利用這個特性:先透過閃電貸取得巨額資金,把資金大量投入某個流動性相對淺的池子,短暫且劇烈地推高或壓低某個代幣的兌換比例,接著在這個被扭曲的價格窗口內,對依賴這個價格數據的借貸協議進行操作(例如用被高估的代幣做抵押品借出遠超過其真實價值的資產),最後在同一筆交易結束前把價格恢復原狀、償還閃電貸,整個過程在單一區塊內完成,讓其他人幾乎沒有反應時間。

2022 年發生在 Solana 生態系交易所 Mango Markets 的攻擊案例,清楚示範了這個機制:攻擊者僅用約 1000 萬美元的初始資金,透過大額交易人為推高了 Mango 平台自身治理代幣 MNGO 的價格,再用這個被推高的代幣作為抵押品,借出遠超過其真實市值的資產,最終導致該協議損失約 1.17 億美元。這起事件也凸顯了另一種特殊型態的預言機操縱:攻擊目標不一定是外部流動性池,也可能是協議自身治理代幣的市場價格。

03 · 如何影響你的決策?

業界目前防範價格預言機操縱攻擊,主要採取幾種互補的架構性做法。第一種是改用「時間加權平均價格」(Time-Weighted Average Price,簡稱 TWAP),不直接採用某一個瞬間的即時價格,而是計算一段時間窗口內(例如過去 30 分鐘)的價格平均值——這讓攻擊者即使能在單一區塊內短暫扭曲價格,也很難把這個扭曲效果延續到整個時間窗口,大幅提高操縱成本。第二種是採用多重、獨立的價格來源並取中位數,而不是只依賴單一交易所或單一流動性池的數據,這樣即使攻擊者成功操縱了其中一個來源,只要其他來源保持正常,整體價格數據依然能維持準確。第三種是引入專業的預言機服務商(例如 Chainlink),這類服務商本身彙整多個交易所的數據,並具備異常值偵測與熔斷機制,能在偵測到價格劇烈異常波動時暫停更新,為協議爭取應對時間。

值得留意的是,這幾種防範機制彼此不互斥,多數成熟協議會同時採用多層防護——例如同時使用 TWAP 搭配多重來源,並針對流動性深度設下最低門檻,只採用交易量與深度足夠的池子作為價格參考依據。但這些機制的共同侷限,是它們都無法完全消除「鏈上資料要如何準確反映鏈下真實市場狀況」這個根本性問題,只能大幅提高攻擊所需的成本與難度,這也是為什麼即使防範技術持續演進,價格預言機操縱攻擊至今仍是 DeFi 領域損失金額排名前列的攻擊類型之一。

04 · 你該怎麼辦?

對於使用 DeFi 借貸、槓桿或衍生品協議的一般用戶而言,價格預言機操縱攻擊的風險,主要不是來自你個人操作上的疏失,而是來自你所使用的協議本身,在架構設計上對這類攻擊的防範程度——這也是為什麼在把資產投入任何 DeFi 協議之前,值得花時間確認幾件事:這個協議採用的是哪一種價格來源機制(單一 DEX 即時價格,還是搭配 TWAP 與多重來源)、協議是否公開揭露其預言機設計的技術文件、以及協議過去是否曾發生過類似攻擊事件。這些資訊通常能在協議官方文件、稽核報告,或第三方資安機構針對該協議發布的分析報告裡找到。

更務實的判斷原則是:協議支援的資產,如果本身流動性較淺、市值較小、交易量不高,通常代表這個資產的價格更容易被少量資金推動,相對更容易成為預言機操縱攻擊鎖定的對象;反之,市值大、跨多個交易所都有深厚流動性的主流資產,操縱所需的資金門檻通常高出許多。這不代表小型資產的協議就一定不安全,但確實意味著在評估任何新協議或新資產池時,「這個價格的資料來源夠不夠可靠、夠不夠難被操縱」,是跟合約本身有沒有通過審計同樣重要、卻經常被忽略的一項風險指標。

資料來源:The Full Guide to Price Oracle Manipulation Attacks (Cyfrin)Oracle Wars: The Rise of Price Manipulation Attacks (CertiK)Oracle Manipulation Attacks Rising: A Unique Concern for DeFi (Chainalysis)
實際例子 +

2022 年 10 月,Solana 生態系去中心化交易所 Mango Markets 遭遇一起經典的預言機操縱攻擊:攻擊者 Avraham Eisenberg 用約 1000 萬美元 USDC,分別存入兩個由他自己控制的帳戶,接著透過大額交易人為推高了 Mango 平台自身治理代幣 MNGO 的價格,再用這個被急速推高的 MNGO 代幣作為抵押品,向平台借出遠超過其真實市值的其他資產,最終導致 Mango Markets 損失約 1.17 億美元。事後 Eisenberg 公開承認自己是這起事件的操作者,並主張自己的行為屬於「合法的高獲利交易策略」而非犯罪;美國證券交易委員會後續對他提出指控,2024 年一審陪審團裁定他犯有詐欺等罪名,但 2025 年 5 月聯邦法官以檢方未能證明其詐欺理論為由撤銷了這些定罪,這起案例也因此常被業界拿來討論「利用協議設計漏洞获利」與「刑事詐欺」之間,法律上的界線究竟該如何劃定。

常見誤解 +
✕ 誤解1
× 誤解:只要合約通過了安全審計,就不會發生預言機操縱攻擊,實際是:審計檢查的是合約程式碼邏輯本身有沒有錯誤,但預言機操縱攻擊利用的是合約正確依據錯誤輸入數據運作的問題,程式碼邏輯本身完全正確,這類風險通常需要專門的經濟安全稽核才能涵蓋,不在傳統程式碼審計的範圍內
✕ 誤解2
× 誤解:預言機操縱攻擊只會發生在剛上線、不知名的小型協議上,實際是:只要協議依賴的價格來源本身流動性不夠深、防護機制不夠完善,即使是已上線一段時間、具備一定知名度的協議依然可能成為攻擊目標,Mango Markets 事發當時已是 Solana 生態系裡具一定規模的平台
提問
請至少輸入 10 個字
更多相關主題