
編者按:本文來自藍狐筆記(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治理合約。