比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

硬核技術解析,bZx協議遭黑客漏洞攻擊始末_ETH

Author:

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

02月15日,bZx團隊在官方電報群上發出公告,稱有黑客對bZx協議進行了漏洞攻擊,且已暫停除了借貸外的其他功能。對于攻擊細節,bZx官方并沒有進行詳細披露。

PeckShield安全人員主動跟進bZx攻擊事件,發現這起事件是針對DeFi項目間共享可組合流動性的設計進行攻擊,特別在有杠桿交易及借貸功能的DeFi項目里,該問題會更容易被利用。

Figure1:FiveArbitrageStepsinbZxHack

漏洞的攻擊細節如下:

此攻擊事件發生在北京時間2020-02-1509:38:57。攻擊者的transaction信息可以在?etherscan?上查到。此攻擊過程可以分為以下五個步驟:

第一步:閃貸獲取可用資金

攻擊者通過在部署的合約中調用了?dYdX閃貸功能借入了10,000個?ETH。這部分是已知的dYdX的基本借貸功能,我們不做進一步解釋。

CoinShares第二季度營收2030萬英鎊,同比增長33.0%:金色財經報道,資產管理公司CoinShares公布了截至2023年6月30日的季度業績。2023年第二季度收入、收益和其他收入為2030萬英鎊,營收同比增長33.0%(2022年第二季度:1530萬英鎊——不包括與TerraUSD相關的特殊損失),第二季度調整后EBITDA為1280萬英鎊(2022年第二季度:900萬英鎊-不包括與TerraUSD相關的特殊損失),2023年第二季度的綜合總收入為530萬英鎊(2022年第二季度:虧損60萬英鎊)。

該季度,CoinShares的被動資產管理部門產生了1060萬英鎊的管理費。CoinShares的資本市場部門報告第二季度的收益和其他收入為1000萬英鎊。[2023/8/1 16:11:10]

Figure2:FlashloanBorrowingFromdYdX

當第一步操作過后,如下表中攻擊者資產,此時并沒有收益:

第二步:囤積WBTC現貨

“Fake_Phishing76351”的黑地址先將被盜資金轉入地址0x2f64:金色財經消息,據CertiK監測,被標記為“Fake_Phishing76351”的黑地址先將被盜資金轉入地址0x2f64,后者又將資金分別轉至地址0x11bA和0xa6F4,隨后全部轉入Torndao Cash。截至目前,總共有20枚ETH(約3.52萬美金)被轉入Torndao Cash。[2023/3/21 13:16:35]

通過第一步閃貸獲得ETH后,攻擊者將其中的5,500ETH存入Compound作為抵押品,貸出112WBTC。這也是正常的Compound借貸操作,貸出的WBTC將在第四步中被拋售。

Figure3:WBTCHoardingFromCompound

在此步驟操作后,我們可以看到關于攻擊者控制的資產發生了改變,但此時仍然沒有獲益:

金融技術公司Party Round更名為Capital:10月8日消息,金融技術公司Party Round宣布更名為Capital,主要提供針對創始人構建的產品,包括融資、(持有)管理資產、支出和匯款等業務,其中融資業務允許創始人使用加密貨幣或者法定貨幣來使用使用標準的Y Combinator SAFE籌集資金,一旦資金匯入,創始人可以使用Capital創建一個商業支票賬戶,獲得一張借記卡并進行付款。

此前消息,去年11月份,Party Round完成700萬美元融資,Seven Seven Six等參投。[2022/10/8 12:49:45]

第三步:杠桿拉盤WBTC價格

利用bZx的杠桿交易功能,做空ETH購入大量WBTC。具體步驟是:攻擊者存入1,300ETH并調用bZx杠桿交易功能,即接口mintWithEther(),在內部會繼續調用接口marginTradeFromDeposit()。接下來,攻擊者將從bZx5倍杠桿獲得的5,637.62個ETH,通過?KyberSwap兌換成51.345576WBTC。請注意,此處做空ETH是借來的5倍。本次交易導致將WETH/WBTC的兌換率提高到109.8,大約是正常兌換率的3倍。

高盛前瞻美聯儲9月利率決議:料將加息50個基點:8月26日消息,高盛預計美聯儲將在9月利率決策會議上加息50個基點,11月和12月分別再加息25個基點,盡管持續的通脹壓力將在下半年對美聯儲政策利率路徑構成上行風險。預計美聯儲終端利率在3.25-3.5%。財政政策方面,預計最近簽署成法律的財政協議只會產生非常溫和的凈財政影響。(金十)[2022/8/26 12:49:05]

為了完成此交易,KyberSwap基本上會查詢其儲備金并找到最優惠的匯率,最終只有Uniswap能提供這樣的流通性,因此這個交易從本質上推動了Uniswap中WBTC價格上漲了3倍。

Figure4:MarginPumpingWithbZx(andKyber+Uniswap)

應該注意的是,這步操作在合約內部實現有個安全檢查邏輯,但是實際上在交易之后并沒有驗證鎖倉值。也就是說,當攻擊發生時,此檢查沒有啟用,我們在后面會有一節詳細介紹此合約中的問題。

在這一步之后,我們注意到關于黑客控制的資產有以下改變。不過,在這一步之后仍然沒有獲利。

鏈游工作室Gala Games將在Epic Games商店推出大逃殺游戲Grit:金色財經消息,鏈游工作室Gala Games將在Epic Games商店推出大逃殺游戲Grit,目前該游戲的推出時間尚未確定。(store.epicgames.com)[2022/6/6 4:06:06]

第四步:拋售WBTC現貨

在Uniswap中WBTC價格飆升后,攻擊者將第二步中通過Compound借的112WBTC全部賣給Uniswap并返還了相應的WETH。

這次交易攻擊者共計獲得6,871.41個ETH的凈額作為回報。在這一步之后,可以看到攻擊者已經獲得不少利潤。

Figure5:WBTCDumpingWithUniswap

第五步:閃貸還款

攻擊者從拋售的112WBTC中獲得的6,871.41個ETH,將閃貸的10,000個ETH償還給dYdX,從而完成閃貸還款。

在這一步之后,我們重新計算了以下資產詳情。結果顯示,攻擊者通過此次攻擊獲得71ETH,加上這兩個鎖倉:Compound和bZx。bZx鎖倉處于違約狀態,Compound的鎖倉是有利可圖的。顯然,在攻擊之后,攻擊者就開始償還Compoud債務以贖回抵押的5,500個WETH。由于bZx鎖倉已經處于違約狀態,攻擊者也不再感興趣了。

參考1WBTC=38.5WETH的平均市場價格,若攻擊者以市場價格購入112WBTC花費約需4,300個ETH。此112WBTC用以清償Compond債務并取回抵押品5,500ETH,則最終攻擊者總共獲利為?71WETH+5,500WETH-4,300ETH=1,271ETH,合計大約$355,880。

硬核解析:bZx可規避風險代碼邏輯缺陷

通過前面攻擊者在合約中實現的步驟可以看出,問題的核心原因是在第三步調用marginTradeFromDeposit()通過借貸的1,300ETH,加5倍杠桿來實現做空ETH/WBTC交易的,于是

我們進一步審查合約代碼,發現這是一個「可避免的套利機會」,但因為代碼存在的邏輯錯誤造成可用于規避風險的代碼邏輯沒有生效。具體代碼追蹤如下:

首先是marginTradeFromDeposit()調用_borrowTokenAndUse(),此處由于是以存入的資產作杠桿交易,第四個參數為true。

在_borrowTokenAndUse()里,當amountIsADeposit為true時,調用_getBorrowAmountAndRate()并且將borrowAmount存入sentAmounts。

在1,355行,sentAmounts被設置為sentAmounts并且于第1,370行調用_borrowTokenAndUseFinal()

經由IBZxinterface進入bZxContract的takeOrderFromiToken()函數。

bZxContract屬于另一個合約?iTokens_loanOpeningFunctions?于是我們我們繼續分析合約代碼,在函數中發現有一個關鍵的邏輯判斷:

在第148行,bZx事實上嘗試利用oracle合約的shouldLiquidate()檢查這個杠桿交易的倉位是否健康。然而,因為第一個條件已經為true,則繼續執行,而忽略了shouldLiquidate()的邏輯判斷。

事實上,在合約?BZxOracle?的shouldLiquidate()中實現了對getCurrentMarginAmount()<=loanOrder.maintenanceMarginAmount判斷,如果執行到shouldLiquidate()就可以有效避免這個攻擊的發生。

如前所述,這是一次很有意思的攻擊,它結合了各種有趣的特性,如貸款、杠桿交易和拉高價格等。之所以可能發生這種攻擊,是因為當前項目共享可組合流動性的設計。特別是,5倍杠桿交易允許用戶以相對較低的成本借入大量代幣,加上DeFi項目間共享的流動性,導致交易價格更容易被操控。

Tags:ETHBTCWBTCBZXethnicLift Kitchen (LFBTC)Aave WBTCbZx Protocol

火幣網下載官方app
DeFi產品設計師、中國社區策略師……盤點加密行業特有的16個新職位_EFI

原文:Decrypt,原文作者:Charlesd''Haussy來源:Odaily星球日報,譯者:念銀思唐,原題《星球前線|加密行業特有的16個新職位》無論你是否相信加密春天即將來臨.

1900/1/1 0:00:00
數字黃金、稀缺性和比特幣減半_OIN

來源:Coinbaseblog 作者:MikeCo 編譯:共享財經Neo 什么賦予了金錢價值? 今天,美元的價值與其他任何資產的價值都沒有直接的聯系.

1900/1/1 0:00:00
美國高級官員提議:允許投資者對比特幣進行免稅投資_比特幣

據Beincrypto2月16日報道,美國總統唐納德?特朗普的一名高級官員提議稱,美國新的經濟刺激方案可能包括“401(k)計劃”以外的免稅投資.

1900/1/1 0:00:00
研究 | 解讀預測市場:為什么“疊加”很重要?_TIT

來源:加密谷Live 作者:Hasu 翻譯:Lisa 市場是人們可以相互交換商品和服務的場所。即使所有的參與者都只考慮自己的利益,價格發現仍使市場能夠有效地將資源分配給社會中最有價值的用途.

1900/1/1 0:00:00
年內暴漲45%,比特幣再破10000美元!“減半行情”預期火爆_比特幣價格

來源:券商中國 作者:王君暉 在全球資本市場及大宗商品市場面臨較大不確定性的情況下,從春節假期開始,幣圈卻出現了“小陽春”,在經歷幾個月時間的沉寂后,比特幣又一次開始上攻且漲勢較為迅猛.

1900/1/1 0:00:00
開年漲幅超比特幣一倍的以太坊,為何仍被頂級投資人“嫌棄”_LANA

來源:小蔥區塊鏈 雖然比特幣自去年年底以來引領了市場的新一輪普漲,但是在最近一波上漲過程中比特幣的漲幅卻并沒有做到“領跑市場”.

1900/1/1 0:00:00
ads