比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > FIL幣 > Info

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

Author:

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

編者按:本文來自PeckShield,Odaily星球日報經授權轉載。02月15日,bZx團隊在官方電報群上發出公告,稱有黑客對bZx協議進行了漏洞攻擊,且已暫停除了借貸外的其他功能。對于攻擊細節,bZx官方并沒有進行詳細披露。PeckShield安全人員主動跟進bZx攻擊事件,發現這起事件是針對DeFi項目間共享可組合流動性的設計進行攻擊,特別在有杠桿交易及借貸功能的DeFi項目里,該問題會更容易被利用。

Figure1:FiveArbitrageStepsinbZxHack漏洞的攻擊細節如下:此攻擊事件發生在北京時間2020-02-1509:38:57。攻擊者的transaction信息可以在etherscan上查到。此攻擊過程可以分為以下五個步驟:第一步:閃貸獲取可用資金

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

PECO代幣跌幅達100%,官方推特賬號已刪除:金色財經報道,派盾監測數據顯示,Amun Polygon Ecosystem Index(PECO)代幣跌幅達100%,其官方推特賬號@Amun已經刪除。[2022/12/26 22:07:49]

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

第二步:囤積WBTC現貨

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

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

Bitfinex推出ApeCoin(APE)保證金交易:金色財經報道,據Bitfinex官方社交媒體賬戶透露,該加密貨幣交易平臺已宣布推出 ApeCoin(APE)保證金交易,支持交易對為 APE/USD 和 APE/USDT,用戶將能夠以相對保守的 1.66 倍的最大杠桿、60% 的初始保證金和 30% 的維持保證金進行交易。[2022/5/3 2:46:10]

第三步:杠桿拉盤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倍。

聲音 | PeckShield: EOS競猜游戲LuckBet遭黑客攻擊:今天09:36-09:50,PeckShield安全盾風控平臺DAppShield監測到黑客向EOS競猜類游戲LuckBet發起連續攻擊并已經獲益。PeckShield安全人員正持續跟進并做攻擊后續分析,敬請廣大DApp開發者警惕安全風險。[2019/1/16]

Figure4:MarginPumpingWithbZx(andKyber+Uniswap)應該注意的是,這步操作在合約內部實現有個安全檢查邏輯,但是實際上在交易之后并沒有驗證鎖倉值。也就是說,當攻擊發生時,此檢查沒有啟用,我們在后面會有一節詳細介紹此合約中的問題。在這一步之后,我們注意到關于黑客控制的資產有以下改變。不過,在這一步之后仍然沒有獲利。

第四步:拋售WBTC現貨

聲音 | PeckShield安全公司: EOS競猜游戲FFgame遭黑客攻擊 損失1,331個EOS:據PeckShield態勢感知平臺數據顯示:11月8日凌晨1點,EOS公鏈上又一款競猜類游戲FFgame遭遇了黑客攻擊,黑客賬戶jk2uslllkjfd向FFgame游戲合約 (eoswallet415)發起多達304次攻擊,共計獲利1,331.2922個EOS,隨后于1點36分將1,330個EOS轉移到火幣交易所。

PeckShield安全人員跟蹤發現,該黑客賬戶jk2uslllkjfd為PeckShield的重點監控黑名單賬戶,其創建于10月30日,曾于11月4日凌晨3點,攻擊過另一款EOS競猜類游戲EOSDice (eosbocai2222), 共獲利2,545.1135個EOS。這兩次攻擊都是通過寫合約代碼計算出游戲中獎規律實施攻擊,值得注意的是,該黑客習慣于凌晨實施攻擊,且每次攻擊完都會立刻修改攻擊合約,發送“hi”的垃圾數據用以掩飾攻擊信息。另外,攻擊所得EOS都是立刻轉移到火幣交易所。目前被攻擊 FFgame(eoswallet415)賬號余額里還有81.0105個EOS,并且攻擊后合約沒有更新,漏洞還未被修復。[2018/11/8]

在Uniswap中WBTC價格飆升后,攻擊者將第二步中通過Compound借的112WBTC全部賣給Uniswap并返還了相應的WETH。這次交易攻擊者共計獲得6,871.41個ETH的凈額作為回報。在這一步之后,可以看到攻擊者已經獲得不少利潤。

行情 | PeckShield漏洞研究總監羅元琮:以太坊公鏈安全相較智能合約更不容忽視:在2018 ISC互聯網安全大會上,區塊鏈安全公司PeckShield漏洞研究總監羅元琮指出,公鏈作為基礎設施,一旦遭到攻擊,其影響范圍和危害程度超乎想象。PeckShield在本次大會的議題中披露了若干個存在于以太坊公鏈上的致命漏洞,目前這些漏洞均已和以太坊基金會溝通完成修復。此次披露的“EPoD 2”具體表現為:攻擊者可通過geth LES協議實現缺陷,向受影響geth節點發送惡意AnnounceMsg,致使受害節點耗盡內存而卡死,甚至可能會連帶大面積硬件終端宕機。其潛在危害也可能導致以太坊網絡2/3以上的節點瞬間停擺,造成難以估量的嚴重影響。[2018/9/6]

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:ETHBTCBZXWBTCvethor-tokenBTCPEP幣BZX幣wbtc幣的價格

FIL幣
垃圾的Ripple,憑什么估值100億美金?_ripple

編者按:本文來自星傳媒STARMEDIA,作者:雪穗,Odaily星球日報經授權轉載。縱觀虛擬貨幣十幾年,瑞波幣的中心化和存量問題都極具話題性,相比其它貨幣,瑞波幣價格一直不溫不火,被稱之為“扶.

1900/1/1 0:00:00
區塊鏈如何進入大規模商用?何不借鑒互聯網的「免費」商業模式_ONC

編者按:本文來自鏈聞ChainNews,作者:Ruya,星球日報經授權發布。從最初的「鏈治百病」到回歸理性,直到今日,也只有DeFi生態和少數的游戲有足夠多的用戶量,就最大的區塊鏈平臺、市值19.

1900/1/1 0:00:00
Steem警示錄:交易所會不會挪用用戶資產,控制公鏈治理?_STE

2020年2月15日,TRON正式宣布收購去中心化內容社區Steem,但一向站在風口浪尖上的孫宇晨并不是安安靜靜完成這場收購,而是掀起了“聯合交易所控制Steem網絡”的輿論之爭.

1900/1/1 0:00:00
超話社區041期|引領銷毀潮,OKEx在下一盤什么棋?_VOX

OKB銷毀7個億,OKChain測試網上線,OKT創世區塊映射……OKEx到底在下一盤什么棋?!本期超話社區我們邀請到了OKEx首席戰略官徐坤,為大家解答關于OKEx新動作的各種問題.

1900/1/1 0:00:00
The Block研究總監:1月份數字貨幣交易量猛增,預示市場情緒發生變化_USDT

編者按:本文來自加密谷Live,作者:LARRYCERMAK,翻譯:ZoeZhou,Odaily星球日報經授權轉載.

1900/1/1 0:00:00
維權者深夜報案圍堵張健親人,正在統計受害者損失_COIN

2月28日晚23時許,有FCoin維權用戶爆料稱,已在浙江省杭州市上城區某一酒店內堵截到張健妻子父母及李瑩瑩妹妹。隨后,有維權者提供現場圖片、視頻顯示,上述三人或正在警局處理相關事宜.

1900/1/1 0:00:00
ads