以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

BTC:金色硬核 | 一文讀懂DeFi上的閃電貸(附如何利用閃電貸套利)

Author:

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

金色財經近期推出金色硬核(Hardcore)欄目,為讀者提供熱門項目介紹或者深度解讀。

2月16日,bZx被爆遭到“攻擊”,“攻擊者”操縱多個DeFi項目上的代幣價格,從而實現15秒內套利36萬美元。涉及多個DeFi明星項目如Compound,DyDx,Uniswap,kyber,bZx。這個“攻擊”利用了DeFi上最新的閃電貸(flashloans)功能。正如bZx所說,這種“攻擊”是所見過的最復雜的攻擊之一,只有對每種DeFi協議及其各種工具有非常深入的了解才有可能,傳統金融體系中沒有類似的東西。

什么是閃電貸(flashloans)?怎么利用閃電貸(flashloans)來套利?本期金色硬核(Hardcore)綜合編譯AbitrageDAO和PeckShield最早和最新的閃電貸套利研究。

AbitrageDAO是Stake資本團隊建立的一個DeFi套利基金,聯合鏈上流動性和鏈下機器人來尋求套利機會。PeckShield為區塊鏈安全公司。

最新進展:2月18日bZx發推宣布再次暫停,疑似再次被“攻擊”,“攻擊”者或獲利2388個ETH。

在交易世界中,套利是一種利用市場之間的價格差異來獲利的策略。套利機會在金融市場中以各種形式存在。加密貨幣也不例外,很多交易所之間有著套利機會。套利有助于減少資產在不同市場中的價格差異,它還有助于提高流動性。

我們(AbitrageDAO)專注于在以太坊上運行的具有合約可填充流動性(Contract Fillable Liquidity ,CFL)的去中心化交易所。有CFL的去中心化交易所包括Oasis,0x relayers,Uniswap,Bancor和Kyber。有CFL的交易所允許交易者在以太坊區塊鏈的一個區塊交易中利用套利機會。

金色午報|1月5日午間重要動態一覽:7:00-12:00關鍵詞:Opensea、薩爾瓦多、NFT

1.Opensea以133億美元投后估值完成3億美元融資,Paradigm和Coatue領投;

2.薩爾瓦多財政部長:將推進比特幣債券的發行;

3.PhantaBear NFT市值突破1000萬美元;

4.前CFTC主席提議特設加密貨幣工作組,以統一美國加密貨幣監管;

5.阿迪達斯 Originals NFT 系列銷售額接近6000萬美元;

6.泰國推遲CBDC試點計劃;

7.第三大比特幣巨鯨今日再次購買372個BTC;

8.交通銀行首個數字人民幣智慧薪酬管理項目落地。[2022/1/5 8:26:12]

什么是閃電貸(flash loans)

閃電貸(flash loans)是為開發人員設計的,可以在無需提供任何抵押的情況下立即進行貸款。所有這些都要在一個交易(一個以太坊區塊)中完成。開發人員可以從Aave儲備池中借錢(注:flash loans最早討論來自Aave協議,第一筆flash loans也來自Aave),條件是在交易結束之前將流動資金返還到資金池中。如果這種流動性未能及時返回儲備庫,則交易將被撤回,從而確保儲備池的安全。

閃電貸有許多有趣的用例,包括:

去中心化交易所之間的套利

多個借貸平臺如Compound,dYdX或Nuo上清算貸款

再融資,例如從Aave提取DAI,關閉MakerDAO CDP,獲取抵押品,在Compound上存款,開倉,取回DAI,退還DAI加手續費

這使得更多參與者可以在套利和清算間發揮作用,因為不需要任何資金就可以開始。套利機會通常不需要太多資金(在100-10000美元之間)。另一方面,清算需要大量資金來清算借款人頭寸。Compound或單抵押DAI(SAI)的許多清算需要ETH或DAI超過100萬美元。

金色午報|7月17日午間重要動態一覽:7:00-12:00關鍵詞:區塊鏈產業、推特被黑、吳忌寒、信標鏈

1.婁底市加快推進區塊鏈產業發展政策正式出臺。

2.蘇州市相城區成立10億元區塊鏈專項引導基金。

3.深圳硅基揚航公司成立 吳忌寒出任法定代表人。

4.推特被黑幕后黑手或為21歲英國小伙 曾協助劫持杰克多西賬戶。

5.推特:約有130個賬戶被作為目標 已于受害者進行合作。

6.Grin已完成第三次硬分叉升級。

7.紅嶺云與阿里云簽署“黨建+區塊鏈”框架合作協議。

8.BSN發展聯盟理事長:BSN北京區塊鏈主干網落戶大興。

9.以太坊聯合創始人:信標鏈安全性對ETH2.0至關重要。[2020/7/17]

ArbitrageDAO是低抵押/無抵押閃電貸的最佳用例。但我們相信,在未來幾個月中,將看到許多使用閃電貸的激動人心的項目。

第一筆閃電貸

ArbitrageDAO于2020年1月18日完成第一筆無抵押的閃電貸。見下圖Camilla Russo的報道。

為了證明閃電貸的巨大潛力,我們決定聚焦于特定的套利策略,但也可應用于許多其他方面。你可以在此處查看ArbitrageDAO從錢包發起的交易:https://etherscan.io/address/0x8645abffe4fad9e0c6c18afff30ef6aea438008c

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

金色財經行情播報丨BTC1小時箱體震蕩多頭承壓,行情或以左側交易節奏:據火幣行情顯示,今日BTC行情整體保持窄幅震蕩,7100USDT關鍵位反復膠著,1小時短期形成楔形突破乏力,但均線交錯短線構成再度上攻的蓄勢。上方7140USDT以及7170USDT壓力位是空頭強力陣地,即使BTC短線有機會向上突破,在壓力位受阻概率依然較大,整體行情或以左側交易節奏。截至18:30,火幣平臺的主流幣的具體表現如下:[2020/4/17]

在上述套利交易中,AbitrageDAO在Aave上借出超過3100個DAI。

更多交易:

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

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

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

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

截止2020年1月23日,AbitrageDAO總共從Aave借了大約9400個DAI,盈利33個DAI。

最新套利案例:bZx 2月15日閃電貸套利過程全披露

bZx 2月15日閃電貸套利過程來自安全公司派盾的分析。

金色晨訊 | V神:以太坊應該與Facebook進行合作 Libra代表人周一將與26家央行官員會面:1.V神:以太坊應該與Facebook進行合作。

2.德意志銀行加入由摩根大通牽頭的區塊鏈網絡IIN。

3.Calibra首席運營官:Facebook與Libra代幣的初步交易無關。

4.德國將批準區塊鏈戰略草案,將阻止Libra項目。

5.Libra代表人將于周一在瑞士與26家央行的官員會面。

6.烏拉圭批準規范眾籌平臺的法案,可適用于一些ICO。

7.V神:有50%的礦工現在投票支持提高GAS上限。

8.懷俄明州區塊鏈特別工作組將召開會議討論潛在的立法問題。[2019/9/16]

這不是預言機攻擊。相反,這是一個非常聰明巧妙的套利,它確實利用了bZx智能合約中的一個錯誤,以允許本應鎖定的bZx資金流向Uniswap,并進一步將泄漏的資金吸收到Compound頭寸中。

套利五步驟

交易在這里0xb5c8bd9430b6cc87a0e2fe110ece6bf527fa4f170a4bc8cd032f768fc5219838,它是在2020-02-15 01:38:57 + UTC的區塊高度9484688上。如上圖所示,此次“攻擊”可以分為五個不同的步驟:閃電貸借款、吸籌、杠桿拉盤、出貨、償還閃電貸(Flashloan Borrow, Hoard, Margin Pump, Dump, Flashloan Repay)。

1:閃電貸借款。這一步利用了dYdX的閃電貸功能借入10000個ETH。

執行此步驟后,“攻擊”者資產負債如下資產,無收益。

金色財經數據播報 比特幣全網未確認交易筆數降至1034筆:根據BTC.com數據顯示,目前比特幣挖礦全網算力31.36EH/s,目前比特幣全網未確認交易筆數為1034筆。[2018/5/25]

2:吸籌。利用借來的貸款,“攻擊”者將5500 ETH存入Compound作為抵押品,借入112 WBTC。這是正常的Compound操作,此吸籌的WBTC將在步驟4中出貨。

完成此步驟后,“攻擊”者的資產負債表如下,仍然無收益。

3:杠桿拉盤。吸籌之后,此步驟利用bZx保證金交易功能以賣空ETH兌得WBTC(即sETHwBTCx5)。具體來說,“攻擊”者存入1300 ETH并調用bZx保證金交易功能,即mintWithEther(連續調用marginTradeFromDeposit)。保證金交易功能利用KyberSwap將借入的5637.623762 ETH交換為51.345576 WBTC。請注意,5倍杠桿借入ETH。實質上將1 WBTC的兌換率提高到109.8 WETH,大約是正常兌換率(~38.5 WETH/WBTC)的三倍。

具體來說,為完成此交易,bZx將訂單轉發給KyberSwap,后者隨后會查詢其儲備金并找到最佳匯率,實際上KyberUniswap儲備庫。此步驟實質是將Uniswap中的WBTC價格提高了三倍。

此步驟應由內置的完整性檢查阻止,此操作可驗證掉期后頭寸不會變為默認值。但是,此攻擊發生時,沒有進行此檢查,我們稍后將在智能合約錯誤部分中檢查詳細信息。

4:出貨。隨著Uniswap中WBTC價格的飆升,“攻擊”者將Uniswap中從Compound中借來的112 WBTC賣出換成WETH。

此出貨步驟獲得6871.4127388702245 ETH的凈收益,平均兌換率為1 WBTC = 61.4 WETH。執行此步驟之后,攻擊者獲得可觀的利潤,資產負債表如下:

5:償還閃電貸。“攻擊”者使用從112 WBTC出貨中獲得的6871.4127388702245 ETH,將10000ETH的貸款償還給dYdX,從而完成閃電貸。

這一步后,可以重新計算一下資產負債。最終,“攻擊”者獲得71個ETH的套利,外加兩個頭寸,一個頭寸為Compound(+ 5500WETH / -112WBTC),另一個頭寸為bZx(-4337WETH / + 51WBTC)。當bZx頭寸處于缺省狀態時,Compound頭寸非常有利可圖。在利用漏洞之后,“攻擊”者立即開始安排償還Compound債務(112BTC)來贖回抵押品(5500WETH)。對于bZx頭寸,“攻擊”者不再顯示任何興趣。

考慮到1 WBTC = 38.5WETH(或1 WETH = 0.025BTC)的市場均價,“攻擊”者可以獲得112 WBTC等價的4300 ETH。結果,“攻擊”者獲得了71 WETH + 5500 WETH -4300 ETH = 1271 ETH,大約35.59萬美元(假設ETH價格為280美元)。

bZx智能合約錯誤

這次“攻擊”背后的魔力是Uniswap WBTC/ETH是如何被操縱至高達61.4的利潤的。如第3步所述,當正常市場價格僅為38左右時,WBTC / ETH價格被拉升至109.8。換句話說,這一巨大價差是被有意操縱的。但是,如此巨大的價差會導致bZx頭寸處于抵押不足狀態。但是為什么要允許抵押不足狀態存在,這自然導致在bZx智能合約實現中發現隱藏的錯誤。

保證金拉升功能從marginTradeFromDeposit()開始。

如上圖所示,marginTradeFromDeposit()在第840行將第四個參數設置為true的情況下調用_borrowTokenAndUse()

在_borrowTokenAndUse()內部,當amountIsADeposit為true時,在行1348中調用_getBorrowAmountAndRate()。返回的借款金額將存儲在sendAmounts 中。

同樣在_borrowTokenAndUse()中,在amountIsADeposit == true的情況下,在1355行中將sendAmounts 的值填充為sendAmounts (將在后面看到)。稍后,在第1370行中調用_borrowTokenAndUseFinal()。

在第1414行中,_borrowTokenAndUseFinal()通過IBZx接口調用takeOrderFromiToken(),以使交易流進入bZxContract。

下面有趣的部分到了。在第145–153行中,有一個require()調用以檢查該頭寸是否健康。不幸的是,在loadDataBytes.length == 0 && sentAmounts == sentAmounts 的情況下,完整性檢查(sanity check)bZxOracle :: shoudLiquidate()被跳過了。這正是觸發漏洞以避免完整性檢查的條件。

如果我們看一下bZxOracle :: shouldLiquidate(),則第514行中的檢查getCurrentMarginAmount()<= loanOrder.maintenanceMarginAmount可以通過捕獲保證金提升步驟來完成這項工作,從而可以防止這種“攻擊”。

參考資料:

Flash Boys | Arbitrage DAO

https://medium.com/@bneiluj/flash-boys-arbitrage-dao-c0b96d094f93

bZx Hack Full Disclosure (With Detailed Profit Analysis)

https://medium.com/@peckshield/bzx-hack-full-disclosure-with-detailed-profit-analysis-e6b1fa9b18fc

Tags:ETHBTCBZXWBTETHG上交易所UBTCbzx幣團隊Aave WBTC

SHIB最新價格
MAG:這才是真的去中心化?社區宣布銷毀1.32億美元EOS Block.one竟不知情

EOS.IO生態系統最近宣布銷毀鎖定在儲蓄賬戶中的3400萬個EOS代幣,通過投票減少了網絡通貨膨脹.

1900/1/1 0:00:00
NBS:FATF加密貨幣法規適應期將止 全球采用情況如何?

導近8個月前,金融行動特別工作組(FATF)發布了引發分歧的加密貨幣指令,在加密貨幣領域建立起傳統的銀行監管制度.

1900/1/1 0:00:00
CRYPTO:比特幣價格牛市可能會持續1000天

比特幣在2020年的價值要超過其存在的任何一年。歷史數據表明,其價格還將繼續攀升19個月。基金合作伙伴James Todaro在2月21日上傳到Twitter的數據顯示,就交易量加權平均價格而言.

1900/1/1 0:00:00
ITG:多頭再次被打住 ETH多頭趨勢更強

中幣(ZB)市場研究報告:YFI多頭需突破阻力反彈才能持續上漲:據中幣(ZB)市場研究報告指出,本月17日.

1900/1/1 0:00:00
ETH:引介:Turbo-Geth 客戶端:數據庫改進

幾個月以前,我加入了 Turbo-Geth 團隊,開始主動給 Trubo-Geth 客戶端貢獻代碼.

1900/1/1 0:00:00
以太坊:Vitalik Buterin:以太坊PoS網絡今年上線 第0階段僅有少量驗證者

以太坊聯合創始人Vitalik Buterin在2月19日的斯坦福區塊鏈會議上接受采訪時,討論了以太坊2.0的計劃.

1900/1/1 0:00:00
ads