以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > USDC > Info

Yearn Finance攻擊事件分析-ODAILY_USD

Author:

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

概述

2023年4月13日,YearnFinance遭到黑客攻擊,導致大約損失1000萬美元。本文將分析攻擊過程以及漏洞產生的原因。

攻擊分析

這是一筆攻擊交易:

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

攻擊者從Balancer發起了閃電貸,借了500萬DAI、500萬USDC和200萬USDT:

然后在Curve上,攻擊者將500萬DAI兌換成了695,000USDT,并將350萬USDC兌換成151USDT:

攻擊者調用IEarnAPRWithPool的recommend函數來檢查當前的APR。此時,只有Aave的APR不等于0:

Yearn將通過Gnosis拍賣回購30萬USDC的YFI:yearn.finance宣布將進行一場Gnosis拍賣,從市場上回購額外的YFI。yearn.finance將以4.5萬美元/枚以下的價格回購價值30萬USDC的YFI。[2021/4/15 20:21:33]

接下來,攻擊者將800,000USDT轉移到了攻擊合約0x9fcc1409b56cf235d9cdbbb86b6ad5089fa0eb0f中。在該合約中,攻擊者多次調用了Aave:LendingPoolV1的repay函數,幫助其他人償還債務,以使Aave的APR等于0:

攻擊者調用了yUSDT的deposit函數,抵押了900,000USDT,并獲得了820,000yUSDT:

接下來,攻擊者調用了bZxiUSDC的mint函數,使用156,000USDC鑄造了152,000bZxiUSDC,并將其轉移到了YearnyUSDT:

Yearn核心開發者:YFI鑄幣提案幾乎準備就緒:1月20日,Yearn.finance(YFI)核心開發者banteg發推稱,鑄幣提案幾乎準備就緒,在幾天之內看到它從一個有爭議的想法變成一個明確的和充實的計劃,這是驚人的。banteg此前曾貼出Yearn v2白皮書截圖,表示YFI供應量或將增至3.3333萬枚。此外,Yearn治理論壇討論鑄造和分配1000枚YFI給核心開發者和貢獻者。[2021/1/20 16:35:01]

攻擊者調用Yearn:yUSDT的withdraw函數,將820,000yUSDT兌換成1,030,000USDT。此時,合約中只剩下攻擊者轉移的bZxiUSDC:

接下來攻擊者調用Yearn:yUSDT的rebalance函數,銷毀bZxiUSDC:

然后攻擊者向yUSDT合約轉移了1/e6個USDT,并調用了deposit函數,抵押了10,000USDT,獲得了1,252,660,242,850,000yUSDT:

開發者推出針對“yearn recycle”合約的前端yearn Recycler:開發者x48在GitHub上公布了針對“yearn recycle”合約創建的前端yearn Recycler,可一次性將DAI、USDC、USDT、TUSD、yCRV存入yVault。GitHub信息顯示,Recycler支持用戶通過一筆交易就可以把穩定幣存入yearn yCrv vault。這是Curve開發者Banteg創建的“yearn-recycle”合約的UI。[2020/8/30]

然后在Curve上,攻擊者將70,000yUSDT兌換成5,990,000yDAI,將4億yUSDT兌換成4,490,000yUSDC,將1,240,133,244,352,200yUSDT兌換成1,360,000yTUSD:

然后在yearn:yDAI和yearn:yUSDC中分別調用withdraw,提取678萬個DAI和562w萬個USDC,并歸還閃電貸:

yearn創始人AndreCronje宣布推出去中心化保險服務yinsure.finance:yearn創始人AndreCronje宣布推出去中心化的保險類服務原型yinsure.finance,將于接下來的幾周里系統性地發布產品。該產品將包含三個核心部分:承保金庫(InsurerVaults)、投保金庫(InsuredVaults)和索賠治理(ClaimGovernance)。承保金庫的保險服務是由流動性提供方(LP)提供的,但是可以獲得相關的費用作為收入。首個上線的承保金庫是USDC,首個提供的投保金庫是yVault中的yUSD(包裹的yCRV)資產。[2020/8/17]

漏洞分析

這次攻擊中最關鍵的一點,是攻擊者使用100,000USDT鑄造了1,252,660,242,850,000個yUSDT。查看deposit函數的實現:

可以看到share的數量和變量pool相關,pool越小,share越大,而pool的值由_calcPoolValueInToken獲得:

yearn.finance:50%系統獎勵已分配給治理,即將投票決定是否分配為運營費用:DeFi聚合收益協議yearn.finance發推稱,50%的系統獎勵已分配給治理。是否將系統獎勵分配為運營費用有待表決。投票將在本周進行。[2020/8/10]

攻擊者在調用rebalance函數后,合約中只存在了USDC,但是_balance()獲取的是USDT的余額,USDC的余額并不計入其中,因此此時的pool為1:

這里顯然是項目方的配置錯誤,yUSDT合約中應當都是USDT類的代幣,但是其fulcrum變量卻是USDC相關的bZxIUSDC代幣,因此yUSDT中的USDC不計入balance中:

攻擊者為什么能調用rebalance函數來burn掉bZxiUSDC代幣呢?查看rebalance函數的實現:

可以看到在_withdrawFulcrum()中會存在redeem和burn操作,因此我們需要讓"newProvider!=provider"成立,其中recommend()的實現:

攻擊者通過控制IIEarnManager(apr).recommend(token)的返回值,使其為都為0來操控newProvider:

如何讓其都為0呢,該函數的返回值和計算出的各個DeFi中的APR相關,由于Compound,bZx,dydx中沒有池子,因此只需要控制Aave(Aave:LendingPoolCoreV1)即可:

要使其值返回為0,需要讓apr.calculateInterestRates函數的第一個返回值為0:

即讓currentLiquidityRate為0,該值和_totalBorrowsStable、_totalBorrowsVariable相關,當這兩個個值都為0時,currentLiquidityRate為0:

_totalBorrowsVariable為0,即Aave:LendingPoolCoreV1此時沒有人存在債務,為了達成這個條件,攻擊者將池中所有人的債務進行了repay:

最后,攻擊者讓_totalBorrowsVariable變為0,所以它能夠調用rebalance函數burn掉bZxiUSDC代幣:

總結

此次Yearn攻擊事件的根本原因是項目方的配置錯誤。攻擊者通過一系列精妙的手法利用了該漏洞,最終獲利大約1000萬美元。

關于我們

AtEoceneResearch,weprovidetheinsightsofintentionsandsecuritybehindeverythingyouknowordon'tknowofblockchain,andempowereveryindividualandorganizationtoanswercomplexquestionswehadn'tevendreamedofbackthen.

了解更多:Website|Medium|Twitter

Tags:USDSDTEARNUSDTbusd幣歷史最高價SDTK價格Yearn Shark Finance泰達幣usdt有哪幾種類型

USDC
Tether項目周報(0320-0326)-ODAILY_THE

Bit2Me現已上架EUR?和XAU?Tether宣布EUR?和XAU?現在可以在加密貨幣交易所和金融平臺Bit2Me上使用.

1900/1/1 0:00:00
每周編輯精選 Weekly Editors'' Picks(0506-0512)-ODAILY_MEV

「每周編輯精選」是Odaily星球日報的一檔“功能性”欄目。星球日報在每周覆蓋大量即時資訊的基礎上,也會發布許多優質的深度分析內容,但它們也許會藏在信息流和熱點新聞中,與你擦肩而過.

1900/1/1 0:00:00
揭開華爾街最大投資銀行擁抱加密貨幣交易路徑、藍圖和潛在風險_比特幣

編者按:本文來自鏈聞chainnews,星球日報經授權轉載。盡管比特幣和其他加密貨幣在過去幾個月賺足了眼球,但在華爾街投行大佬的眼中,這類資產依然像是個上竄下跳的毛頭小子,雖然活力十足,但常被丑.

1900/1/1 0:00:00
波場TRON 3月月報-ODAILY_RON

波場TRON月報新鮮出爐,一起來看看3月波場TRON都有哪些亮眼表現吧。 一、核心數據 1、新增賬戶數:5,328,4652、TVL最高值:$12,199,014,407數據:波場TRON上周活.

1900/1/1 0:00:00
12個例子告訴你如何利用“無聊猿”IP賺錢-ODAILY_BAY

Odaily星球日報譯者|Moni 在短短一年多時間里,“無聊猿”BoredApeYachtClub(BAYC)已然成為所有NFT系列中最大的品牌之一.

1900/1/1 0:00:00
Web3.0代幣經濟學:近8億美元資產蒸發,給我們帶來怎樣的啟示?-ODAILY_KEN

自Web3.0興起以來,不知道大家有沒有聽說過tokenomics這個加密專有術語?Tokenomics指的是token與持有者及其各自生態系統的創建、管理和交互.

1900/1/1 0:00:00
ads