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

不安分的黑客又“偷襲”?MonoX被攻擊事件全解析_SWAP

Author:

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

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

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

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

攻擊者使用相同的地址

0xEcbE385F78041895c311070F344b55BfAa953258對以太坊以及MATIC上的MonoX發起了攻擊,在兩個平臺進行攻擊所部署的合約一致。攻擊交易為:

鮑威爾:除非出現令人不安的通脹和不均衡 否則將不會加息:美聯儲主席鮑威爾:除非出現令人不安的通脹和不均衡,否則將不會加息。如果通脹以不符合預期的方式出現,美聯儲有相應的工具。(金十)[2021/1/15 16:12:24]

以太坊:

0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299

MATIC:

0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d

由于兩個平臺代碼完全一致,下面的分析將基于以太坊上的攻擊交易進行。

Round 1

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

聲音 | 法律人士:境內虛擬貨幣交易平臺的運營團隊選擇“出海”并不安全:11月23日,中國經營報日刊文“嚴打非法集資 監管摸排整治虛擬貨幣”。文章表示,有行業人士稱,為“安全”起見,境內虛擬貨幣交易平臺的運營團隊會選擇“出海”,在國內只留下純技術開發團隊。針對上述行業人士的觀點,有法律人士告訴記者,這種情形就是掩耳盜鈴,所謂的“安全”并不安全。我國對于ICO行為的管轄形成了一個閉環,留下技術人員并不能解決問題,技術人員也是幫助犯罪的行為,那就當然歸屬于屬地管轄。即使全體都是海外人員,也會落入到屬人管轄范圍內。再進一步,交易所有關人員徹底放棄中國國籍,也可能掉入到保護管轄范圍。最后,如果涉及洗錢,反恐領域,普遍管轄也會兜底。[2019/11/23]

圖 1?WETH兌換MONO

Round 2

移除Monoswap所有的流動性。這里利用了Monoswap合約中的任意地址流動性移除漏洞。

漏洞1:

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

動態 | 加拿大各銀行或因QuadrigaCX存在洗錢問題而感到不安:據cointelegraph消息,當地時間2月22日舉行的法庭聽證會上,蒙特利爾銀行以及審計公司的律師表示,加拿大各銀行對管理QuadrigaCX資金感到不安,理由是其資金來源的不確定性。加拿大商業銀行援引安永會計師事務所代理律師Elizabeth Pillon的話表示,QuadrigaCX或存在洗錢問題,因此并不責怪銀行猶豫不決。[2019/2/24]

圖 2?_removeLiquidity源碼

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

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

聲音 | 李揮:導致當前網絡空間不安全的八個主要原因:據火訊財經報道,北大深圳研究生院未來網絡創新實驗室主任李揮在觀火號區塊鏈星際列車會議上以《區塊鏈與網絡通信安全》為主題做了演講。他表示:“網絡空間作為陸海空天之后的人類第5空間,意義重大且頻出安全問題。當前網絡空間不安全的八個主要原因為:漏洞存在的普遍性,后門的易安插性;開源和APP易傳播性,現有防御體系的被動性,病木馬的可植入性;最棘手的是如何應對3U:未知漏洞,未知后門,未知攻擊的不確定性威脅UT,以及IP中心化的問題。”[2018/12/16]

Round 3

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

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

Round 4

利用Monoswap合約中的代幣兌換價格覆寫漏洞,反復進行同種代幣的兌換,拉升MONO的價格。第3步攻擊者將Monoswap合約中MONO的儲量控制到了一個極小的值,目的就是更快的以極低的MONO數量來拉升MONO的價格。

聲音 | 北郵區塊鏈實驗室主任馬兆豐:目前的區塊鏈技術面臨著極度的不安全:據證券時報消息,近日,北京郵電大學區塊鏈及安全技術聯合實驗室馬兆豐主任表示,目前區塊鏈在安全性方面存在很大問題,區塊鏈安全技術需要在算法安全性、共識機制安全性、數據安全性、網絡安全性、合約安全性和應用安全性方面做好安全技術研究與加強。目前的區塊鏈技術卻面臨著極度的不安全,一些交易所甚至部分智能合約漏洞百出。但由于區塊鏈技術的特性,交易所賬戶即使被盜也無法追回,給用戶造成巨大損失。[2018/11/14]

漏洞2:

Monoswap合約的代幣兌換過程為:檢查兌換參數是否正常,然后計算應輸入輸出代幣的數量以及代幣兌換后的價格,最后執行兌換操作并將新的代幣價格寫入賬本。以上邏輯在不同種代幣兌換的時候會正常運行。但是在同種代幣兌換時,將出現兩處問題:

(1) 在_getNewPrice函數計算應輸入輸出代幣數量時,未考慮到兌換過程中交易池代幣儲量的變更,同種代幣是基于相同的初始價格進行兌換后價格的計算。

(2)在最后一步更新代幣過程中,未考慮到同種代幣進行兌換時,兌出代幣的價格更新操作(圖6 第841行)會覆蓋兌入代幣更新的操作(圖6 第830行)。該漏洞導致MONO代幣兌換MONO代幣時,MONO的價格異常增長。此外不止攻擊者使用的swapExactTokenForToken函數存在該問題,swapTokenForExactToken函數也存在該問題。

圖 6?swapIn函數源碼

圖 7?兌換過程參數計算

圖 8?兌換后價格計算

圖 9?swapOut函數源碼

現在看看攻擊者是如何利用漏洞2進行攻擊的:

(1)如圖10所示,初始MONO的價格為5.218 vCASH/MONO。

圖 10?初始MONO價格

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

圖 11?反復兌換,拉升MONO價格

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

圖 12?MONO兌換細節

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

圖 13?最終的MONO價格

(2)通過Uniswap V2的USDC/WETH池借入了847.2066974335073 WETH。然后攻擊者通過Monoswap將0.0709532091008681 MONO 兌換為4,029,106.880396 USDC,然后將USDC歸還給USDC/WETH池。注意,這里實際上是攻擊者將從Monoswap中兌換的USDC到Uniswap V2中兌換為WETH,而不是閃電貸攻擊。

(3)攻擊者所有轉出的資產如下:

所有被盜資產全部發送到

0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b地址。

目前項目方已經和攻擊者進行了溝通,成都鏈安將持續對此事件進行監控。

這次攻擊事件中,攻擊者利用了合約中的兩個漏洞:(1)任何地址都可以任意移除指定地址的流動性;(2)特殊情況下的價格寫入操作覆蓋問題。

建議項目方在進行合約開發過程中做好權限的檢查;在開發以及測試過程中將特殊情況納入考慮,例如同種代幣轉賬。

Tags:MONOMONONOSWAPMONO幣Dibs Moneykono幣會下架嗎OnigiriSwap

芝麻開門交易所下載
匯豐集團和IBM成功創建多賬本CBDC演示_BDC

周四,匯豐集團(HSBC)和IBM宣布在云環境中成功測試了兩種央行數字貨幣(CBDC)之間的高級代幣和數字錢包結算。試驗包括CBDC、eBond和外匯之間的交易.

1900/1/1 0:00:00
Epic Games銷售副總裁:虛幻引擎是支撐元宇宙技術的中堅力量_EPIC

游戲引擎技術正跨行業進入影視、汽車等領域隨著游戲產業蓬勃發展,引擎自然也在進化。玩家們越來越渴求高質量3A大作,游戲大廠們也透過引擎技術革新,提高制作游戲效率并生產高質量作品,豐富玩家游戲體驗.

1900/1/1 0:00:00
元宇宙不是空想 醫療保健領域已經從中受益_Holo

元宇宙還有多久才能實現?有人說十年,有人說二十年甚至更久。在理想中的元宇宙真正實現之前,其底層技術已經在影響乃至改變我們目前的諸多行業,醫療保健領域就是其中的代表.

1900/1/1 0:00:00
DAO可道:DeFi、NFT與GameFi的眾妙之門_DAO

一周前,Alice Ma和許多Twitter網友看到了蘇富比即將拍賣美國憲法副本的消息,他們擔心那些富翁拍下后將其據為己有,于是提議說:“不如我們一起把它買下來吧!”.

1900/1/1 0:00:00
以太坊的飛輪_EFI

寫在前面的話 今天以太坊4600美元,市值超過5400億美金,位列全球資產排名第15位,接近騰訊。而上個月以太坊還經歷了一場社區論戰,3ArrowCapital已經公開聲明拋棄以太坊.

1900/1/1 0:00:00
2013年《連線》雜志銷毀比特幣錢包私鑰 其中持有的13枚BTC現在價值76萬美元_BTC

一直不乏有一些人和機構嚴重低估加密貨幣的潛力。《連線》雜志(Wired)就是曾經對比特幣持否定態度的人之一,其在2013年銷毀了一個比特幣錢包的私鑰,該錢包持有13.34623579 BTC,目.

1900/1/1 0:00:00
ads