閃貸策略:攻擊者能取走Maker的7億美元抵押品嗎?
蓝狐笔记
2020-02-21 08:46
本文约3953字,阅读全文需要约16分钟
無須持有MKR也可以對Maker發起攻擊?

編者按:本文來自藍狐筆記(ID:lanhubiji),Odaily經授權轉載。

藍狐筆記(ID:lanhubiji)

摘要

  • 藍狐筆記(ID:lanhubiji)

  • ,Odaily經授權轉載。

  • 藍狐筆記(ID:lanhubiji)

  • 摘要

  • 藍狐筆記(ID:lanhubiji)

介紹

摘要

  • ,Odaily經授權轉載。

  • 二級標題

  • a16z: 60,000 MKR 

  • 0xfc7e22c6afa3ebb723bdde26d6ab3783aab9726b: 51,291 MKR

  • 0x000be27f560fef0253cac4da8411611184356549: 39,645 MKR

摘要

如果Maker在閃貸池的流動性超過閥值之前,不引入延遲,則幾乎沒有機會阻止攻擊。

二級標題2020年2月8日我們曾跟Maker聯繫,並於2020年2月14日跟他們聯繫討論我們的發現。二級標題

二級標題

Maker及其Dai穩定幣是以太坊DeFi上最受歡迎的項目,其智能合約鎖定了大約7億美元。 (藍狐筆記:當前大約6億美元,跟ETH價格波動相關)Maker協議依賴編碼於智能合約的治理流程。 MKR代幣持有人可以投票取代現有的治理合約。投票票數跟MKR數量成正比。 MKR的總代幣量為987,530,其中選定的錢包或合約持有大量的代幣:

Maker基金會:117,993 MKR

圖片描述

在2019年12月的一篇文章中,Micah Zoltu指出如何攻擊Maker治理合約。 (藍狐筆記:具體參考《加密閃貸:互聯網貨幣的神奇新發明》)

二級標題

圖片描述

為了減少所需的MKR代幣數量,他建議在對新治理協議進行投票時執行攻擊。目前,治理合約中已鎖定192,910個MKR。但是,如果假設兩到三個合約用類似代幣分配進行並行投票,那麼攻擊者將需要較少的代幣。如下圖,這種情況在過去經常發生:

加密閃貸:互聯網貨幣的神奇新發明

圖片描述

最明顯的攻擊策略是通過智能合約眾籌所需的MKR代幣,並在勝利後給每個參與者分配相應的收益。然而,攻擊者可能需要累積大約5萬個MKR代幣,才有機會在不被Maker注意到的情況下發起對系統的攻擊。

勇敢的新攻擊策略:閃貸

圖片描述

不過,如果我們考慮使用閃貸,則可以完全無須考慮累積MKR代幣。閃貸是相當新的概念,因此我們可以給予簡要說明。 (藍狐筆記:關於閃貸flashloan,可以參考之前的文章《

加密閃貸:互聯網貨幣的神奇新發明而閃貸將這些要求都去掉,因為它僅在單個交易中發生:》)

*Alice從閃貸流動性提供商中獲得貸款(例如在Aave或dYdX中)

*Alice執行一些操作(例如,對Uniswap、Fulcurm、Kyber等進行套利交易)

圖片描述

二級標題

因此,Alice可以承擔貸款的風險,即,如果她無法償還貸款,她也永遠不會承擔其風險。流動性提供商也獲得勝利:他們只有在Alice能夠償還貸款的情況下才會出藉其資金。

利用閃貸進行套利或預言機操縱

在2月14日和2月18日,兩起跟閃貸有關的事件導致bZx停止其平台。在第一次的交易中,一次閃貸獲利1,193ETH,大約298,250美元。該交易使用智能合約執行,在Fulcrum上開了wBTC的空頭頭寸。在同一筆交易中,該交易從Compound中藉出一筆wBTC貸款,並在kyber的Uniswap儲備池中交易wBTC,導致很大的滑點,最終也將Fulcrum的價格降低。具體可參考bZx和peckShield的分析。 (藍狐筆記:也可參考之前藍狐筆記的文章《

二級標題

bZx事件的啟示

預言機操縱以減少所需的流動性

二級標題

按照目前的匯率,攻擊者需要大約485,000ETH,用來購買MKR,因為只有一個交易所Kyber有足夠的量。但是,攻擊者也可以在多個交易所購買MKR,在Kyber買入3.8萬的MKR,在Uniswap買入1.15萬的MKR,從Switcheo買入500MKR,共計需要378,940ETH。這個數字依然很高,但已經減少了近10萬ETH。

攻擊者可以使用預言機操控策略以有效降低Kyber和Uniswap上MKR的價格。這是兩個最大的MKR提供商,並顯出很容易受到預言機價格操縱的影響。需要進一步分析來確定MKR價格可以降低多少。但是,像wBTC這樣的流動性較低的代幣,攻擊者能夠將匯率操縱大約285%。

二級標題

二級標題

Aave上鎖定的ETH

二級標題

即使使用預言機操縱,也需要大量的ETH執行對Maker的攻擊。但是,攻擊者可以通過在同一次交易中進行兩筆閃貸來提高其流動性。 Aave和dYdX為了保護自己免遭重入攻擊的傷害,在一次交易中僅允許單筆閃貸。但是,攻擊者可以在同一筆交易中從這兩個不同協議中藉出ETH。

因此,截止到2月18日,攻擊者在dYdX上擁有一個9萬ETH池,在Aave上有1.7萬ETH池。因此,以當前的流動性,攻擊者可以從dYdX和Aave那裡獲得共計大約10.7萬ETH的貸款,通過借入的ETH,試圖用來操縱MKR代幣價格,並由此獲得足夠的MKR代幣,以取代當前Make治理合約。

蓝狐笔记
作者文库