CertiK:隨意操縱數十「兆」代幣 Elephant Money攻擊事件分析
發表於 2022-04-14 12:29 作者: 區塊鏈情報速遞pro
北京時間2022年4月13日凌晨0點49分,CertiK審計團隊監測到Elephant Money被攻擊,導致27,416.46枚BNB(折合人民幣約7198萬)遭受損失。
下文CertiK安全團隊將從該項目攻擊操作及合約等方面爲大家詳細解讀並分析。請大家注意識別風險,謹慎投資!
攻擊步驟
攻擊者利用了TRUNK代幣的贖回機制,通過操縱價格預言機以贖出更多的代幣,並從一個Treasury合約中竊取了ELEPHANT。該Treasury合約是一個未經驗證的合約。
①攻擊者部署了一個攻擊者合約,並使用閃電貸從多個pair池中借取了WBNB和BUSD。
②大部分被借來的WBNB被換成了ELEPHANT,以提高ELEPHANT的價格。
③隨着ELEPPHANT價格的提高,攻擊者的合約觸發了Elephant Money中一個未經驗證合約(0xd520a3b)的鑄幣方法。
借貸的BUSD被放置到該合約上,以鑄造TRUNK。
部分的BUSD被換成了ELEPHANT。由於ELEPHANT的價格在上一步中被提高了,所以換來的ELEPHANT的數量比預期的要少。
所有的代幣(大約6千萬的BUSD和3兆的ELEPHANT)被發送到Treasury 合約(0xaf0980a)。
④攻擊者合約將ELEPHANT掉包成了WBNB,以降低ELEPHANT的價格。
⑤隨着ELEPHANT價格的降低,攻擊合約觸發了Elephant Money未經驗證的合約(0xd520a3b)的贖回。
在步驟③中鑄造的TRUNK代幣被燒毀。
大約6千萬單位的BUSD和64兆單位的ELEPHANT從Treasury合約中被提取出來,發送到攻擊者合約中。由於攻擊者對價格進行了操縱,提取的ELEPHANT的數量遠遠大於步驟③中存入的ELEPHANT的數量。
⑥攻擊者重復了這個過程,從Treasury合約中盜走了更多的ELEPHANT。⑦隨後攻擊者將盜竊代幣交易賣出,償還了閃電貸,並從攻擊者合約中提取了利潤。
合約漏洞分析
未經驗證的合約(0xd520a3b)使用Uniswap pair池作爲價格預言機,因此預言機可被操縱。
目前總受竊資產約爲7198萬元人民幣。詳情請復制鏈接至瀏覽器查看:https://twitter.com/PeckShieldAlert/status/1514145304253120515
該次事件可通過安全審計發現相關風險。
使用pair池作爲價格預言機導致價格操縱攻擊是一個常見問題,因此安全審計可避免類似的風險。
在此,CertiK的安全專家建議:
盡量避免使用流動性低的池子作爲價格預言機價格來源,同時對項目進行安全審計從而保證預言機模型的正確性
標題:CertiK:隨意操縱數十「兆」代幣 Elephant Money攻擊事件分析
地址:https://www.coinsdeep.com/article/2323.html
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。