創宇區塊鏈:bDollar 項目遭受攻擊,價格如何能成為一把利器?

BSC 鏈上的bDollar 項目遭受攻擊,黑客通過操縱價格獲利超73萬美元。前言

北京時間2022 年4 月30 日,知道創宇區塊鏈安全實驗室監測到BSC 鏈上的bDollar 項目遭到價格操縱攻擊,導致損失約73 萬美元。

知道創宇區塊鏈安全實驗室第一時間跟踪本次事件並分析。

基礎信息

攻擊者地址:0x9dadbd8c507c6acbf1c555ff270d8d6ea855178e

攻擊合約:0x6877f0d7815b0389396454c58b2118acd0abb79a

tx:0x9b16b1b3bf587db1257c06bebd810b4ae364aab42510d0d2eb560c2565bbe7b4

CommunityFund 合約:0xEca7fC4c554086198dEEbCaff6C90D368dC327e0

漏洞分析

漏洞關鍵在於CommunityFund 合約中的claimAndReinvestFromPancakePool 方法在使用Cake 代幣進行代幣轉換時,會對換取的WBNB 數量進行判斷並且會自動把換取的WBNB 的一半換為BDO 代幣;而之後合約會自動使用合約中的WBNB 為池子添加流動性,若此時BDO 代幣的價值被惡意抬高,這將導致項目方使用更多的WBNB 來為池子添加流動性。

而最為關鍵的是,攻擊者實施攻擊前,在WBNB/BDO、Cake/BDO、BUSD/BDO 池子中換取了大量BDO 代幣導致BDO 價格被抬高。

在我們對攻擊交易進行多次分析之後,發現事情並沒有那麼簡單,該次攻擊極有可能是被搶跑機器人搶跑交易了,依據如下:

1、該筆攻擊交易比BSC 鏈上普通交易Gas 費高很多,BSC 鏈上普通交易默認Gas 費為5Gwei,而該筆交易竟高達2000Gwei。

2、我們發現該攻擊合約與攻擊者地址存在多筆搶跑交;

3、我們在相同區塊內找尋到了真實攻擊者的地址與交易,該交易被回滾了。

攻擊流程

1、攻擊者使用閃電貸貸款670 枚WBNB;

2、之後攻擊者將WBNB 在各個池子中換取大量BDO 代幣;

3、隨後攻擊者再次使用閃電貸貸款30516 枚Cake 代幣;

4、將貸款的Cake 代幣進行swap,換取400WBNB,其中200 枚被協議自動換取為BDO 代幣;

5、攻擊者將WBNB 換取Cake 代幣用於歸還閃電貸;

6、最後,攻擊者將升值後的3,228,234 枚BDO 代幣換取3020 枚WBNB,還款閃電貸671 枚,成功套利2381 枚WBNB 價值約73 萬美元。

總結

本次攻擊事件核心是合約會為流動性池自動補充流動性,而未考慮代幣價格是否失衡的情況,從而導致項目方可能在價格高位對流動性進行補充,出現高價接盤的情況。

建議項目方在編寫項目時多加註意函數的邏輯實現,對可能遇到的多種攻擊情況進行考慮。

在此提醒項目方發布項目後一定要將私鑰嚴密保管,謹防網絡釣魚,另外,近期,各類合約漏洞安全事件頻發,合約審計、風控措施、應急計劃等都有必要切實落實。

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

Total
0
Shares
Related Posts