卷土重來?黑客獲利約130萬美元 FEGexPRO合約被攻擊事件分析
發表於 2022-05-16 15:56 作者: 成都鏈安
2022年5月16日,成都鏈安鏈必應-區塊鏈安全態勢感知平台輿情監測顯示,Ethereum和BNB Chain上FEGtoken項目的FEGexPRO合約遭受黑客攻擊,黑客獲利約3280 BNB 以及144 ETH,價值約130萬美元。成都鏈安技術團隊對事件進行了分析,結果如下。
事件相關信息
本次攻擊事件包含多筆交易,部分交易信息如下所示:
攻擊交易 (部分)
0x77cf448ceaf8f66e06d1537ef83218725670d3a509583ea0d161533fda56c063 (BNB Chain)
0x1e769a59a5a9dabec0cb7f21a3e346f55ae1972bb18ae5eeacdaa0bc3424abd2 (Ethereum)
攻擊者地址
0x73b359d5da488eb2e97990619976f2f004e9ff7c
攻擊合約
0x9a843bb125a3c03f496cb44653741f2cef82f445
被攻擊合約(部分)
0x818e2013dd7d9bf4547aaabf6b617c1262578bc7 (BNB Chain)
0xf2bda964ec2d2fcb1610c886ed4831bf58f64948 (Ethereum)
攻擊流程
Ethereum和BNB Chain上使用攻擊手法相同,以下分析基於BNB Chain上攻擊:
1. 攻擊者調用攻擊合約(0x9a84...f445)利用閃電貸從DVM合約(0xd534...0dd7)中借貸915.84 WBNB,然後將116.81 WBNB兌換成115.65 fBNB爲後續攻擊做准備。
2. 攻擊者利用攻擊合約創建了10個合約,爲後續攻擊做准備。
3. 攻擊者接下來將兌換得到的fBNB代幣抵押到FEGexPRO合約(0x818e...8bc7)中。
4. 然後攻擊者重復調用depositInternal和swapToSwap函數,讓FEGexPRO合約授權fBNB給之前創建好的其他攻擊合約。
5. 然後利用其他攻擊合約調用transferFrom函數將FEGexPRO合約中fBNB全部轉移到攻擊合約(0x9a84...f445)中。
6. 接下來又在LP交易對合約(0x2aa7...6c14)中借貸31,217,683,882,286.007211154 FEG代幣和423 WBNB。
7. 然後重復3、4、5步驟的攻擊手法,將FEGexPRO合約中大量FEG代幣盜取到攻擊合約中。
8. 然後歸還閃電貸,將獲得的WBNB轉入攻擊合約中完成此筆攻擊。
9. 此後,又利用相同的原理,執行了50余筆相同的攻擊,最獲利約144 ETH和3280 BNB。
漏洞分析
本次攻擊主要利用了FEGexPRO合約中swapToSwap函數中path地址可控且合約中未對path地址進行有效性校驗的漏洞。由於合約中depositInternal函數中更新用戶余額時依賴於合約中當前代幣余額,攻擊者通過傳入一個惡意的path地址,調用swapToSwap函數時合約中代幣余額並未發生變化,導致攻擊者可以反復重置攻擊合約在FEGexPRO合約中記錄的代幣數量,從而讓FEGexPRO合約將自身代幣反復授權給攻擊者所控制的多個惡意合約。
資金追蹤
截止發文時,被盜資金仍在攻擊者地址(0x73b3...ff7c)中並未轉移。
總結
針對本次事件,成都鏈安技術團隊建議:
項目开發時,應該注意與其他合約交互時可能存在的安全風險,盡量避免將關鍵參數設置爲用戶可控。如果業務需求如此,則需要嚴格判斷用戶輸入的參數是否存在風險。此外建議項目上线前選擇專業的安全審計公司進行全面的安全審計,規避安全風險。
標題:卷土重來?黑客獲利約130萬美元 FEGexPRO合約被攻擊事件分析
地址:https://www.coinsdeep.com/article/2713.html
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。