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

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

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的交易所允許交易者在以太坊區塊鏈的一個區塊交易中利用套利機會。

金色相對論 | 褚康:比特幣其內在設計使其更加符合價值儲存的特性:在今日舉行的《危機向左,信仰向右》的比特幣減半特輯之資本篇的直播中,針對“比特幣最核心的價值或者比特幣最牛的地方是什么”的問題,犇睿資本創始人褚康表示,我認為比特幣最出色的設計在于其定量發行和挖礦獎勵減半機制,這使得比特幣成為世界上唯一一個有已知固定最大供應量、大市值的可交易資產。根據其設計,比特幣的總量不會超過2100萬個,挖礦獎勵減半通過不斷降低比特幣的供應速度使其越發稀有,這與各國政府所發行法幣的理念完全不同。這次貨幣大通脹使更多人認識到我們手中所持有的法幣每年都在通過通脹貶值,理論上這種通脹最終會使得法幣的價值無限趨近于0,那么我們所持有的法幣真的具有財富儲備的作用嗎,比特幣其內在設計區別于法幣發行的理念,使其更加符合價值儲存的特性。[2020/5/14]

什么是閃電貸(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萬美元。

分析 | 金色盤面:多空主力集結兵力準備開戰:金色盤面綜合分析:2小時圖中,K線形態是箱體,完成了三次回踩6400美元的動作,目前看調整進入尾聲,等待突破。技術上多頭占優,均線纏繞,無論上下,一旦發散,力度較大。[2018/9/17]

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

第一筆閃電貸

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

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

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

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

更多交易:

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

金色快評 | 央行法定數字貨幣或即將到來:近期,人民銀行數字貨幣研究與深圳、南京等地合作布局科創中心,此前有報道稱深圳市政府對外表示,深圳有望成為率先試水法定數字貨幣的城市。同時,國家知識產權局數據顯示,人民銀行在2017年公開了32項數字貨幣專利后,2018年再度公開14項專利,其中包括數字貨幣的開通方法與系統;數字貨幣兌換方法和系統;數字貨幣錢包的登錄方法、終端和系統;數字貨幣錢包注銷等方法和系統;基于數字貨幣錢包查詢關聯賬戶的方法和系統等。

人民銀行自2016年初,就開始探討發行央行法定數字貨幣的方法和可行性。從目前的專利申請情況可以看到,其專利已經涵蓋了數字貨幣的存儲、交易,以及交易跟蹤查詢的整個流通、監管鏈條。結合多地科創中心的建設,可以說人民銀行已經完成了法定數字貨幣發行所需的技術和基礎設施布局工作,那么離央行法定數字貨幣的發行還會遠嗎?需要注意的是央行法定數字貨幣,是將現有人民幣數字化,而不是發行一種獨立于法定貨幣外的數字貨幣。[2018/9/6]

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

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

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

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

分析 | 金色盤面:USDT/CNY報收6.95:金色盤面綜合分析:USDT/CNY價格過去12小時持續回落,市場恐慌情緒有所收斂,短線看這里進入一個相對平衡的階段。[2018/8/15]

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

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

這不是預言機攻擊。相反,這是一個非常聰明巧妙的套利,它確實利用了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。

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

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

金色財經現場報道丨李笑來回應“黑莊”“割韭菜”傳聞:將來一定公開個人資產:金色財經前方記者實時報道,4月9日,在“中國杭州區塊鏈產業園”啟動儀式圓桌論壇中李笑來針對有人說自己是“黑莊”“割韭菜”的傳聞回應稱,自己主要靠的是場外賺錢的能力,并不存在“割韭菜”的現象。他說將來一定公開自己的資產,以證實自己并沒有“割韭菜”。[2018/4/9]

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

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:ETHBZXBTCWBTCZETHbZx ProtocolBTC公益是什么平臺AWBTC價格

歐易交易所
G20智囊將設工作組研究加密貨幣監管_SETH

向G20輪值主席國匯報峰會議程項目的研究和政策咨詢網絡T20透露,其將設置一個工作組對加密貨幣監管進行研究.

1900/1/1 0:00:00
經濟日報:重點發展區塊鏈等核心數字化產業_區塊鏈

中央經濟工作會議提出,著力推動高質量發展,“要大力發展數字經濟”。數字經濟具有技術創新、產業融合、綠色發展、信息共享等顯著特征,發展壯大數字經濟與我國經濟社會現階段的發展規律相適應,亦是推動高質.

1900/1/1 0:00:00
金色觀察 | 螞蟻礦機E3 4月或將停止以太坊挖礦_以太坊

近期,原計劃在伊斯坦布爾硬分叉中進行的ProgPoW又有了新的消息,但是升級時間仍為確定。消息一出,再次引發了人們對以太坊挖礦抗ASIC性的討論.

1900/1/1 0:00:00
龍抬頭 看纏論如何精準捕捉BTC 今日高點_BLU

作者:琛實&東哥,更多文章關注微信公眾號“琛和量化”。今天又是韭菜來回被收割的一天。 琛實--禪解幣市 先分享一段原文中經典語段:市場是有規律的,但市場的規律并不是顯而易見的,是需要嚴格.

1900/1/1 0:00:00
Wilshire Phoenix公開回應SEC關于比特幣ETF的決定_比特幣

Wilshire Phoenix 昨天回應了本周美國證券交易委員會(SEC)的決定,該決定拒絕批準其比特幣ETF的應用.

1900/1/1 0:00:00
Steem 社區發布軟分叉聲明 孫宇晨回應:希望和社區積極溝通_SYN

2 月 24 日,波場創始人孫宇晨于本月公布收購消息的去中心化社交平臺 Steem 社區內,包括見證人、開發人員和利益相關者共同撰寫了一份聲明.

1900/1/1 0:00:00
ads