2021年5月8日,據鏈聞消息,以太坊收益聚合協議RariCapital因集成了AlphaFinance產生了漏洞,損失近1500萬美元。事后,RariCapital官方發布了事故分析報告,分析了此次事故的主要原因。慢霧安全團隊在官方分析的基礎上,結合慢霧安全團隊對此次事件的深入分析,進一步解讀本次安全事故的原因。
攻擊細節分析
本次攻擊發生在RariCapital的RariManger合約中,整個過程下來就是攻擊者首先通過閃電貸從dYdX中借出巨量資金,然后不停的重復調用RariManger合約中的deposit和withdraw函數,完成獲利。如下圖:
Rarible的定制NFT市場即將上線Polygon:金色財經報道,NFT市場Rarible為NFT收藏創作者推出了新的服務,允許他們免費制作自己的定制市場。此舉是為了應對Polygon對NFT和游戲項目日益增長的興趣,特別是在Reddit的Collectible Avatars在該網絡上取得成功之后。[2023/1/19 11:19:58]
那么用戶是如何通過deposit和withdraw這兩個操作獲利的呢?我們需要分析對應的函數:
NFT市場Rarible集成Tezos,雙方將共同推出NFT收藏品:12月15日消息,NFT市場Rarible宣布與Tezos實現集成,這也是Rarible繼以太坊和Flow之后支持的第三個區塊鏈。
Rarible與Tezos的集成標志著根據戰略合作,Rarible將在其市場上展示TezosNFT,并支持Tezos生態系統中項目的二次銷售。Rarible和Tezos還將推出一個名為“BlazingFutures”的NFT收藏品系列,展示10位Tezos藝術家的作品。該系列從今天開始在Rarible獨家發售。(Coindesk)[2021/12/15 7:42:02]
軟銀領投的NFT夢幻足球游戲Sorare交易總額突破1億美元:金色財經報道,據最新數據顯示,NFT夢幻足球游戲Sorare交易總額已突破1億美元,創下歷史新高,本文撰寫時為100,063,080美元,交易總量為552,108筆。今年九月底,Sorare以43億美元的估值完成6.8億美元B輪融資,領投方為日本投資巨頭軟銀集團,參投方包括Atomico、D1Capital、BessemerVentures、Eurazeo、IVP、Hillhouse、Liontree、Accel、Benchmark、Headline、以及包括Gerard Piqué、Antoine Griezmann、Rio Ferdinand和César Azpilicueta在內的多名球星。[2021/10/12 20:21:58]
以上是deposit函數的部分邏輯,首先deposit函數本身會調用內部的_depositTo函數,然后會再次調用getFundBalance函數來獲取合約的余額。getFundBalance函數最終是會調用到RariController合約的getBalance函數去獲取余額。最后是通過RariController合約中的AlphaPoolController庫的getBalance函數獲取余額。如下圖:
BiKi平臺RARE連續5日上漲 累計漲幅628.02%:據BiKi行情數據顯示,截止今日20:35( GMT+8),平臺內幣種RARE連續5日上漲,累計漲幅628.02%,現價5.11USDT。行情波動較大,請注意風險控制。[2021/2/16 17:22:22]
流程上略微復雜,用圖來展示大概就是下面這樣:
從上面的分析不難發現,Rari合約最終是用到了AlphaFinance項目的ibETH合約的totalETH函數獲取合約的余額,目的是為了根據totalETH和totalSupply的比值計算出Rari合約真正的ETH余額。deposit函數是根據用戶的充值ETH的數量和比值計算要發放給用戶的REPT數量,而withdraw函數的公式也大同小異,同樣需要通過getBalance函數獲取合約的ETH余額并計算比值,然后根據用戶的REPT代幣的余額和比值計算需要返還給用戶的ETH的數量。但是問題恰恰出在這個獲取ETH余額的公式上。
BiKi平臺RARE連續3日上漲 累計漲幅137.56%:據BiKi行情數據顯示,截止今日19:15( GMT+8),平臺內幣種RARE連續3日上漲,累計漲幅137.56%,現價0.3744USDT。行情波動較大,請注意風險控制。[2021/1/28 14:15:03]
根據官方描述,從ibETH合約獲取的totalETH函數獲取的值是可以被用戶操控的。以下是官方原文:
根據官方的描述,用戶可通過ibETH合約的work函數操控totalETH函數返回的值,導致Rari整個價值計算公式崩潰。我們分別分析ibETH的work函數和totalETH函數:
totalETH函數:
work函數:
以上分別是ibETH合約中的totalETH函數和work函數的部分實現。不難發現totalETH函數其實就是獲取合約的總的ETH的數量。而work函數,本身是一個payable函數,也就是說,用戶是可以通過work函數來控制ibETH合約中的ETH數量從而來改變totalETH返回的值的。更糟糕的是,work函數同時還支持調用其他的任意合約。那么整個思路就很清晰了。
攻擊流程
1、從dYdX中進行閃電貸,借出大量的ETH;
2、使用一部分的ETH充值到RariCapital合約中,此時從ibETH獲取的比值還是正常的;
3、使用剩余的ETH充值到ibETH合約中,調用ibETH合約的work函數,為后續推高ibETH合約的totalETH的返回值做準備;
4、在work函數中同時對RariCapital合約發起提現,由于上一步已經推高totalETH值,但是計算的totalETH()/totalSupply()的值相對于充值時被拉高,從而使攻擊者能從RariCapital中使用等量的REPT獲取到更多的ETH。
總結
本次分析下來,主要的原因是協議的不兼容問題,攻擊者通過閃電貸和重入的方式,攻擊了RariCapital,造成了巨大的損失。慢霧安全團隊建議在DeFi逐漸趨于復雜的情況下,各DeFi項目在進行協議間交互時,需要做好協議之間的兼容性,避免因協議兼容問題導致的損失。
RariCapital官方分析:
https://medium.com/rari-capital/5-8-2021-rari-ethereum-pool-post-mortem-60aab6a6f8f9
攻擊交易(其中一筆):
https://etherscan.io/tx/0x171072422efb5cd461546bfe986017d9b5aa427ff1c07ebe8acc064b13a7b7be
By:yudan@慢霧安全團隊
加拿大比特幣礦商Bitfarms已獲批在納斯達克全球市場上市,股票代碼為BITF。 納斯達克股票市場目前分為三個層次,每個層次具有不同的資本和財務要求.
1900/1/1 0:00:00Facebook聯合創始人馬克·扎克伯格(MarkZuckerberg)在社交媒體上宣布,其已將他的兩只寵物山羊命名為“比特幣”和“Max”,這一消息在加密社區引起了興奮.
1900/1/1 0:00:00要點: 去中心化推薦網絡初創公司Attrace籌集了250萬美元,Deribit創始人領投。Attrace首席執行官ErwinWerring表示,該網絡旨在成為“代幣經濟中區塊鏈代幣化資產的推薦.
1900/1/1 0:00:00什么是Altseason?Altseason是指山寨幣爆發期。有人認為這只是「普通的數字貨幣牛市」,但在我看來,這是山寨幣泡沫末期的一種特殊現象,此時可以在最短的時間內獲得最大收益,市場達到瘋狂.
1900/1/1 0:00:00律動BlockBeats消息,5月11日,FTX創始人SBF接受了彭博社直播采訪,就加密貨幣與傳統金融的區別與金融時代變化發表了自己的見解.
1900/1/1 0:00:00不僅“形式”為“內容”增添價值,藝術的邊界也在外延。如果你還不知道NFT,那你可能已經被藝術風向標甩在身后了.
1900/1/1 0:00:00