Euler Finance遭閃電貸攻擊 損失1.97億美元

robot
摘要生成中

Euler Finance遭受閃電貸攻擊,損失近2億美元

近期,一起重大的閃電貸攻擊事件震驚了加密貨幣界。根據鏈上監控數據顯示,2023年3月13日,Euler Finance項目因其智能合約中的一個漏洞而遭到黑客攻擊,造成約1.97億美元的巨額損失。

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

攻擊者利用了Euler Finance合約中donateToReserves函數缺少流動性檢查這一漏洞。通過多次調用不同幣種的相關功能,黑客成功從該項目中獲取了大量資金。此次攻擊涉及6種代幣,目前這些被盜資金仍然存留在攻擊者的帳戶中。

攻擊過程大致如下:

  1. 黑客首先從Aave平台借入3000萬DAI進行閃電貸。

  2. 隨後部署了兩個合約:一個用於借貸操作,另一個用於清算操作。

  3. 將借來的2000萬DAI存入Euler Protocol合約,獲得約1950萬eDAI。

  4. 利用Euler Protocol的10倍槓杆功能,借出大量eDAI和dDAI。

  5. 通過巧妙操作,多次重復借貸和還款過程。

  6. 最終調用存在漏洞的donateToReserves函數,捐贈10倍於償還資金的金額。

  7. 觸發清算機制,獲取大量dDAI和eDAI。

  8. 最後提取近3900萬DAI,歸還閃電貸後淨賺約887萬DAI。

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

通過分析合約代碼,研究人員發現問題出在donateToReserves函數上。與其他關鍵函數相比,該函數缺少了checkLiquidity步驟,這導致用戶可以繞過流動性檢查,人爲制造可被清算的狀態。正常情況下,checkLiquidity函數會調用RiskManager模塊,確保用戶的Etoken始終大於Dtoken,以維護系統安全。

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

這起事件再次凸顯了智能合約安全審計的重要性。對於借貸類項目來說,尤其要注意資金償還、流動性檢測和債務清算等關鍵環節的安全性。項目方在上線前務必進行全面的安全審計,以防範類似風險。

作爲加密貨幣生態系統中的一員,我們應當從這次事件中吸取教訓。它提醒我們,在快速發展的區塊鏈世界裏,安全永遠是第一要務。開發者需要更加謹慎地設計和實現智能合約,投資者也應該更加警惕潛在的安全隱患。只有不斷提高整個行業的安全意識和技術水平,才能建立一個更加穩健、可信賴的去中心化金融體系。

Euler Finance漏洞分析:如何遭閃電貸攻擊,損失1.97億美金!

EUL2.69%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 7
  • 轉發
  • 分享
留言
0/400
夜不撸毛vip
· 07-16 06:36
又来割韭菜了~
回復0
LiquidityWhisperervip
· 07-15 19:06
怎么天天被搞
回復0
币圈心理医生vip
· 07-14 19:31
解开这个创伤……老实说,这是智能合约分离焦虑的经典案例
查看原文回復0
Permabull Petevip
· 07-13 10:37
又躺平一个DeFi
回復0
永续多头人vip
· 07-13 10:31
抄底就现在 从不空仓 最终幸存者就是我
回復0
反向指标哥vip
· 07-13 10:26
项目方下手真快...
回復0
ForkTonguevip
· 07-13 10:24
又见智能合约出事了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)