By:慢霧安全團隊
背景
2020年12月18日,據慢霧區情報DeFi項目WarpFinance遭受閃電貸攻擊。以下是慢霧安全團隊對整個攻擊流程的詳細分析。
攻擊過程分析
(分析過程較多,快速了解攻擊思路可以直接查看下方完整攻擊流程部分)
1、通過攻擊交易可以看出攻擊者通過Uniswap和dydx閃電貸借出了約290萬DAI和34
通過以上代碼第11行我們可以看到合約通過collateralizedLP記錄了攻擊者抵押的LPToken的數量。
4、之后攻擊者的操作是本次攻擊最關鍵的一步:攻擊者通過Uniswap的WETH-DAI交易對將大約34萬的WETH兌換成約4762萬DAI,此時WETH-DAI池子中約剩下有43
2)從上方代碼第3、4行,我們可以發現WarpControl合約是通過getBorrowLimit函數來獲得用戶可以借出穩定的數量,接下來我們具體看getBorrowLimit函數:
*
functiongetBorrowLimit(address_account)publicreturns(uint256){uint256availibleCollateralValue=getTotalAvailableCollateralValue(_account);returncalcBorrowLimit(availibleCollateralValue);}
咨詢行業巨頭Gartner發布元宇宙技術短期采用的6大趨勢:9月13日消息,咨詢行業巨頭Gartner副總裁Marty Resnick在澳大利亞Gartner IT Symposium/Xpo大會上發布了元宇宙技術短期采用的6大趨勢,并稱Gartner將元宇宙定義為“虛擬世界和實體世界的下一級交互”,這6大趨勢分別是:游戲、數字人、虛擬空間、共享體驗、代幣化資產和空間計算。[2022/9/13 13:26:39]
3)通過分析我們可以發現getBorrowLimit函數先通過getTotalAvailableCollateralValue函數計算出availibleCollateralValue,再將計算結果作為參數傳入calcBorrowLimit函數中,最后返回具體的數量。我們先分析getTotalAvailableCollateralValue函數:
functiongetTotalAvailableCollateralValue(address_account)publicreturns(uint256){//getthenumberofLPvaultstheplatformhasuint256numVaults=lpVaults
WEF區塊鏈負責人:區塊鏈大規模采用取決于彌合數字鴻溝:世界經濟論壇(WEF)區塊鏈和數據政策負責人Sheila Warren表示,那些拒絕或被排除在傳統金融體系之外的人最有可能推動大規模采用。Warren在7月8日的Unitize大會上就如何實現大規模采用發表講話,她表示,彌合數字鴻溝是使區塊鏈成為主流的關鍵。(Cointelegraph)[2020/7/9]
//returntotalUSDCvalueofallcollateralreturntotalCollateral
4)對getTotalAvailableCollateralValue函數進行具體的分析我們可以看到此函數通過for循環來獲得DAI、USDT、USDC的可借數量總和。我們可以發現在for循環的邏輯中通過Oracle
通過以上代碼我們可以知道LP價格是如何得出的,以WETH-DAI池為例:其通過池子中WETH的數量乘WETH的價格加上池子中DAI的數量乘DAI的價格最后除以池子總的LPToken數量即可得到單個LPToken的價格。具體計算算式如下所示:
通過以上分析我們可以知道WETH的價格和DAI的價格獲取是正常的,無法被惡意操縱,因此我們可以大膽猜測:攻擊者通過將巨量的WETH打入WETH-DAI池子中換取DAI,這時候池子中WETH的數量將大大的增加,而由于滑點的存在,這種巨量兌換操作必然是會虧損一大部分WETH的。所以我們再看上面LP單價的計算方式,由于WETH數量的大大增加,在巨量兌換后池子中WETH數量*WETH價格池子中DAI數量*DAI價格將遠大于巨量兌換前的,也就是池子的總價值大大增加了。所以LP的單價也隨之提高了,因此攻擊者就可以通過其抵押的LPToken借出更多的穩定幣了。
聲音 | 甲骨文區塊鏈高管:區塊鏈與其他技術結合是其采用的真正關鍵:據CryptoBriefing消息,甲骨文區塊鏈和物聯網高級總監Anant Kadiayala認為,在區塊鏈技術與智能手機一樣無處不在之前,仍然存在許多障礙,其中一個障礙是缺乏補充技術,這也需要公司在區塊鏈技術實現其全部潛力之前進行開發。“所有的技術,每一項都自己參與進來,并達到一定的成熟程度。當它們聯系在一起時,從那時起都有一定程度的回響。”DLT需要成熟的物聯網和機器學習技術才能實現其全部潛力,尤其是在供應鏈領域。“IOT和機器學習緊密交織在一起,”他解釋,“當這些設備感知和傳輸數據時,真正有意義的是機器學習算法,它讓我們能夠洞察我們將如何處理它。”這三種技術可以為零售業和航運業提供完美的組合,讓每個參與者(從發送者和接收者到保險公司和接收者)都能訪問所有相關數據,并在數據可用時立即采取行動。“那么一加一不再是二,它是五或六,所以累積效應或產生更大的價值。[2019/5/18]
分析思路驗證
我們可以借助Ethtx.info來驗證我們的猜測是否正確:
https://ethtx.info/mainnet/0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090
聲音 | 芝加哥市長:采用加密貨幣可能是不可避免的:據福布斯報道,芝加哥市長Rahm Emanuel 3月18日在FinTech會議上發表講話時稱,采用加密貨幣可能是不可避免的。Emanuel認為,在十年后或五年后,有人需要找到如何在面臨金融危機時使用加密貨幣存活下來的方法,然后你就會發現這一刻已經到來了。他認為在未來的某個時刻,將會出現另一種貨幣處理債務市場的方式。[2019/3/21]
1、通過上文中第4點分析我們可以知道:攻擊者通過Uniswap的WETH-DAI交易對將大約34萬的WETH兌換成約4762萬DAI,此時WETH-DAI池子中約剩下有43.6萬枚WETH和1328.8萬枚DAI,而在此之前池子里約有9.5萬枚WETH和6091萬枚DAI。
2、我們可以在Ethtx.info發現在兌換前WETH-DAI池子的LPToken單價為58815427。
巨量兌換后WETH-DAI池子的LPToken單價為135470392。
我們可以看到由于WETH數量的增加造成兌換后池子的總價值幾乎翻倍了,因此單個LPToken在Warp中可借出的穩定幣就更多了。
3、接下里如我們猜測的那樣攻擊者在拉高LPToken的價格后通過WarpControl合約的borrowSC函數分別借出DAI和USDC。
Coinbase因其推遲采用SegWit而受到來自用戶和比特幣產業的指責:近日美國交易所Coinbase因其推遲采用SegWit而受到來自用戶和比特幣產業的指責。由于Coinbase因高需求量而導致技術問題,多方強烈呼吁將接受SegWit作為首要任務。Twitter網友Civ Ekonom在回應Coinbase最新的系統故障報告時稱,Coinbase需要批量處理即將產生的交易。網絡社群也均因交易所未實施SegWit而感到憤怒,因為采用SegWit將有效的減少交易費用。[2018/1/12]
4、最后在Uniwsap的WETH-DAI池子總歸還DAI,重新拿回34萬枚WETH完成攻擊操作。最后只需按部就班的歸還閃電貸即可獲利。
完整的攻擊流程如下
1、攻擊者部署攻擊合約,并通過dydx與Uniswap閃電貸借出DAI和WETH。
2、攻擊者拿出一小部分的DAI和WETH在Uniswap的WETH-DAI池中添加流動性,并獲取LPToken。
3、攻擊者使用添加流動性獲取的LPToken抵押到WarpFinance中,為借出穩定幣做準備。
4、攻擊者利用巨量的WETH在Uniswap兌換成DAI來拉高WETH-DAI池子的總價值,使得WarpFinance中LPToken的單價變高。(注意這里WETH和DAI價格獲取是正確的并沒有被操縱,被操縱的是WETH的數量,通過增加WETH的數量來拉高池子的總價值)。
5、由于LPToken的單價變高,導致攻擊者抵押的LPToken可以借出更多的穩定幣來進行獲利。
總結
本次攻擊的本質是通過操縱LPToken的單價來獲取更多的穩定幣可借貸數量進行獲利的。這是由于在WarpFinance中LPToken的價格是通過LP池子的總價值除以LPToken的總數量得到的,雖然代幣價格獲取正確,但代幣數量是可被操縱的,因此LP的單價就是可被操縱的,這就形成了攻擊的必要條件了。最終項目方損失約800萬美元,但攻擊者抵押的LP也留在了Vault中,如果抵押的這部分LP后續可被清算的話可以一定程度上的彌補項目方的損失。
相關參考鏈接如下:
Uniswap預言機實現介紹:
https://uniswap.org/docs/v2/core-concepts/oracles/
本次分析的攻擊交易:
https://etherscan.io/tx/0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090
往期回顧
HackingTime區塊鏈安全攻防峰會第二期來啦!
以小博大,簡析SushiSwap攻擊事件始末
假錢換真錢,揭秘PickleFinance被黑過程
閃電貸重入攻擊,OUSD損失700萬美金技術簡析
如何使用閃電貸從0撬動百萬美元?ValueDeFi協議閃電貸攻擊簡要分析
慢霧導航
慢霧科技官網
https://www.slowmist.com/
慢霧區官網
https://slowmist.io/
慢霧GitHub
https://github.com/slowmist
Telegram
https://t.me/slowmistteam
https://twitter.com/@slowmist_team
Medium
https://medium.com/@slowmist
幣乎
https://bihu.com/people/586104
知識星球
https://t.zsxq.com/Q3zNvvF
火星號
http://t.cn/AiRkv4Gz
鏈聞號
https://www.chainnews.com/u/958260692213.htm
本文來源于非小號媒體平臺:
慢霧科技
現已在非小號資訊平臺發布68篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/9558996.html
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
幣安為何推出第三條鏈?這對BNB意味著什么?
在每個人都在談論「DeFi」和「StakingEconomy」的時候,鏈聞希望帶領中國的加密貨幣社區考慮另外一個值得討論的話題:「治理」。治理是一個社會學話題,也是一個技術話題.
1900/1/1 0:00:00比特幣長期上漲是大概率事件,這或許就是MicroStrategy瘋狂購買比特幣的原因。原文標題:《發債5.5億美元用來購買比特幣的MicroStrategy瘋了嗎?》撰文:谷燕西,美國力研咨詢公.
1900/1/1 0:00:00日本、新加坡、香港加密交易所監管框架各有千秋。哪一個對散戶更友好?哪一個監管更加嚴格?三個不同框架都有哪些獨到之處?總結而言:日本雖然法規最完善,但具體實施中對1CO和衍生品幾乎是嚴厲遏制狀態,
1900/1/1 0:00:00宏大敘事的意義 **** 著名的心理學家馬斯洛總結了一個人類的需求層次表。人的需求是分層次的,從生理需求,到安全需求,到社交需求,到尊重需求,到自我實現.
1900/1/1 0:00:00譯文出自:登鏈翻譯計劃 譯者:翻譯小組 校對:Tiny熊 Solidity是一種特殊的語言,有許多的奇怪巧.
1900/1/1 0:00:00親愛的庫幣用戶: 我們很高興的宣布,庫幣將上線MoneySwap(MSWAP)項目并支持交易對MSWAP/USDT和MSWAP/BTC.
1900/1/1 0:00:00