0x1事件背景
GrimFinance是一個智能收益優化平臺,允許用戶將AMMs發行的LP-Tokens押在GrimVaults中,這些LP-Tokens會自動收獲并將其獎勵重新押在LP-Tokens上,以獲得復合效應,幫助用戶收獲更多的獎勵。
零時科技區塊鏈安全情報平臺監控到消息,北京時間2021年12月19日,GrimFinance官方發推文稱平臺被外部攻擊者利用,攻擊者盜幣價值超過3000萬美元,零時科技安全團隊及時對該安全事件進行復盤分析。
0x2攻擊者信息
零時科技安全團隊通過初步追蹤分析,此次攻擊發生在Fantom鏈,主要攻擊信息如下:
數據:DeFi協議總鎖倉量達2380億美元:金色財經報道,據Defi Llama數據顯示,DeFi協議總鎖倉量(TVL)達到2380億美元,24小時漲幅為0.09%。TVL排名前五分別為Curve(233.9億美元)、Convex Finance(176.5億美元)、MakerDAO(170.1億美元)、AAVE(132.1億美元)、WBTC(114.9億美元)。[2022/1/16 8:52:01]
攻擊者錢包地址https://ftmscan.com/address/0xdefc385d7038f391eb0063c2f7c238cfb55b206c
攻擊者合約地址https://ftmscan.com/address/0xb08ccb39741d746dd1818641900f182448eb5e41#code
三箭資本領投DeFi協議Ardana的1000萬美元融資:金色財經報道,建立在Cardano區塊鏈上的DeFi協議Ardana已籌集了1000萬美元的戰略資金。三箭資本和Ascensive Assets共同領投,cFund、Morningstar Ventures、Mechanism Capital、Kronos Research、FMFW、MGNR、Selini Capital、Skynet Trading和Portico Ventures也參與其中。Ardana聯合創始人兼首席執行官Ryan Matovu表示,這筆資金是通過未來代幣的簡單協議(SAFT)銷售獲得的。Matovu稱,新資金將有助于建立和擴展協議。[2021/10/30 6:20:34]
攻擊交易https://ftmscan.com/tx/0x19315e5b150d0a83e797203bb9c957ec1fa8a6f404f4f761d970cb29a74a5dd6
DeFi 概念板塊今日平均漲幅為5.95%:金色財經行情顯示,DeFi 概念板塊今日平均漲幅為5.95%。47個幣種中46個上漲,1個下跌,其中領漲幣種為:REP(+12.96%)、PEARL(+12.27%)、AMPL(+12.26%)。領跌幣種為:LEND(-1.42%)、WNXM(-0.65%)。[2021/10/2 17:21:01]
GrimBoostVault合約https://ftmscan.com/address/0x660184ce8af80e0b1e5a1172a16168b15f4136bf#code
0x3攻擊分析
以下將拆解攻擊者交易,方便讀者更清晰地了解攻擊過程。
數據:昨日DeFi清算量890萬美元,創本月新高:據Debank數據,6月21日排名前十的DeFi總清算量890萬美元,創6月1日以來新高。其中Aave V2和V1的總清算量476萬美元,占比53.56%。Compound總清算量151萬美元,占比17%。Maker總清算量108萬美元,占比12.18%。Venus總清算量105萬美元,占比11.85%。[2021/6/22 23:55:53]
第一步:攻擊者閃電貸借款30枚BTC和92萬枚WFTM,并通過PancakePair將借款添加流動性獲取0.0476枚SpiritLP。
第二步:將獲取的SpiritLP質押后獲得GB-BTC-FTM。
第三步:通過多次質押存款獲取GB-BTC-FTM。
動態 | DeFi 應用 Instadapp 鎖定資產達 2600 萬美元,無第三方審計引發質疑:去中心化金融應用 Instadapp 智能合約中鎖定資產超過 2600 萬美元,但因一直未接受任何第三方的審計而引發推特用戶質疑。Instadapp 的開發者表示,因為他們使用了 MakerDAO 代理合約的克隆版,因此不需要審計。但推特用戶 Chris Blec 發推質疑稱,“對于一個不懂代碼的終端用戶來說,是否使用了 MakerDAO 代理合約的克隆版,在沒有第三方審計或信譽良好的 Solidity 開發人員的佐證下也無從得知”。針對 Chris Blec 的質疑,Instadapp 方面表示,將在大約 3 周后發布一個完整的審計報告。[2019/8/11]
第四步:將獲取的GB-BTC-FTM歸還,獲得0.0663枚SpiritLP。
第五步:解除流動性獲取41枚BTC和128萬枚WFTM,并歸還閃電貸借款及手續費,隨后將獲利的11枚BTC和36萬枚WFTM轉至攻擊者錢包地址。
攻擊者通過同樣的攻擊手法繼續進行了8次攻擊,如下圖
至此
攻擊者通過9筆攻擊交易共獲取累計獲取26萬枚BTC,1865萬枚,75萬枚DAI,75萬枚USDC,13萬枚BOO,價值約3000萬美元。
下來通過合約代碼了解漏洞發生的原因。
0x4漏洞細節
通過查詢交易詳情可以找出本次攻擊中使用的合約方法主要有兩個:
GrimBoostVault.depositFor方法,用戶質押資金并返回相應的證明代幣。
GrimBoostVault.withdrawAll方法,用戶歸還證明代幣獲取對應的質押資金。
通過交易分析我們可以得知,攻擊者成功的第三步主要是由于多次運轉depositFor方法造成,首先來分析該方法,通讀depositFor方法流程,主要是判斷用戶將資金質押轉入合約后,計算合約余額差值,隨后將差值進行計算后發送給用戶相應的質押證明代幣。乍一看貌似沒有安全問題,但細心的同學會發現,這里的token地址并沒有做固定限制,該token地址是由用戶傳入,由于depositFor方法中會用到token合約地址中的safeTransferFrom方法,token合約地址為用戶可控后,safeTransferFrom方法隨之可控。
現在可明確攻擊者的攻擊路徑,首先創建Token合約,并在合約中的safeTransferFrom方法中寫入重新調用GrimBoostVault.depositFor方法的邏輯,在進行多次重入后最后傳入一筆正常的Token代幣質押,之后雖然會進入到正常流程,但是由于之前的多次重入,導致獲取合約余額的前后差值過大,最終鑄造了大量的證明代幣。
例如:攻擊者進行了6次重入,最后一次傳入資金為100,那么最終得到的差值就是100*6,鑄幣時的計算值也是600。
重入成功后,攻擊者調用withdrawAll方法歸還重入獲取的大量證明代幣獲取對應的質押資金,完成獲利。
目前,GrimFinance官方已暫停所有金庫,并提醒用戶盡快提取自身所有資金,暫未聲明合約修改方案和補償方案。
0x5總結
通過此次攻擊事件來看,攻擊者主要利用GrimBoostVault合約depositFor方法未進行Token地址檢查,通過多次重入造成巨大的合約余額差值,鑄造大量資金,隨后通過withdrawAll方法取走獲利的資金,DeFi項目中類似的攻擊事件居多,為何還會頻頻發生,對于DeFi項目而言,合約代碼的安全,代幣價格的相對穩定,方法傳參的可控性,舊版本的及時更新都是保證項目安全極其重要的部分,任何細節的馬虎都可能導致項目及用戶資金受到損失。對于此類閃電貸攻擊事件,零時科技安全團隊給出以下建議。
0x6安全建議
對于合約代碼安全,可找多家安全審計公司進行審計。對于涉及資金轉賬的方法,應進行嚴格的權限控制。對敏感性較強的代碼,要做到及時更新完善。
Tags:DEFEFIDEFITOKEPhoenix Defi Financepinetworkdefi幣怎么退出熱門了Rio DeFiProfessional Fighters League Fan Token
加密的火越燒越旺,風投機構們開始紛紛“上頭”。 —— 文|Juny??編輯|VickyXiao 來源:硅星人 美國時間周三,全球規模最大、歷史最悠久、戰績最成功的風險投資基金之一的紅杉資本,悄悄.
1900/1/1 0:00:00據《湖北日報》消息,11月21日,2021中國5G+工業互聯網大會區塊鏈專題論壇舉行。當日,武漢市區塊鏈產業研究院揭牌并發布了“漢鏈”生態體系.
1900/1/1 0:00:00來源:NASP網絡實驗室?最近“元宇宙”這個詞非常火熱。信息領域向來擅長制造概念和包裝概念,而且這些概念往往都由商業公司發起,“云計算”、“大數據”、“工業互聯網”、“元宇宙”等概莫例外.
1900/1/1 0:00:00最近更名為Block的Square的加密部門展示了其閃電網絡開發工具包(LDK),旨在推動比特幣網絡的發展.
1900/1/1 0:00:0012月12日,#元宇宙概念游戲遭到大規模網絡攻擊#登上微博熱搜。據新浪科技報道,360公司今日透露,監測到大量黑客利用ApacheLog4j2漏洞攻擊個人用戶,其中MinecraftJava版便.
1900/1/1 0:00:00據Bluewin消息,11月25日,瑞士國家郵政局正式發布“加密郵票”,該藏品由實體部分和數字部分NFT組成,對應的NFT共有13種不同的主題,描繪了瑞士的山峰.
1900/1/1 0:00:00