# Euler Finance 遭受閃電貸攻擊,損失近2億美元2023年3月13日,一場針對Euler Finance的閃電貸攻擊造成了約1.97億美元的巨額損失,涉及6種代幣。這次攻擊利用了項目中Etoken的donateToReserves函數存在的漏洞,該函數缺乏必要的流動性檢查機制。## 攻擊過程分析攻擊者首先從某借貸平台獲取了3000萬DAI的閃電貸,隨後部署了兩個關鍵合約:一個用於借貸操作,另一個用於清算。攻擊過程大致如下:1. 將2000萬DAI質押到Euler Protocol,獲得1950萬eDAI。2. 利用Euler Protocol的10倍槓杆功能,借出約1.956億eDAI和2億dDAI。3. 使用剩餘1000萬DAI償還部分債務,銷毀相應dDAI。4. 再次借出同等數量的eDAI和dDAI。5. 通過donateToReserves函數捐贈1億eDAI,並隨即進行清算操作,獲得3.1億dDAI和2.5億eDAI。6. 最後提取約3890萬DAI,償還閃電貸後獲利約887萬DAI。## 漏洞根源此次攻擊的核心在於donateToReserves函數缺少必要的流動性檢查。與mint函數相比,donateToReserves函數沒有執行checkLiquidity步驟,這一步驟本應調用RiskManager模塊來確保用戶的Etoken數量大於Dtoken數量。這個疏忽使得攻擊者能夠操縱自身帳戶狀態,使其符合被清算的條件,然後通過清算過程獲取巨額利潤。## 安全建議針對此類漏洞,DeFi項目尤其是借貸平台應當:1. 加強合約安全審計,確保所有關鍵函數都包含必要的安全檢查。2. 特別關注資金償還、流動性檢測和債務清算等核心功能的安全性。3. 實施多重安全機制,避免單點故障導致的大規模損失。4. 定期進行安全評估和壓力測試,及時發現並修復潛在風險。這起事件再次凸顯了智能合約安全的重要性,以及在快速發展的DeFi領域中保持警惕的必要性。項目方應當汲取教訓,不斷完善安全措施,以保護用戶資產和維護生態系統的健康發展。
Euler Finance遭閃電貸攻擊 損失近2億美元
Euler Finance 遭受閃電貸攻擊,損失近2億美元
2023年3月13日,一場針對Euler Finance的閃電貸攻擊造成了約1.97億美元的巨額損失,涉及6種代幣。這次攻擊利用了項目中Etoken的donateToReserves函數存在的漏洞,該函數缺乏必要的流動性檢查機制。
攻擊過程分析
攻擊者首先從某借貸平台獲取了3000萬DAI的閃電貸,隨後部署了兩個關鍵合約:一個用於借貸操作,另一個用於清算。攻擊過程大致如下:
漏洞根源
此次攻擊的核心在於donateToReserves函數缺少必要的流動性檢查。與mint函數相比,donateToReserves函數沒有執行checkLiquidity步驟,這一步驟本應調用RiskManager模塊來確保用戶的Etoken數量大於Dtoken數量。
這個疏忽使得攻擊者能夠操縱自身帳戶狀態,使其符合被清算的條件,然後通過清算過程獲取巨額利潤。
安全建議
針對此類漏洞,DeFi項目尤其是借貸平台應當:
這起事件再次凸顯了智能合約安全的重要性,以及在快速發展的DeFi領域中保持警惕的必要性。項目方應當汲取教訓,不斷完善安全措施,以保護用戶資產和維護生態系統的健康發展。