成都鏈安:Feminist Metaverse被攻擊事件分析

Feminist Metaverse被攻擊事件分析

2022年5月16日,成都鏈安鏈必應-區塊鏈安全態勢感知平台輿情監測顯示,Feminist Metaverse的FmToken合約遭受黑客攻擊,黑客獲利約1838 WBNB(約54萬美元)。據悉,Feminist Metaverse 是一個基於BSC上的DAO項目,成都鏈安技術團隊第一時間對事件進行了分析,結果如下。

#1 事件相關信息

攻擊交易(此處只列舉出第一筆攻擊交易,本次事件中攻擊者反復進行了多次操作)

0xfdc90e060004dd902204673831dce466dcf7e8519a79ccf76b90cd6c1c8b320d

攻擊者地址

0xaaA1634D669dd8aa275BAD6FdF19c7E3B2f1eF50

攻擊合約

0x0B8d752252694623766DfB161e1944F233Bca10F

被攻擊合約

0x843528746F073638C9e18253ee6078613C0df0f1

#2 攻擊流程

第一步,攻擊者地址直接通過SakeSwapPair合約的skim函數領取中未記入流動性池的FM_Token,可能也是在此時意識到FM_Token合約中的漏洞;

第二步,部署攻擊合約,用於加快提取FM_Token的速度;

第三步,向攻擊合約轉入10 FM_Token,為後續攻擊做準備;

第四步,調用攻擊合約,循環轉出FM_Token到攻擊者地址,觸發將FM_Token合約中FM_Token代幣的轉移到SakeSwapPair的操作,並最後通過skim函數提取到攻擊者地址,細節如下:

(1)多次用創建的攻擊合約0x0B8d…a10F給自己的地址轉賬小額的FM token。

(2)由於FM_Token合約餘額已達到向SakeSwapPair轉賬的標準的15萬token,每一次轉賬會觸發920行增加SakeSwapPair的FM token的balance。 SakeSwapPair因此出現了token balance和reserve之間的差值。

(3)攻擊者隨後調用了SakeSwapPair中的skim()函數,將差值的token balance提取到自己的地址。

第五步,用pancakeswap把FM token換成BNB。

最後,重複第4步和第5步,並將最終獲利的1838個BNB轉入Tornado.Cash

#3 漏洞分析

本次攻擊主要利用了直接給SakeSwapPair增加餘額,但是沒有寫入SakeSwapPair的賬本,攻擊者通過多次轉賬,將FM_Token合約地址持有的幣轉移到SakeSwapPair合約中,在整個過程中SakeSwapPair自身的賬本中並沒有記錄轉入的代幣,導致攻擊者直接通過skim把對應的幣轉移到自己賬戶下,然後再賣出獲利。

#4 資金追踪

截止發文時,截止發文時,被盜資金1838個BNB已經轉入Tornado.cash。

#5 總結

針對本次事件,成都鏈安技術團隊建議:

項目開發時,1 不要直接向Pair合約轉賬;2將非標準代幣接入Pair時,應充分考慮代幣自定義功能可能對Pair合約產生的影響;3 建議項目上線前選擇專業的安全審計公司進行全面的安全審計,規避安全風險。

展開全文打開碳鏈價值APP 查看更多精彩資訊

Total
0
Shares
Related Posts