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

自動做市商協議MonoX遭閃電貸攻擊事件全解析_SWAP

Author:

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

11月30日,鏈必應-區塊鏈安全態勢感知平臺輿情監測顯示,自動做市商協議MonoX遭閃電貸攻擊,獲利約3100萬美元。關于本次攻擊,成都鏈安技術團隊第一時間進行了事件分析。#1事件概覽

攻擊發生之后,MonoX在官方推特確認其合約遭到攻擊,團隊正在調查并將盡最大努力追回被盜資金。

MonoX使用單邊代幣池模型,其使用vCASH穩定幣與AMM提供的代幣創建虛擬的交易對。簡單來說,MonoX創建的是代幣-vCASH交易對,添加流動性時,只需要添加代幣,進行任意代幣兌換時,兌換路徑為:代幣A->vCASH->代幣B,而不需要像Uniswap一樣經過多個交易對:代幣A->Pair1->Pair2->Pair3->TokenB。#2事件具體分析

攻擊者使用相同的地址0xEcbE385F78041895c311070F344b55BfAa953258對以太坊以及MATIC上的MonoX發起了攻擊,在兩個平臺進行攻擊所部署的合約一致。攻擊交易為:以太坊:0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299MATIC:0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d由于兩個平臺代碼完全一致,下面的分析將基于以太坊上的攻擊交易進行。Round1

Solana自動做市商協議Raydium將推出NFT發行平臺Dropzone:9月9日,SolanaNews官方發布推文稱,Solana自動做市商協議Raydium將推出NFT發行平臺Dropzone。DropZone將成為Solana熱門NFT項目的啟動平臺,包括籌集資金,無縫分發NFT項目合集,并建立他們的社區等。[2021/9/9 23:13:24]

將0.1WETH通過Monoswap中兌換為79.98609431154262101MONO;

圖1WETH兌換MONORound2

移除Monoswap所有的流動性。這里利用了Monoswap合約中的任意地址流動性移除漏洞。漏洞1:Monoswap合約中未檢測流動性的所有者to是否為msg.sender。_removeLiquidity函數中,如圖2所示,第443行,獲取調用者(攻擊合約)最后一次添加流動性的時間戳,返回結果是0,因此第445行的檢測通過。第446行,topLPHolderOf如果不是調用者(攻擊合約)地址,第447行的檢測通過。此后移除流動性相關代碼中,再無msg.sender相關的操作。

Uniswap將在2021年改善自動做市并探索擴容解決方案:12月31日,Uniswap在其《2020年度回顧》中發布2021年路線圖。具體內容包括:1.改善自動做市:團隊繼續研發AMM技術,在v3上取得長足進展。2.探索擴容解決方案以降低延遲交易、加快結算速度和降低交易成本。3.加強治理:Uniswap核心團隊成員計劃在2021年以個人身份更直接地參與治理,包括公開支持或反對提案。此外,核心團隊可以將投票權委托給他人或自己,治理工作將繼續由社區主導。[2021/1/1 16:12:02]

圖2_removeLiquidity源碼

圖3第一次移除流動性內部調用細節

Visa加密貨幣負責人:自動做市商將可兼容加密資產:金色財經報道,Visa加密貨幣負責人Cuy Sheffield今日發推文解釋了為什么非加密貨幣受眾也對自動做市商(AMM)感興趣。Sheffield稱,自動做市商就像獨立于任何公司或管理員的網站,世界上任何人都可以訪問并快速地將一項資產轉換為另一項資產。因此,與其要求公司建立和運營交易所,列出特定資產,然后讓專業交易者選擇用戶進行交易的資產,網站將充當交易所,用戶列出任何他們想要的資產,擁有資產的用戶結合算法則可充當專業交易員或做市商的角色。世界上任何想要購買該資產的人都可以立即進入該市場并通過互聯網獲取它,這可以適用于法幣(穩定幣)、數字商品(ETH和BTC),甚至適用于收藏品或游戲內資產(NFT)。它們還使任何人都可以輕松有效地在掛鉤相同的兩種形式的資產之間進行轉換,例如DAI/USDC,有點類似于將PayPal帳戶中的100美元快速轉換為Cash App帳戶中的100美元。[2020/9/28]

圖4移除Monoswap中MONO池所有的流動性Round3

Ocean Protocol與Balancer Labs合作將創建數據自動做市商:9月24日消息,基于區塊鏈的數據貨幣化創業公司OceanProtocol宣布將與BalancerLabs合作,創建首個用于數據的自動做市商(AMM)。據悉,OceanProtocol旨在幫助個人和企業解鎖數據并將其貨幣化,將數據和人工智能的好處擴展到少數囤積、控制并從中致富的組織之外。Ocean創始人TrentMcConaghy表示,創建高效的數據市場是實現這一目標的關鍵,因此與BalancerLabs達成合作。(CoinDesk)[2020/9/24]

添加極少數量的MONO到Monoswap中,這一步是為了后面快速提升MONO的價格做準備。

圖5攻擊合約添加流動性Round4

利用Monoswap合約中的代幣兌換價格覆寫漏洞,反復進行同種代幣的兌換,拉升MONO的價格。第3步攻擊者將Monoswap合約中MONO的儲量控制到了一個極小的值,目的就是更快的以極低的MONO數量來拉升MONO的價格。漏洞2:Monoswap合約的代幣兌換過程為:檢查兌換參數是否正常,然后計算應輸入輸出代幣的數量以及代幣兌換后的價格,最后執行兌換操作并將新的代幣價格寫入賬本。以上邏輯在不同種代幣兌換的時候會正常運行。但是在同種代幣兌換時,將出現兩處問題:在_getNewPrice函數計算應輸入輸出代幣數量時,未考慮到兌換過程中交易池代幣儲量的變更,同種代幣是基于相同的初始價格進行兌換后價格的計算。在最后一步更新代幣過程中,未考慮到同種代幣進行兌換時,兌出代幣的價格更新操作會覆蓋兌入代幣更新的操作。該漏洞導致MONO代幣兌換MONO代幣時,MONO的價格異常增長。此外不止攻擊者使用的swapExactTokenForToken函數存在該問題,swapTokenForExactToken函數也存在該問題。

1inch旗下自動做市商服務Mooniswap,24小時鎖倉代幣價值超過550萬美元:8月12日,由1inch推出的自動做市商服Mooniswap在推出后24小時,平臺鎖倉代幣價值已超過550萬美元。8月11日消息,去中心化交易平臺(DEX)聚合協議1inch.exchange今日宣布推出自動做市商服務Mooniswap,這一新的AMMDEX對Uniswap的設計進行了改進,其會把套利者的部分收益重新分配給流動性池,并保護交易者免受搶先交易攻擊,根據模擬實驗,Mooniswap為流動性提供者帶來的收入,預計將比UniswapV2多50%至200%。[2020/8/12]

圖6swapIn函數源碼

圖7兌換過程參數計算

圖8兌換后價格計算

圖9swapOut函數源碼現在看看攻擊者是如何利用漏洞2進行攻擊的:如圖10所示,初始MONO的價格為5.218vCASH/MONO。

圖10初始MONO價格然后攻擊者反復進行MONO->MONO的兌換,一共進行了55次兌換,如下圖所示:

圖11反復兌換,拉升MONO價格對其中一筆兌換交易進行分析,每次兌換的數量是交易池中MONO的總量減去1,這是能夠最大提升MONO價格的兌換數量(使圖8_getNewPrice第527行,分母為1)。另外由于交易池中MONO的總量較低,攻擊者已經通過第1步保證了有足夠的余額進行兌換操作。

圖12MONO兌換細節截止至兌換結束時,MONO的價格已經被拉升至843,741,636,512.366vCASH/MONO。攻擊合約中剩余51.92049285389317MONO。

圖13最終的MONO價格通過UniswapV2的USDC/WETH池借入了847.2066974335073WETH。然后攻擊者通過Monoswap將0.0709532091008681MONO兌換為4,029,106.880396USDC,然后將USDC歸還給USDC/WETH池。注意,這里實際上是攻擊者將從Monoswap中兌換的USDC到UniswapV2中兌換為WETH,而不是閃電貸攻擊。攻擊者所有轉出的資產如下:

所有被盜資產全部發送到0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b地址。目前項目方已經和攻擊者進行了溝通,成都鏈安將持續對此事件進行監控。#3事件復盤

這次攻擊事件中,攻擊者利用了合約中的兩個漏洞:任何地址都可以任意移除指定地址的流動性;特殊情況下的價格寫入操作覆蓋問題。建議項目方在進行合約開發過程中做好權限的檢查;在開發以及測試過程中將特殊情況納入考慮,例如同種代幣轉賬。

Tags:MONMONOONOSWAPXMON價格Bumono NetworkChronoBaseDoveSwap Finance

幣安交易所app下載
星球日報|ConstitutionDAO (PEOPLE)24小時交易量超3200萬美元;SHIB持有者總數達100萬(11月26日)_DAO

頭條 北京:建設法定數字貨幣試驗區和數字金融體系11月24日,北京市十五屆人大常委會第三十五次會議對《中國(北京)自由貿易試驗區條例(草案)》進行首次審議.

1900/1/1 0:00:00
「募捐式DAO」走向炒作中心,DAO如何從逐利走向高級協作體?_ROS

加密世界的進化史是一部熱點輪動史,當DeFi、NFT和GameFi逐漸不再性感時,DAO來了。ConstitutionDAO是引爆這波DAO浪潮的主力,雖然沒能成功拍得美國憲法副本,但許多參與捐.

1900/1/1 0:00:00
解析元宇宙的驅動力:如何在元宇宙中注入社交元素?_區塊鏈

「從本質上講,人是一種社會動物,那些生來離群索居的個體,要么不值得我們關注,要么不是人類。」——亞里士多德來源|碳鏈價值責編|Carol當Facebook,這個全球規模最大的社交網絡宣布將公司更.

1900/1/1 0:00:00
以太坊Kintsugi合并測試網正式上線,推進主網向PoS過渡_KINT

從Amphora合并研討會回來后,各客戶端團隊一直在努力實現最新版本的合并規范,并在devnets(開發者網絡)上進行測試.

1900/1/1 0:00:00
星球日報 | 俄羅斯央行禁止共同基金投資加密貨幣;過去12個月“web3”全球搜索量大幅上升(12月14日)_區塊鏈

頭條 俄羅斯央行禁止共同基金投資加密貨幣星球日報訊12月13日,俄羅斯央行發布了關于規范共同投資基金投資機會的官方聲明,禁止基金經理購買加密貨幣以及價值取決于數字資產價格的金融工具.

1900/1/1 0:00:00
去中心化交易平臺dYdX的進擊之路:如何通過永續合約攻占市場?_Uniswap

來源:Messari作者:MessariHub分析師編譯:AmyLiu去中心化衍生品交易平臺dYdX第2層協議上線后六個月就在日交易量上超過了Coinbase.

1900/1/1 0:00:00
ads