以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads

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

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->TokenB。

事件具體分析

攻擊者使用相同的地址

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

馬斯克:推特已控制住開支,但仍不安全:12月26日消息,馬斯克在回復推特用戶時表示,盡管已經控制住了開支,但推特目前還不安全。公司只是沒有走上破產的快車道,但仍有很多工作要做。據此前消息,馬斯克表示一旦找到繼任者便會辭去CEO職務,之后將只會負責管理軟件和服務器團隊。[2022/12/26 22:07:25]

以太坊:

0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299

MATIC:

0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d

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

Round1

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

以太坊研發者評Yam事件:對社區沒有進行盡職調查感到不安:8月13日,以太坊研發者Philippe Castonguay發推談論Yam事件稱,難以置信的魯莽。無論從好的方面還是壞的方面來說,在幾個小時內就將2.5億美元轉移到一個未經審計的項目,這絕對是超現實的。希望看到很多人損失資金,并將這次損失作為一個教訓。隨后,Philippe Castonguay再次發推為該言論道歉稱,他并不想傷害任何人,只是對社區沒有進行盡職調查感到不安。[2020/8/13]

圖1?WETH兌換MONO

Round2

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

漏洞1:

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

Gavin Wood撰文回應雪崩協議質疑:雪崩協議不安全也無可拓展性:金色財經報道,7月28日,雪崩協議一名成員收集了雪崩協議社區內部一些對波卡的質疑,發布在了波卡 Riot 官方群,個中不乏對波卡可拓展性、插槽機制、跨鏈性能的貶損。Polkadot 聯合創始人Gavin Wood對此事的回應,雪崩協議所謂的子網安全性和波卡的共享安全性完全不是一回事。何談性能上的比較。實際上,雪崩協議類似一個中心化的Cosmos,由選出來的重疊的驗證人組充當了子網安全性。這將導致整個系統內各個鏈間的安全性有極大的不均。跨分片攻擊是可行的,因為來自一個(低安全性)鏈的消息可以導致另一個(更安全的)子網上的狀態遷移。這樣一來整個網絡的安全性就等同于安全性最差的那個鏈。

跟 Cosmos 的問題一樣,任何試圖設計一個中央區域以執行敏感邏輯的解決方案都會遇到可拓展性瓶頸,且會讓一部分鏈劣化為狀態轉換無法信任的二等公民。不管程序在哪個鏈上執行,都有同等級的安全性保障,這才是一個可拓展的系統。

綜上,雪崩協議并不安全,也不具備可拓展性。[2020/7/29]

聲音 | “公鑰密碼學之父”Diffie:區塊鏈是降低和改變網絡不安全性的一個主要方向:11月11日,2015年圖靈獎得主、有“公鑰密碼學之父”之稱的Whitfield Diffie在上海舉行的區塊鏈底層技術學術交流會上發表主題演講。Diffie認為,互聯網有三個主要性質:開放性、去中心化與支持社會變革,但它不可避免地存在一定不安全性,區塊鏈則是降低和改變網絡不安全性的一個主要方向。他稱,網絡安全涉及以下重要元素:一是安全計算,二是密碼學,三是從發現惡意軟件開始,防范它甚至回擊它。Diffie最后提出對網絡安全的幾點意見:開發抗量子的公鑰加密系統;重新審視未被解決的經典計算機安全問題,并用人工智能和其他新技術來解決;開發更多大規模的可信賴軟件系統。[2018/11/11]

圖2?_removeLiquidity源碼

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

金色財經現場報道 中國信息通信研究院高級工程師:智能合約并不安全:金色財經現場報道,在2018大數據產業峰會上,中國信息通信研究院高級工程師卿蘇德表示,新加坡和英國研究院發布的研究報告《Finding The Greedy,Prodigal,and Suicidal Contacts at Scale》中,包含440萬個以太幣的34000多份以太坊智能合約存在漏洞,2365個屬于著名項目;要么無限期鎖定資金或者隨意暴露給用戶,要么可以被任何人殺死。[2018/4/19]

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

Round3

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

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

Round4

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

漏洞2:

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

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

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

圖6?swapIn函數源碼

圖7?兌換過程參數計算

圖8?兌換后價格計算

圖9?swapOut函數源碼

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

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

圖10?初始MONO價格

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

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

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

圖12?MONO兌換細節

截止至兌換結束時,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地址。

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

事件復盤

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

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

Tags:MONONOMONOSWAPMonster of Godono幣今日價格Monopoly MetaKKSwap

幣安app下載
IMF敦促全球共同監管加密貨幣_區塊鏈

金色財經報道,國際貨幣基金組織敦促所有國家共同努力應對加密貨幣和其他新形式金融資產激增的影響,因為儲備銀行降低了將很快提供自己的數字貨幣的預期.

1900/1/1 0:00:00
從URL到IRL:社區對今天的Z世代意味著什么?_USD

對于Z世代,在這個線下面對面、線上線下混合以及線上同時活躍的時代,社區在我們的生活方式中發揮著越來越突出的作用。社區曾經是無關緊要的。一年前,建立社區在商人的議程中還遠遠不是最重要的.

1900/1/1 0:00:00
?清華大學教授史元春:“元宇宙”還只是科幻_元宇宙

近日,清華大學計算機教授史元春作客阿里研究院,參加“科技與人——元宇宙跨界對話”,與技術專家和科幻作家一起討論當下最熱門的“元宇宙”.

1900/1/1 0:00:00
金色前哨 | 持續推進監管 SEC主席稱新技術應納入公共政策框架_SEC

進入12月以來,美國證券交易委員會SEC正持續推進監管的步伐。12月13日消息,美國證券交易委員會主席GaryGensler在《華爾街日報》CEO理事會峰會上表示,只要項目試圖從公眾手中籌集資金.

1900/1/1 0:00:00
大廠數字藏品PK原生NFT 兩個流派通往別樣未來_NFT

過去兩年間,非同質化通證NFT成為一股席卷世界的潮流,不僅以太坊等鏈上原生NFT如火如荼地迭代,阿里巴巴、騰訊、Facebook等國內外互聯網巨頭也進入這一領域.

1900/1/1 0:00:00
發展元宇宙技術 不能忽略金融安全底線_元宇宙

在元宇宙概念火爆的當下,一些利用該概念進行違法犯罪的行為也悄然在社會上發生。近日央視記者揭露:許多打著元宇宙旗號的區塊鏈游戲,本質是網頁小游戲,需要用戶將人民幣先兌換為USDT泰達幣,再將泰達幣.

1900/1/1 0:00:00
ads