來源:medium.com
作者:Dominik Harz
編譯:頭等倉
如果不引入新治理合約的延遲,您有可能竊取Maker的所有抵押品(7億美元)并使用閃電貸發行任意數量的Dai。
任何人都可以執行攻擊,只需要支付交易費用(幾美元),而無需持有任何MKR。
如果Maker在閃電貸池的流動性池超過閾值之前不引入延遲,則幾乎沒有機會阻止攻擊(競賽條件)。
Maker知道了攻擊方式,并在2月21日舉行投票,以防止攻擊。
介紹
Maker及其Dai穩定幣是以太坊上最受歡迎的去中心化金融(DeFi)項目,智能合約鎖定了約7億美元。Maker協議依賴于智能合約中編碼的治理流程。MKR代幣持有人可以投票替換現有的治理合約,投票與MKR的持有量成正比。MKR代幣的總數約為987530 ,其中選定的錢包或合約持有大量代幣:
[Maker治理合約:192910 MKR] · Maker基金會:117993 MKR · a16z:60000 MKR 0xfc7e22c6afa3ebb723bdde26d6ab3783aab9726b:51291 MKR 0x000be27f560fef0253cac4da8411611184356549:39645 MKR
安全團隊:Journey of awakening項目遭受閃電貸攻擊,攻擊者獲取大量ATK代幣:金色財經報道,據Beosin EagleEye Web3安全預警與監控平臺監測顯示,Journey of awakening(ATK)項目遭受閃電貸攻擊。攻擊者通過閃電貸攻擊的方式攻擊了ATK項目的策略合約(0x96bF2E6CC029363B57Ffa5984b943f825D333614),從合約中獲取了大量的ATK代幣。
Beosin安全團隊分析發現攻擊者已把全部獲得的ATK代幣兌換為約12萬美元的BSC-USD,目前被盜資金已經在0xf2ade5950cdfb43b47fdb0a7bf87e9c84467981f地址被兌換成BNB并且全部轉移到龍卷風地址,Beosin安全團隊將使用Beosin Trace對被盜資金進行持續追蹤。[2022/10/12 10:32:20]
注意:Maker治理合約包含多方的MKR令牌。
治理攻擊
2019年12月,Micah Zoltu指出了如何攻擊治理合約。基本思想是積累足夠的MKR代幣,用攻擊者惡意的治理合約替換現有的治理合約。這樣,惡意治理合約便能夠使攻擊者完全控制系統,并撤回系統以及Dai中的任何抵押品。
Fairyproof:LP價格采用加權平均無法有效預防閃電貸:3月22日消息,Fantom上部署的DeFi應用OneRing Finance遭到攻擊。本次攻擊黑客的地址為Fantom上的0x12EfeD3512EA7b76F79BcdE4a387216C7bcE905e。黑客借助部署在0x6A6d593ED7458B8213fa71F1adc4A9E5fD0B5A58上的攻擊合約發起了本次攻擊。由于該合約在特定區塊會自行注銷,這使得外界難以追蹤OneRing上具體哪個函數被調用從而引發了本次攻擊。
在攻擊中黑客首先利用Celer Network的cBridge通過跨鏈獲得了發起攻擊的GAS。接下來在部署上述攻擊合約后的15分鐘,通過閃電貸向Solidly借到80,000,000USDC,通過推高LP價格,改變了OShare代幣的價格,從協議獲取大量OShare代幣,掏空了OneRing的資產。黑客最終將盜取的資金從Fantom跨鏈轉回到以太坊并最終通過Tornado.Cash套現。
在本次攻擊中,Fairyproof發現該協議計算LP價格的方式不合適,本協議使用的計算方式使得LP價格是瞬時價格,因此極易被操縱。[2022/3/22 14:11:03]
為了減少所需的MKR代幣數量,他建議在對新的治理合約進行投票時執行攻擊。目前,在治理合約中已鎖定192,910個MKR代幣。但是,如果將兩個或三個合約與類似的代幣分發并行地進行投票,則攻擊者將需要較少的代幣。
閃電貸套利機器人在巨鯨交易中花費約4ETH套利8萬多USDC:8月11日消息,監控套利空間的閃電貸機器人花費約4ETH 的gas費從Uniswap上套利8 萬多USDC。由于有“巨鯨”在Uniswap上用約1800萬美金USDT一次性購買約40,000ETH (相關閱讀:以太坊巨鯨在Uniswap上將ETH價格推高至450美元),造成了Uniswap上ETH超10% 的溢價;閃電貸機器人監控到該套利空間,花費約4ETH的gas費從中套利8 萬多USDC。
該筆交易哈希為0x01afae47b0c98731b5d20c776e58bd8ce5c2c89ed4bd3f8727fad3ebf32e9481。從Etherscan顯示的交易細節可看出,該筆交易包含了包括借款和還款在內的6步操作,共發生了15筆代幣轉移。(PANews)[2020/8/11]
如下圖所示,這種情況過去經常發生:
Aave閃電貸日交易量超1億美元,TVL排名升至第四:Aave已經見證了閃電貸的爆炸式增長——自7月初以來,閃電貸的日交易量增長超過1000%,從1100萬美元增長到7月27日的1.3億美元。根據DeFi Pulse的數據,創紀錄的貸款發放使Aave鎖定資產總價值(TVL)達到3.929億美元,成為位列第四的DeFi協議。在不到兩個月的時間里,Aave的LEND代幣價格也飆升了近500%,自價格發現以來,LEND首次升至0.3美元以上的局部高點。Aave目前的市值為3.62億美元,位列第34名。(Cointelegraph)[2020/7/29]
明顯的攻擊策略是通過智能合約對所需的MKR代幣進行眾籌,并向每位攻擊者支付一定份額的獎金。但是,攻擊者可能需要積累大約5萬個MKR代幣,才能有機會在沒有Maker注意到這些動作的情況下攻擊系統。
新攻擊策略:閃電貸
但是,如果我們考慮使用閃電貸,則可以完全取消大量MKR代幣的要求。閃電貸是一個相當新的概念,因此在此進行簡要說明。通常,借貸人必須提供抵押品以在DeFi項目中獲得貸款。例如,在Maker中,A可以通過存入ETH借用Dai。這是必需的,這是在弱身份和經濟上合理的代理人的模型下運作的。
OpenZeppelin開源類似閃電貸的實驗性項目FlashWETH:據官方消息,OpenZeppelin研究團隊成員AustinWilliams發布試驗性項目“可閃電鑄造的由資產支持的代幣”(Flash-MintableAsset-BackedTokens)的以太坊合約代碼,已部署至主網。該研究性項目類似于“閃電貸”,用戶可以通過該合約鑄造任意數量的代幣,然后在同一筆交易中銷毀相同數量的代幣即可,否則該交易將無效。此次發布的實驗項目“FlashWETH”還結合了類似WETH的(ERC-20包裹版ETH)機制,由ETH資產支持,所以可以用來進行套利交易。OpenZeppelin表示該項目的合約雖然簡單,但是尚未審計,謹慎使用。[2020/6/28]
閃電貸取消了這個要求,因為它僅在單個交易中發生:
1.A從閃電貸流動性提供者(如Aave或dYdX)中提取貸款。
2.A執行一些動作(例如,對Uniswap,Fulcrum,Kyber等進行套利交易)。
A償還了利息的閃電貸。
閃電貸之所以有效,是因為以太坊虛擬機的設計方式:
如果在該交易期間的任何時候,閃電貸失敗,那么整個交易將被還原。因此,A可以無償承擔貸款風險,如果無法償還貸款,那就像從未承擔過一樣。流動性提供者也獲得了勝利:他們只有在A能夠償還貸款的情況下才借出資金。
利用閃電貸和 Oracle進行操縱套利
2月14日和2月18日,發生了兩起涉及閃電貸的事件,導致bZx停止了平臺。在第一筆交易中,單筆閃電貸就能賺取1193 ETH(約298250美元)的利潤。該交易使用智能合約執行,該合約在wBTC上開設了Fulcrum的空頭頭寸。在同一筆交易中,該筆交易從Compound借出了wBTC貸款,并在Kyber的Uniswap儲備金上進行了wBTC的交易,導致滑點最終也降低了Fulcrum的價格,可以在bZx的事后評估中找到完整的詳細信息。
(頭等倉注:Fulcrum 是一款提供簡單、有效的貸款和保證金交易方式的產品,并稱目前是首個也是唯一完全無需信任的保證金平臺,免授權、免手續費,也無需創建賬戶。)
同樣,第二起事件發生在2月18日,在一次交易中獲利2378 ETH(約600000美元)。該交易涉及初始借入7500 ETH以在Synthetix?的 sUSD 上買入多頭頭寸。
對于攻擊,假設50k MKR就足夠了。即使在實踐中,代幣的數量可能會更多,閃電貸款的概念如何使Maker的安全難以保證,而不會造成治理延遲。以一種幼稚的方法,攻擊者可以借一筆小額貸款購買5萬個MKR代幣。
以目前的匯率,攻擊者需要大約485000 ETH來購買該數量的MKR,只有一個交易所Kyber有足夠的可用容量。但是,攻擊者還可以利用多個交易所從Kyber購買38k MKR,從Uniswap購買11.5k MK,從Switcheo購買500 MKR,總計378940 ETH。這個數字仍然很高,但已經減少了近100,000 ETH!
攻擊者可以使用上面的 Oracle操作策略來有效降低Kyber和Uniswap上的MKR價格。這是MKR的兩個最大的提供者,并且顯示出容易受到oracle價格操縱的影響,需要進一步分析以確定MKR價格可以降低多少。但是,在像wBTC這樣的流動性較低的代幣上,攻擊者能夠將價格波動操縱大約285%。
即使使用oracle操作,也需要大量ETH來執行對Maker的攻擊。攻擊者可以通過在同一筆交易中提取兩筆閃電貸款來增加其流動性。Aave和dYdX保護自己免受重新進入的侵害,并且在單筆交易中僅允許一筆閃電貸款,但是攻擊者可以在同一筆交易中從這兩種協議借用ETH。
組合方案
顯然,可以將眾籌和閃電貸結合起來。使用約107k ETH的可用流動性,有可能從Kyber獲得約10800 MKR。這樣一來,多個攻擊者就可以將合計50k MKR的所需數量減少到大約39.2k MKR。正如非正式的Twitter調查顯示,似乎有些人確實對這種攻擊感興趣:
還應注意,排名前四的帳戶持有人(實際上是五個,但不考慮當前的Maker治理合約)能夠在無需眾籌的情況下執行攻擊。
最好的攻擊時機
一旦可以通過閃電貸池獲得足夠的流動性(使用或不使用oracle操作的組合),任何人都可以接管Maker治理合約。當流動性池達到該閾值時,一旦Maker開始投票,Maker就需要確保MKR代幣分配得盡可能少。如果在此投票過程中的任何時候分發MKR都可以利用此漏洞,則可以剝奪任何抵押品。
攻擊者將能夠竊取價值7億美元的ETH抵押品,并能夠隨意創造新的Dai。由于Dai被用作其他協議的支持抵押品,因此這種攻擊將遍及整個DeFi項目。此外,攻擊者還可以利用他的Dai交易價值約2.3億美元的其他貨幣。
對策
Maker 應修訂新的治理合約,防止閃電貸攻擊它的系統。具體來說,Maker 基金會應該能夠檢查新的治理合約中是否存在惡意代碼,并給予足夠的時間做出反應。最低限度,新的治理合約不應在單個交易中生效。這樣,攻擊者可能無法從攻擊中獲利,從而無法償還閃電貸。
如果攻擊者無法償還閃電貸,那么攻擊就永遠不會發生。
Maker將在2020年2月21日將此類合約進行表決。擬議的合約將激活治理安全模塊(Governance Security Module),并防止此類閃電貸攻擊。
著者說 近期數字經濟表現比較搶眼,不僅比特幣終于又過萬了,而且在很多加密數字貨幣都在上漲。這篇文章就是對在疫情如何影響數字貨幣的本質的分析,以及如何理解比特幣的長期價值的構建,最后我們還會討論央.
1900/1/1 0:00:00昨夜今晨,主流數字貨幣普跌。比特幣在夜間的空頭情緒已經蔓延到今天,導致加密貨幣今天緩慢下跌。截至發稿前,比特幣報價9754USDT,24h變化-1.08%,ETH報價248.64USDT,24h.
1900/1/1 0:00:00V神:中本聰共識存在信任假設并不能說明其不客觀:9月14日早間,有推特網友表示“中本聰的共識并不是客觀的。就像PoS協議中要求的弱主觀假設一樣,其也具有主觀成分.
1900/1/1 0:00:00市場分析 比特幣(BTC)的多頭們正在慶祝這個數字資產在進入20年代來的首次飆升至1萬美元以上,但由于比特幣未能在足夠長的時間內維持在1萬美元以上,人們的微笑是短暫的.
1900/1/1 0:00:00以太坊聯合創始人Vitalik Buterin在2月19日的斯坦福區塊鏈會議上接受采訪時,討論了以太坊2.0的計劃.
1900/1/1 0:00:00比特幣是那里最稀有的資產之一,這不是秘密,但是您是否想知道最大的加密貨幣到底有多稀有? 比特幣的增值空間還很大 想象一下,如果有一個新的全球機構冒出來,通過一個類似聯合國的機構監管世界.
1900/1/1 0:00:00