比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 非小號 > Info

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

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?事件具體分析

攻擊者使用相同的地址

Alameda Research 前聯席首席執行官:2022年3月FTX.com的現金赤字已超100億美元:7月21日消息,據最新的法庭文件顯示,從FTX.com交易所成立之初,FTX就將客戶存款和公司資金混在一起,并肆意濫用。到2022年8月,Bankman-Fried、Wang、Singh和Ellison私下估計,FTX.com交易所欠客戶的法定貨幣超過80億美元,但無法償還。為了掩蓋虧空,SBF等人在FTX.com上創建了一個虛假的客戶賬戶,他們稱之為我們韓國朋友的賬戶。盡管媒體關注的焦點是SBF在2022年8月對韓國朋友虛假賬戶所反映的89億美元現金負債的估算,但SBF等人的估算甚至更高。譬如,2022年3月,AlamedaResearch前聯席首席執行官CarolineEllison在私人筆記中估計,僅FTX.com的現金赤字就超過100億美元。[2023/7/21 11:08:36]

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

報告:優質的NFT具有很強的社區共識和團隊背景和鮮明的藝術風格:金色財經報道,ParaSpace和BitKeep最近發布的一份報告表示,NFT 是一個新市場,缺乏歷史數據和公認的估值分析方法,導致定價困難。即使在同一 NFT 系列中,基于主觀觀點對稀有性的不同看法也導致了巨大的價格差異。優質的NFT往往具有很強的社區共識和團隊背景和鮮明的藝術風格。但普通用戶參與藍籌或熱門NFT的門檻越來越高。現在已經出現了一些解決方案,比如NFT碎片化, NFT 質押,以及 NFT 流動性平臺。[2023/6/6 21:18:01]

以太坊:

0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299

MATIC:

0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d

以太坊Gas費短時上升至83gwei:金色財經報道,以太坊Gas費短時上升至83gwei。[2023/1/16 11:13:40]

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

Round1

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

圖1?WETH兌換MONO

Round2

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

漏洞1:

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

數據:50104997枚BUSD從未知錢包轉移至幣安:7月14日消息,據Whale Alert數據,50,104,997枚BUSD從未知錢包轉移至幣安。[2022/7/14 2:13:36]

圖2?_removeLiquidity源碼

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

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

Round3

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

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

Round4

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

Clearpool:TPS Capital借款人池已移除,確保未造成資金損失:6月19日消息,針對此前去中心化借貸平臺Clearpool在6月9日推出三箭資本旗下OTC平臺TPS Capital的借款人池,并稱彼時TPS Capital的借款人評級為“A”,總借款能力為1730萬美元。Clearpool官方今日回應稱,平臺的數據合作伙伴X-Margin在上周末時已經將TPS評級降為“B”,且借款能力降為0美元,并且雙方已經合作確保 TPS 償還未償還的貸款,確保出借方沒有受到損失。[2022/6/20 4:39:08]

漏洞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,而不是閃電貸攻擊。

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

幣種數量USDC4,029,106.880396?(兌換為847.2066974335073WETH)USDT4,525,120.098829?WETH452.9120530334938WBTC21.42797145DUCK5,155,863.718616853MIM4,125.858256772IMX274.9390440877583

所有被盜資產全部發送到0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b地址。

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

#3?事件復盤

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

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

Tags:ONOMONMONOSWAPbiconomy幣是那個國家的FreshCut DiamondMonoeciZyberswap

非小號
吳說每周礦業資訊:礦池大范圍無法登陸 福建要求清零 1122-1128_ESS

吳說作者?|?ColinWu本期編輯?|?ColinWu 1. 據OKLink數據,DCG旗下比特幣礦池FoundryUSA一度在24小時內挖出25個區塊,排名第一.

1900/1/1 0:00:00
“狗狗幣”是目前美國搜索次數最多的加密貨幣_比特幣

根據TheAdvisorCoach的說法,“狗狗幣”DogeCoin是美國23個州是谷歌搜索量最多的加密貨幣,搜索量甚至超過“比特幣”和“以太幣”的總和.

1900/1/1 0:00:00
Damien Hirst贈送NFT,AMC與《蜘蛛俠》合作_NAN

為了慶祝索尼影業的《蜘蛛俠3》在全美影院的首映,AMCTheatres正在計劃一場NFT宣傳活動.

1900/1/1 0:00:00
墨初論幣:砸盤造成的恐慌對應法則_YAG

2021年11月27日周六十月廿三???昨日跌幅10%,新低點:53500,未啟動百億工程。312,519這個季度不會再有,沒這種搶籌的機會了,除非市場整體彈盡糧絕,可仔細想想,果真出現一年兩次.

1900/1/1 0:00:00
紅杉布局區塊鏈安全賽道,以近10億美元估值領投CertiK 8000萬美元B2輪_ERT

CertiK于2021年11月30日,宣布完成8000萬美元的B2輪融資,再次刷新區塊鏈安全賽道單筆最大融資額.

1900/1/1 0:00:00
以NFT.DAO為起點構建元宇宙:99 District的藍圖_STR

今年NFT市場飛速成長,從小眾市場走入大眾視野。其衍生的去中心化交易、數字社區和元宇宙等概念也隨之引起熱烈討論和關注,成為人們茶余飯后的談資.

1900/1/1 0:00:00
ads