前言
2022年1月18日,知道創宇區塊鏈安全實驗室?監測到BSC上Crosswise遭遇攻擊,此次攻擊導致協議損失87.9萬美元。
攻擊者僅用1個CRSStoken便獲取CrosswiseMasterChef池中價值87.9萬美元的692K個CRSS。實驗室將對本次事件深入跟蹤并進行分析。
基礎信息
攻擊交易哈希:
0xd02e444d0ef7ff063e3c2cecceba67eae832acf3f9cf817733af9139145f479b
攻擊者地址:
0x748346113B6d61870Aa0961C6D3FB38742fc5089
匿名巨鯨在市場下跌期間購入488枚BTC后,持幣量超越MicroStrategy:1月25日消息,一個匿名比特幣巨鯨在加密市場下跌時,在3.6萬美元區間分兩筆交易購入了488枚 BTC,目前該巨鯨錢包內共持有124,487枚 BTC,比MicroStrategy的比特幣持有量多出約100枚 BTC。
通過分析該匿名巨鯨活動發現,該巨鯨在 BTC 市場高點下跌后就一直在持續買入,歷史數據顯示該巨鯨平均 BTC 購入金額為2.2萬美元。(U.today)[2022/1/25 9:12:27]
攻擊合約:
0x530B338261F8686e49403D1b5264E7a1E169F06b
MasterChef:
MicroStrategy已通過可轉換債券籌集10.5億美元用于比特幣:2月19日消息,商業情報公司MicroStrategy今日已通過出售可轉換債券籌集到了10.5億美元的巨額資金用于比特幣。本次發行中出售的票據本金總額為10.5億美元,其中包括根據購買期權發行的票據本金總額1.5億美元。MicroStrategy估計,扣除最初購買者的折扣和傭金以及MicroStrategy預計應付的發行費用后,出售債券的凈收益將約為10.3億美元,該公司打算用凈收益來收購更多的比特幣。(UToday)[2021/2/20 17:31:44]
0x70873211CB64c1D4EC027Ea63A399A7d07c4085B
CrosswiseRouter:
MicroStrategy CEO在最新活動中向超過6900家企業介紹比特幣:據Crypto Potato報道,MicroStrategy首席執行官Michael Saylor在推特上表示,公司近期舉辦的“MicroStrategy World 2021”活動非常成功,共有超過2.2萬人注冊。在這次活動中,他討論了幾個與比特幣相關的話題,包括法律和金融角度以及公司戰略。他聲稱,其中來自6917家不同企業的超過8000人(8197人)專門參加了“企業比特幣(Bitcoin for Corporations)”項目。這些數字只反映了那些參加直播的人,但Saylor希望他的信息能傳達給所有人。為此,他向任何感興趣的人開放了比特幣講座的訪問權限,MicroStrategy的比特幣戰略方法也可以供查看和分析。[2021/2/7 19:07:28]
0x8B6e0Aa1E9363765Ea106fa42Fc665C691443b63
MicroStrategy首席執行官:正探索比特幣數據和分析產品:金色財經報道,MicroStrategy首席執行官Michael Saylor表示,MicroStrategy正在組建一個團隊來探索比特幣的數據和分析產品。[2020/11/21 21:32:47]
CRSS:
0x99FEFBC5cA74cc740395D65D384EDD52Cb3088Bb
攻擊核心
此次攻擊的核心在于,Crosswise中的MasterChef合約Owner地址設置即transferOwnership函數能夠被攻擊者繞過,使得攻擊者能夠成為新的Owner并對MasterChef池子進行攻擊利用。我們將本次攻擊過程分為兩個階段進行分析:獲取Owner權限攻擊和MasterChef池攻擊。
獲取Owner權限攻擊
1.由于在MasterChef合約中setTrustedForwarder?函數為公開可見性且未作權限設置,攻擊者先將自己的地址設置為TrustedForwarde地址。
2.Crosswisefi項目方對MasterChef的_msgSender()函數并未采取openzepplin的標準寫法且存在漏洞,導致攻擊者能夠通過構造惡意的calldata實現繞過onlyOwner限制完成合約Owner的獲取。
下圖為攻擊者繞過onlyOwner權限構造的惡意payload:
MasterChef池攻擊
1.攻擊者在CrosswiseRouter中用0.01個WBNB兌換出3.71個CRSS
2.攻擊者調用deposit將1個CRSS質押到CrosswiseMasterChef
3.由于上一階段攻擊者已經獲取到MasterChef的Owner權限,此時攻擊者調用set函數對MasterChef的pid為0的池子重新部署了一個未開源的策略合約:0xccddce9f0e241a5ea0e76465c59e9f0c41727003
4.攻擊者調用MasterChef的withdraw函數從池子中獲取692K的CRSS
5.最后攻擊者把692K的CRSS通過CrosswiseRouter合約swap兌換出547個BNB完成攻擊,獲利超87.9萬美元。
策略合約
猜想
由于攻擊者部署的策略合約并未開源,我們只能反向推導猜想策略合約的主要邏輯:
1.根據下圖第18行代碼可以推斷出合約中lockedAmount應該是一個極大值才能支撐攻擊者692k的代幣轉出;又根據第7-11行可以推導出攻擊者部署的strategy合約的LockeTotal()函數返回值極大、sharesTotal()返回值極小。
2.在上圖代碼23行當_amount>0時,會先計算出user的shareRemoved,然后在執行user.amount=user.amount.sub(shareRemoved);,此時若shareRemoved大于user.amount則代碼執行不會通過,可以推導出26行的shareRemoved值很小,又shareRemoved是調用攻擊者部署strategy合約中withdraw獲取,所以此時的strategy合約中withdraw的返回值會很小,小于之前質押的1個CRSS數量;再結合鏈上數據可推導攻擊者部署strategy合約中的withdraw調用返回值為0。
反編譯
為了證實我們的猜想是否正確,我們將攻擊者部署的策略合約進行反編譯。
反編譯后我們可以發現存在一個極大值和一個較小值的常量,即對應猜想1中LockeTotal和sharesTotal值,猜想1正確。
對于猜想2,經過反編譯后我們可以看到策略合約的withdraw最后的返回值為0,猜想2正確
總結
這次攻擊產生的主要原因是項目方使用錯誤的方法去獲取msgSender,導致合約的Owner權限更改能被繞過。知道創宇區塊鏈安全實驗室?在此提醒,任何有關合約權限問題的操作都需要慎重考慮,合約審計、風控措施、應急計劃等都有必要切實落實。
Tags:CROCROSROSRATCROPAcross ProtocolROSN幣Sewer Rat Social Club CHIZ Token
2月15日,Sushi核心開發者LufyCZ在Sushi官方社區宣布推出NFT項目Sushimi。這也是Sushi繼去年11月份推出NFT市場平臺shoyo之后,再次在NFT領域的新動作.
1900/1/1 0:00:00尊敬的用戶:?????????BKEXGlobal即將上線KLO,詳情如下:上線交易對:KLO/USDT??幣種類型:AVAX-C充值功能開放時間:已開放交易功能開放時間:2022年2月23日1.
1900/1/1 0:00:00原文作者:JamesonLopp原文翻譯:Blockunicorn回顧2022年非會議上涵蓋的選定主題.
1900/1/1 0:00:00親愛的BitMart用戶:BitMart將于2022年2月28日上線代幣SpheriumFinance(SPHRI)。屆時將開通SPHRI/USDT交易對.
1900/1/1 0:00:00親愛的BitGlobal用戶:BitGlobal將在GEM上線XELS數位資產服務,?詳情如下充提安排:2月23日14:00(UTC8)開放?立即充值>>交易時間:2月25日16:0.
1900/1/1 0:00:00尊敬的用戶:由於ADA錢包維護,Hotcoin將於(GMT8)2022年2月22日10:00暫停ADA的充值、提現業務,交易不受影響.
1900/1/1 0:00:00