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

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

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的基本借貸功能,我們不做進一步解釋。

Mint Werx和Vivid Labs、福布斯旅游指南合作開發獨家數藏:金色財經報道,Web3創意工作室Mint Werx以及Web3發布平臺Vivid Labs已與福布斯旅游指南合作,提供支持Web3技術的服務2023年拉斯維加斯峰會的經驗。Mint Werx和Vivid Labs正在合作為每位參加峰會的明星獎獲得者開發獨家數字收藏品,數字收藏品可更新并支持多種資產格式。[2023/3/3 12:41:15]

Figure2:FlashloanBorrowingFromdYdX

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

第二步:囤積WBTC現貨

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

BNB Chain投資總監:通過熊市和“迷你牛市”,我們正處于每個人都在建設的階段:金色財經報道,BNB Chain投資總監 Gwendolyn Regina在接受采訪時表示,盡管過去一年加密市場動蕩不安,但 BNB 的投資策略著眼于長遠,主要不受日常市場事件的影響。我們的投資主題不會改變,有時也會改變,我們都知道區塊鏈和加密貨幣的發展速度非常快,所以我們在某些領域更加精確,但基本上來說它并沒有改變。

總而言之,通過熊市和“迷你牛市”,我們正處于每個人都在建設的階段,而且我們希望在BNB Chain上啟用更多功能。

Regina 補充說,BNB Chain 上的Web3 游戲也“通過穩健性和更便宜的費用有機地增長”,但區塊鏈團隊現在正在該領域“加倍努力”,以鼓勵更多游戲玩家和開發者在其鏈上玩游戲和構建游戲。Regina分享說,在其 100 萬日活躍用戶中,約有 40% 是游戲玩家。[2023/2/12 12:01:22]

Figure3:WBTCHoardingFromCompound

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

紐約州收到加密草案,允許州機構接受加密貨幣作為支付方式:金色財經報道,紐約州議會收到了一項草案,該提案允許州機構合法化接受加密貨幣作為支付罰款、稅收、費用、民事處罰和其他與州相關的費用的一種支付方式。 該加密立法被稱為議會法案A2532,由著名的加密貨幣倡導者、民主黨議員Clyde Vanel提出。

目前,該法案已提交紐約州議會政府運作委員會進行進一步研究和修正。根據立法程序,該法案還需獲得紐約州議會和參議院通過,以及州長的批準才能成為法律。[2023/1/30 11:35:40]

第三步:杠桿拉盤WBTC價格

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

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

Anchorage Digital與五個亞洲機構達成合作:金色財經報道,機構加密貨幣托管公司Anchorage Digital已經與五個新的亞洲機構合作,新的合作伙伴包括Bitkub、Dream Trade、FBG Capital、IOSG Ventures和Antalpha。此前該公司還與GMO-Z.com信托公司合作,這是一家與日元掛鉤的穩定幣發行商。據悉,Anchorage為機構提供綜合金融服務和基礎設施解決方案,如托管、押注和交易服務。(The Block)[2022/10/5 18:39:54]

Figure4:MarginPumpingWithbZx(andKyber+Uniswap)

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

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

日本金融巨頭SBI子公司Clear Markets獲準在美提供加密衍生品交易:8月11日消息,日本金融巨頭SBI Holdings子公司Clear Markets已獲得美國商品期貨交易委員會 (CFTC) 的批準,可提供加密資產衍生品交易。在獲得CFTC的批準后,Clear Markets計劃在美國推出以實物結算為前提的以美元計價的比特幣交易對,并計劃在未來擴展其產品。(Coinpost)[2022/8/11 12:18:08]

第四步:拋售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:ETHBTCBZXWBTCPlethoriBTCT價格BZX幣MWBTC幣

OKB
Yang:加密支持者Andrew Yang退出2020年美國總統競選

美國民主黨總統候選人AndrewYang宣布退出2020年美國總統競標。 拉爾夫勞倫邁阿密商店接受加密支付:金色財經報道,美國時尚品牌 Ralph Lauren 將在其位于邁阿密設計區的新店開始.

1900/1/1 0:00:00
區塊鏈:真需求還是偽需求?北、杭、廣、深區塊鏈發票對比

文丨互鏈脈搏 中國發票的電子化還未普及,區塊鏈發票就快馬加鞭追趕上來。3月3日,北京漢威國際廣場停車場開出北京市首張區塊鏈電子普通發票,北京稅收服務和管理也正式踏入區塊鏈時代.

1900/1/1 0:00:00
加密貨幣:KPMG報告:自2017年以來,加密貨幣被盜共計價值98億多美元

來源:CointelegraphChina編者注:原標題為《機構托管是關鍵行業,因為據畢馬威估算,自2017年以來,有98億美元的加密貨幣被盜》 根據畢馬威3月2日與彭博社分享的一份報告.

1900/1/1 0:00:00
COIN:FCoin“出事”后,團隊關鍵人物回復了!

2月12日晚,FCoin交易所的一則“關于系統維護最新進度及開放提現申請”公告在社區引發巨大爭議。公告稱:一、經核查,系統未曾遭受過外部黑客入侵.

1900/1/1 0:00:00
區塊鏈:無人機植保、多光譜成像、區塊鏈技術,農民伯伯的種田“黑科技”

來源:新華網 新華社成都3月2日電春天來了,從百米高空俯瞰成都平原,一塊塊農田如同地毯。行走田間,耕作的人變少了,“黑科技”越來越多.

1900/1/1 0:00:00
比特幣:比特幣的死亡螺旋踩踏會真實發生么?

時隔106天,比特幣重新站上1萬美金,再次登上熱搜,這讓許久被社會話題占據的社群,重新把焦點匯聚在行業各類項目上。因為,在大部分觀念中,1萬美金起碼是一個信號,告訴我們牛市似乎要來了.

1900/1/1 0:00:00
ads