GMX遭黑客攻擊 可重入漏洞致損4000萬美元

robot
摘要生成中

GMX 遭受黑客入侵,造成超過 4000 萬美元的損失。攻擊者利用了一個可重入漏洞,並在合約啓用槓杆功能的情況下建立空頭頭寸來實施攻擊。

損失超4000萬美元,GMX黑客事件原理分析

問題的核心在於 executeDecreaseOrder 函數的錯誤使用。該函數的第一個參數應該是外部帳戶(EOA),但攻擊者傳入了一個智能合約地址。這使得攻擊者能夠在贖回過程中重新進入系統,操縱內部狀態,最終贖回的資產遠超其實際持有的 GLP 價值。

在 GMX 中,GLP 是流動性提供者代幣,代表對金庫資產(如 USDC、ETH、WBTC)的份額。正常情況下,當用戶贖回 GLP 時,系統會根據用戶持有的 GLP 佔比和當前管理資產總額(AUM)計算應返還的資產數量。AUM 的計算包括所有代幣池的總價值、全局空頭未實現損益、已預留金額和預設扣減等因素。

然而,當啓用槓杆功能後,系統出現了漏洞。攻擊者在贖回 GLP 之前,開設了大額的 WBTC 空頭頭寸。由於空頭一開倉就增加了全局空頭規模,在價格尚未變動的情況下,系統默認該空頭處於虧損狀態。這部分未實現虧損被錯誤地計入金庫的"資產",導致 AUM 人爲上升。盡管金庫實際上並未獲得額外價值,但贖回計算卻基於這個虛高的 AUM,使得攻擊者獲得了遠超其應得的資產。

損失超4000萬美元,GMX黑客事件原理分析

這次攻擊暴露了 GMX 在槓杆機制與可重入保護設計上的嚴重缺陷。核心問題在於資產贖回邏輯對 AUM 的信任過高,未對其組成部分(如未實現虧損)進行足夠審慎的安全校驗。同時,關鍵函數對調用者身分的假設(EOA vs 合約)也缺乏強制性驗證。

這一事件再次提醒開發者,在涉及資金敏感操作時,必須確保系統狀態不可被操縱。特別是在引入復雜金融邏輯(如槓杆、衍生品)時,更需嚴防重入與狀態污染帶來的系統性風險。開發團隊應該重新審視其合約設計,加強安全措施,並考慮引入更嚴格的身分驗證和狀態檢查機制,以防止類似攻擊再次發生。

GMX-2.42%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 留言
  • 分享
留言
0/400
暫無留言
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)