比特幣行情 比特幣行情
Ctrl+D 比特幣行情
ads
首頁 > 幣贏 > Info

ETH:Rari 被黑事故分析:開心做聚合 無奈被攻擊

Author:

Time:1900/1/1 0:00:00

2021 年 5 月 8 日,據鏈聞消息,以太坊收益聚合協議 Rari Capital 因集成了 Alpha Finance 產生了漏洞,損失近 1500 萬美元。事后,Rari Capital 官方發布了事故分析報告,分析了此次事故的主要原因。慢霧安全團隊在官方分析的基礎上,結合慢霧安全團隊對此次事件的深入分析,進一步解讀本次安全事故的原因。

本次攻擊發生在 Rari Capital 的 RariManger 合約中,整個過程下來就是攻擊者首先通過閃電貸從 dYdX 中借出巨量資金,然后不停的重復調用 RariManger 合約中的 deposit 和 withdraw 函數,完成獲利。如下圖:

Scuderia Ferrari已將Velas從其合作伙伴名單中刪除:金色財經報道,Ferrari已將Velas從合作伙伴名單中刪除加密貨幣贊助商,法拉利于2021年12月宣布Velas成為高級合作伙伴,當時F1車隊似乎熱衷于與加密貨幣公司達成協議。 在過去的12個月里,情況發生了巨大變化,加密貨幣和區塊鏈以相當快的速度失去了它們的價值。?梅賽德斯的官方加密貨幣合作伙伴 FTX于 2022 年底申請破產,這成為了一級方程式加密貨幣贊助商波動性和不安全性的最明顯例子。[2023/1/3 22:21:45]

那么用戶是如何通過 deposit 和 withdraw 這兩個操作獲利的呢?我們需要分析對應的函數:

LooksRare將推出NFT聚合器:11月5日消息,據官方公告表示,LooksRare將推出NFT聚合器,用戶將可在LooksRare上從其他市場購買NFT。目前尚未確定啟動日期。啟動前LooksRare將從11月8日開始與Code4rena舉辦公共安全審計競賽。在之后的評估期,團隊將進行必要的改進,并為最終發布做好準備。[2022/11/5 12:19:36]

以上是 deposit 函數的部分邏輯,首先 deposit 函數本身會調用內部的 _depositTo 函數,然后會再次調用 getFundBalance 函數來獲取合約的余額。getFundBalance 函數最終是會調用到 Rari Controller 合約的 getBalance 函數去獲取余額。最后是通過 Rari Controller 合約中的 AlphaPoolController 庫的 getBalance 函數獲取余額。如下圖:

LooksRare即將通過Discord推出LooksRare通知的測試版本:7月1日消息,LooksRare發推稱,在接下來的幾天里,我們將通過Discord推出LooksRare通知的測試版本,包括:高達5個錢包地址鏈接、自定義通知、銷售通知、報價通知以及上架通知。[2022/7/1 1:43:30]

流程上略微復雜,用圖來展示大概就是下面這樣:

從上面的分析不難發現,Rari 合約最終是用到了 Alpha Finance 項目的 ibETH 合約的 totalETH 函數獲取合約的余額,目的是為了根據 totalETH 和 totalSupply 的比值計算出 Rari 合約真正的 ETH 余額。deposit 函數是根據用戶的充值 ETH 的數量和比值計算要發放給用戶的 REPT 數量,而 withdraw 函數的公式也大同小異,同樣需要通過 getBalance 函數獲取合約的 ETH 余額并計算比值,然后根據用戶的 REPT 代幣的余額和比值計算需要返還給用戶的 ETH 的數量。但是問題恰恰出在這個獲取 ETH 余額的公式上。

意大利服裝品牌Diesel將在Rarible推出NFT:金色財經報道,據最新消息,意大利服裝品牌Diesel將于3月12日在Rarible市場推出其名為“D:VERSE”的NFT項目,該系列基于該品牌2022年秋冬系列的展示品。(CoinDesk)[2022/3/11 13:50:02]

根據官方描述,從 ibETH 合約獲取的 totalETH 函數獲取的值是可以被用戶操控的。以下是官方原文:

根據官方的描述,用戶可通過 ibETH 合約的 work 函數操控 totalETH 函數返回的值,導致 Rari 整個價值計算公式崩潰。我們分別分析 ibETH 的 work 函數和 totalETH 函數:

美國職業足球大聯盟與收藏品平臺Sorare簽署協議:美國職業足球大聯盟(MLS)的授權公司OneTeam Partners今日宣布,他們已經與支持區塊鏈的收藏品平臺Sorare簽署了授權協議。該協議將使700多名MLS球員進入Sorare的平臺,Sorare將在以太坊區塊鏈上生成獨特的數字交易卡,這些數字交易卡代表球員,可以由用戶進行交易。(Coindesk)[2020/6/30]

totalETH 函數:

work 函數:

以上分別是 ibETH 合約中的 totalETH 函數和 work 函數的部分實現。不難發現 totalETH 函數其實就是獲取合約的總的 ETH 的數量。而 work 函數,本身是一個 payable 函數,也就是說,用戶是可以通過 work 函數來控制 ibETH 合約中的 ETH 數量從而來改變 totalETH 返回的值的。更糟糕的是,work 函數同時還支持調用其他的任意合約。那么整個思路就很清晰了。

1、從 dYdX 中進行閃電貸,借出大量的 ETH;

2、使用一部分的 ETH 充值到 Rari Capital 合約中,此時從 ibETH 獲取的比值還是正常的;

3、使用剩余的 ETH 充值到 ibETH 合約中,調用 ibETH 合約的 work 函數,為后續推高 ibETH 合約的 totalETH 的返回值做準備;

4、在 work 函數中同時對 Rari Capital 合約發起提現,由于上一步已經推高 totalETH 值,但是計算的 totalETH()/totalSupply() 的值相對于充值時被拉高,從而使攻擊者能從 Rari Capital 中使用等量的 REPT 獲取到更多的 ETH。

本次分析下來,主要的原因是協議的不兼容問題,攻擊者通過閃電貸和重入的方式,攻擊了 Rari Capital,造成了巨大的損失。慢霧安全團隊建議在 DeFi 逐漸趨于復雜的情況下,各 DeFi 項目在進行協議間交互時,需要做好協議之間的兼容性,避免因協議兼容問題導致的損失。

[參考鏈接]

Rari Capital 官方分析:

https://medium.com/rari-capital/5-8-2021-rari-ethereum-pool-post-mortem-60aab6a6f8f9

攻擊交易(其中一筆):

https://etherscan.io/tx/0x171072422efb5cd461546bfe986017d9b5aa427ff1c07ebe8acc064b13a7b7be

By:yudan@慢霧安全團隊

Tags:ETHTALRARIARIEtherael指什么寓意Pitquidity CapitalRARI價格ARIA20幣

幣贏
NFT:從CeFi角度解析 為什么NFT能解決DeFi超額抵押困局

加密評級機構韋氏評級曾發推稱,“所有DeFi貸款仍然是超額抵押,這意味著你需要抵押的資產比借入的更多。對于大多數用戶來說,這是一個交易殺手,也是我們沒有看到太多DeFi用例的原因之一.

1900/1/1 0:00:00
POL:Gavin正式將平行鏈功能添加到Kusama網絡

波卡 15 小時前,Gavin 正式將平行鏈模塊部署到了 Westend 和 Kusama runtimes 中!這意味著 Parity 已經把平行鏈的功能加到了 Kusama 網絡.

1900/1/1 0:00:00
區塊鏈:自由與絕望 比特幣因不同的原因吸引了不同的人

原標題:惡性通貨膨脹和比特幣的關系在戰后危機或國家經濟長期衰退可能導致的動蕩時期,人們往往不得不求助于成為救命稻草的價值儲存:貴金屬、貨幣以及21世紀的加密貨幣,如比特幣或以太坊.

1900/1/1 0:00:00
以太坊:以太坊價格突破3500美元再創新高 多個大戶集中拋售或套現逾40億美元

5月6日早間,全球第二大加密數字幣以太坊(ETH)價格突破3500美元,再創歷史新高。數日前,在突破3000美元關口后,以太坊價格屢刷新高.

1900/1/1 0:00:00
USD:金色數讀 | DeFi一周數據速覽(4.19-4.26)

DeFi一周數據速覽(4.19-4.26)金色財經報道,據歐科云鏈OKLink數據顯示,本周漲幅前三的幣種為:Unit Protocol 7日漲幅150.5%.

1900/1/1 0:00:00
MAKE:MakerDAO走向去中心化治理

或許是時候和Maker基金會提前說聲“再見”了。北京時間 5 月 3 日?21:23:36,以太坊區塊高度 12361485,Maker 基金會將 84000 枚 MKR 轉向了?MakerDA.

1900/1/1 0:00:00
ads