原標題|千萬美元被盜——DeFi平臺MonoXFinance被黑分析
作者|九九@慢霧安全團隊
2021年11?30?,據慢霧區消息,DeFi平臺MonoXFinance遭遇攻擊,本次攻擊中約合1820萬美元的?WETH和1050萬美元的MATIC被盜,其他被盜Token包括WBTC、LINK、GHST、DUCK、MIM和IMX,損失共計約3100萬美元。慢霧安全團隊第?時間介?分析,并將簡要分析結果分享如下。
攻擊核心
本次攻擊的核?在于利?swap合約中沒有對池中傳?和傳出代幣是否相同作檢查,以此利?價格更新機制的缺陷,使得攻擊者傳?和傳出代幣相同時,價格被二次計算并覆蓋,導致代幣價格不斷被推?,并以此代幣換出池中的其他代幣來獲利。
相關信息
MonoX是?種新的DeFi協議,使?單?代幣設計?于流動性池。這是通過將存?的代幣與vCASH穩定幣組合成?個虛擬交易對來實現的。其中的單?代幣流動性池的第?個應?是?動做市商系統-Monoswap,它在2021年10?時推出。
Vauld獲得另一項債權人保護延期至4月28日:金色財經報道,加密貨幣借貸平臺 Vauld 債權人保護期再次延長至 4 月 28 日。[2023/3/27 13:29:35]
攻擊者地址1:
0xecbe385f78041895c311070f344b55bfaa953258
攻擊者地址?2:
0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b
攻擊合約?1:
0xf079d7911c13369e7fd85607970036d2883afcfd
攻擊合約2:
0x119914de3ae03256fd58b66cd6b8c6a12c70cfb2
攻擊交易1:
NULS正式上線EVM Layer 2兼容網絡ENULS:2月15日消息,NULS宣布由其社區發起的EVM兼容網絡ENULS于今日上線。ENULS使用NULS作為主鏈資產,依托跨鏈生態Nerve Network完成鏈上資產與多鏈之間的交互。低成本、低門檻,以及全方位的社區、技術、資金等資源扶持將有助于EVM生態項目在ENULS網絡快速部署。
據悉,目前Mathwallet、Nabox、ONTO、Coinhub等錢包生態,NerveBridge、CUBISWAP、Wormhole 3、SwapBox、Bridge Oracle等項目已開始在ENULS主網部署。[2023/2/15 12:08:36]
https://etherscan.io/tx/0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299
美國職業棒球大聯盟正在招聘與NFT、元宇宙相關的職位:金色財經報道,據LinkedIn的一篇帖子,美國職業棒球大聯盟正在招聘數字游戲、NFT、元宇宙相關的經理(Licensing Manager)以擴大其在 NFT、游戲、元宇宙和其他 web3 領域的戰略合作伙伴關系。?[2022/10/20 16:30:38]
攻擊交易2:
https://polygonscan.com/tx/0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d
攻擊細節
1、首先攻擊者調用Monoswap.swapExactTokenForToken:0.1個WETH換出79.986094311542621010個MONO。
2、接著攻擊者利用漏洞移除池子中其他用戶的流動性,并為添加攻擊合約的流動性以此來獲取最大的利益。
Voyager以200萬美元出售加密平臺Coinify所有股權給Ascension ApS:8月18日消息,加密借貸公司Voyager宣布以200萬美元現金出售加密貨幣平臺Coinify的所有股權給Ascension ApS。如果Ascension ApS在交易后三年內隨后出售Coinify,則規定了額外的有條件的盈利支付,從而為Voyager保留了潛在的上漲空間。
據悉,Coinify是一個在歐洲、亞洲和其他地區運營的加密貨幣平臺,通過Coinify API提供個人和企業加密貨幣交易、加密支付處理服務和企業解決方案。Voyager于2021年8月購買了Coinify。2022年8月16日,Coinify的出售計劃獲得了紐約南區美國破產法院的批準。(prnewswire)[2022/8/18 12:33:28]
這里移除流動性處的漏洞在Monoswap.sol中的471-510行,移除池中流動性時通過removeLiquidity函數調用_removeLiquidityHelper函數,而這兩個函數都未做調用者和傳入的to參數的身份驗證,所以可直接移除任意用戶在池中的流動性。
數據:The Sandbox將于8月13日解鎖約3.7億枚SAND,約占總供應量的12%:8月11日消息,據token unlocks數據顯示,The Sandbox的LAND代幣將于北京時間8月13日16:00解鎖372715715枚SAND,占總供應量(30億枚)的12.424%。
其中,公司儲備解鎖83,785,715枚,顧問解鎖50,400,000枚,團隊解鎖71,250,000枚,基金會解鎖40,200,000枚,戰略銷售解鎖24,000,000枚和種子輪銷售解鎖103,080,000枚。[2022/8/11 12:17:52]
移除0x7b9aa6的流動性,把1670.7572297649224個MONO和6.862171986812230290個vCASH轉出給0x7b9aa6;移除cowrie.eth的流動性,把152.9745213857155個MONO和0.628300423692773565個vCASH轉出給cowrie.eth;移除0xab5167的流動性,把99940.7413658327個MONO和410.478879590637971405個vCASH轉出給0xab5167;為攻擊合約1在MONO代幣流動池創建流動性。
3、緊接著攻擊者調??55?次?Monoswap.swapExactTokenForToken以此來不斷堆?MONO的價格。
這里攻擊的核心是在Monoswap.sol中的swapExactTokenForToken函數,攻擊者傳入MONO代幣使得tokenIn和tokenOut是相同的代幣。
跟到swapIn函數中:
可以發現在swapIn函數中,調用了函數getAmountOut來計算價格。接著跟到getAmountOut函數中發現是利用了_getNewPrice函數來計算tokenInPrice和tokenOutPrice。
跟到_getNewprice函數中,發現當計算tokenInPrice時候傳入的txType參數為TxType.SELL,此時:
當計算tokenOutPrice時候傳入的txType參數為TxType.BUY,此時:
如果傳入和傳出為同一種代幣時,價格計算式中的四個變量都相同,所以很容易得出tokenOutPrice會比tokenInPrice要大。
由于tokenIn和tokenOut是同一個token,swapIn函數在計算完價格后會再次調用_updateTokenInfo函數,使得tokenOutPrice的更新會覆蓋tokenInPrice的更新,所以導致這個token的價格上漲。
4、最后攻擊者調用swapTokenForExactToken函數用MONO來換出池子中的其他代幣。
swapTokenForExactToken函數中調用了swapOut函數,而swapOut函數中計算價格是調用的getAmountIn函數。
在該函數中由于tokenInPoolPrice是取的MONO代幣在池中的價格,而此價格在之前已被推高,導致tokenInPrice變大,計算最后的amountIn變小,用更少的MONO換出了原來相同數量的WETH、WBTC、MONO、USDC、USDT、DUCK、MIM、IMX等池子中的代幣。
5、攻擊者最終把攻擊獲利轉入地址
0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b。
以上為以太坊主鏈上的攻擊分析,此外,攻擊者除了在以太坊主鏈上進行攻擊外,還在Polygon上進行了同樣的攻擊,攻擊手法與以太坊主鏈上相同,此處不做過多重復的分析。
據慢霧AML統計,MonoXFinance最終損失約3400萬美元,包括約2.1K個WETH、1.9M個WMATIC、36.1個WBTC、143.4K個MONO、8.2M個USDC、9.1M個USDT、1.2K個LINK、3.1K個GHST、5.1M個DUCK、4.1K個MIM以及274.9個IMX。
總結
本次攻擊是利用了swap合約里沒有對池中傳入和傳出代幣作檢查,從而利用價格更新機制的問題,由于在swap合約中會對池中傳入和傳出的代幣的價格調用同一個函數_upTokenInfo來進行更新,而當傳入和傳出的代幣為同一種代幣時,第二次調用_upTokenInfo函數時,通過價格計算后的更高的tokenOutPrice會覆蓋掉價格更低的tokenInPrice,以此來不斷推高池中該代幣的價格,最后可以換出池中其他的所有代幣來獲利離場。
Tags:TOKENKENTOKETOKZaddy Inu TokenKENUCVR Tokenimtoken蘋果下載要求
仿佛在一夜之間,“元宇宙”突然間成為熱詞,相關概念形成很多熱點話題。隨著擴展現實、數字孿生、3D渲染、云計算、人工智能、高速網絡、區塊鏈等技術的發展及終端設備的迭代,“元宇宙”建設和演變可能遠超.
1900/1/1 0:00:0011月29日,推特發布公告指出,JackDorsey決定辭去首席執行官一職,自2021年11月29日起生效.
1900/1/1 0:00:00原文標題:《ANormie''sGuidetoBecomingaCryptoPerson?Howto(cautiouslyandskeptically)falldowntherabbithole.
1900/1/1 0:00:00原標題|鏈游操作指南之RACA 游戲介紹 RACA中文名字為可怕的元獸,是今年10月11號剛剛上線的新游戲。RACA是USM火星聯邦元宇宙的子游戲.
1900/1/1 0:00:00來源:Medium 作者:AnnInw 編譯:ChenZou 以太坊L2解決方案 Metaverse?元宇宙已經爆火過了,公鏈賽道競爭的熱度也逐漸褪去.
1900/1/1 0:00:00注:原文來自Rekt,以下為全文編譯 路殺,“獾”已死。 1.2億美元資金以各種形式的wBTC和ERC20代幣被奪走。前端攻擊使BadgerDAO損失慘重,被盜金額排DeFi攻擊第四?.
1900/1/1 0:00:00