11月30日,自動做市商協議MonoX遭閃電貸攻擊,獲利約3100萬美元。關于本次攻擊,成都鏈安技術團隊第一時間進行了事件分析。
#1?事件概覽
攻擊發生之后,MonoX在官方推特確認其合約遭到攻擊,團隊正在調查并將盡最大努力追回被盜資金。
MonoX使用單邊代幣池模型,其使用vCASH穩定幣與AMM提供的代幣創建虛擬的交易對。簡單來說,MonoX創建的是代幣-vCASH交易對,添加流動性時,只需要添加代幣,進行任意代幣兌換時,兌換路徑為:代幣A->vCASH->代幣B,而不需要像Uniswap一樣經過多個交易對:代幣A->Pair1->Pair2->Pair3->TokenB。
#2?事件具體分析
攻擊者使用相同的地址
上海銀行成功落地首個數字人民幣發放貸款場景:金色財經報道,據上海國資發布,近日,上海銀行成功落地全行首筆使用數字人民幣進行貸款發放的場景應用,在該場景下,上海銀行為企業提供1000萬元貸款并使用數字人民幣,通過受托支付的方式完成貸款發放。上海銀行已通過城銀清算接入人民銀行數字貨幣研究所搭建的數字人民幣互聯互通平臺,實現央行數字人民幣APP中各運營機構的個人數字錢包與上海銀行銀行卡的兌出兌回、賬戶綁定、信息查詢、快捷充值等服務功能。[2022/11/25 20:46:08]
0xEcbE385F78041895c311070F344b55BfAa953258對以太坊以及MATIC上的MonoX發起了攻擊,在兩個平臺進行攻擊所部署的合約一致。攻擊交易為:
以太坊:
0x9f14d093a2349de08f02fc0fb018dadb449351d0cdb7d0738ff69cc6fef5f299
薩爾瓦多經濟部長提交法案以啟動發行比特幣火山債券:金色財經報道,薩爾瓦多經濟部長 Maria Luisa Hayem Brevé 向該國立法議會提交了一份數字資產發行法案,為推出其比特幣支持的“火山”債券鋪平了道路。去年薩爾瓦多表示,計劃在聯合比特幣側鏈Liquid Network上發行10億美元債券,債券的發行分為 5 億美元直接分配給比特幣和等額投資建設該地區的能源和比特幣采礦基礎設施。[2022/11/24 8:03:02]
MATIC:
0x5a03b9c03eedcb9ec6e70c6841eaa4976a732d050a6218969e39483bb3004d5d
由于兩個平臺代碼完全一致,下面的分析將基于以太坊上的攻擊交易進行。
Round1
將0.1WETH通過Monoswap中兌換為79.98609431154262101MONO;
Kucoin表示此前5000萬穩定幣轉移地址并非三箭資本地址:7月5日消息,Kucoin向PeckShield表示,0x0D71587c83a28E1AdB9CF61450A2261ABbE33632并非三箭資本地址。
此前消息,據PeckShield監測顯示,在過去24小時內,此前被標記為三箭資本的地址(0x0D71...3632)向Kucoin轉移3032萬枚USDT和2020萬枚USDC。[2022/7/5 1:51:30]
圖1?WETH兌換MONO
Round2
移除Monoswap所有的流動性。這里利用了Monoswap合約中的任意地址流動性移除漏洞。
漏洞1:
Monoswap合約中未檢測流動性的所有者to是否為msg.sender。_removeLiquidity函數中,如圖2所示,第443行,獲取調用者(攻擊合約)最后一次添加流動性的時間戳,返回結果是0,因此第445行的檢測通過。第446行,topLPHolderOf如果不是調用者(攻擊合約)地址,第447行的檢測通過。此后移除流動性相關代碼中,再無msg.sender相關的操作。
Coinbase已向美國聯邦移民和海關執法局出售加密用戶數據:6月30日消息,根據監管機構Tech Inquiry獲得的一份合同,加密貨幣交易所Coinbase分析程序Coinbase Tracer將向美國聯邦移民和海關執法局(ICE)提供有關加密用戶的數據,包括他們的“歷史地理跟蹤數據”和交易歷史記錄。據悉,該交易于去年9月簽署,最高金額為137萬美元,是Coinbase與美國政府機構之間的幾份合同之一,合同期為3年。
Coinbase發言人表示,所有Coinbase Tracer功能都使用完全來自在線公開數據的數據,不包括任何人的任何個人身份信息,或任何專有的Coinbase用戶數據。(CoinDesk)[2022/6/30 1:40:44]
圖2?_removeLiquidity源碼
圖3?第一次移除流動性內部調用細節
韓國金融監管局將于6月28日啟動虛擬資產風險委員會:6月23日消息,韓國金融監管局正在成立一個“虛擬資產風險委員會”,作為Terra-Luna事件的后續措施。
韓國金融監管局宣布將于6月28日在金融監管局會議室召開“虛擬資產風險委員會”啟動會議。目的是主動識別虛擬資產市場的潛在風險因素,并討論相應消費者保護措施。
該委員會參與者包括八名外部成員和金融監督局成員。虛擬資產交易所將分享虛擬資產交易所與投資者保護相關的內部控制現狀,金融監管局將提出保護虛擬資產投資者的建議。(eToday)[2022/6/23 1:26:45]
圖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,而不是閃電貸攻擊。
攻擊者所有轉出的資產如下:
幣種數量USDC4,029,106.880396?(兌換為847.2066974335073WETH)USDT4,525,120.098829?WETH452.9120530334938WBTC21.42797145DUCK5,155,863.718616853MIM4,125.858256772IMX274.9390440877583
所有被盜資產全部發送到0x8f6a86f3ab015f4d03ddb13abb02710e6d7ab31b地址。
目前項目方已經和攻擊者進行了溝通,成都鏈安將持續對此事件進行監控。
#3?事件復盤
這次攻擊事件中,攻擊者利用了合約中的兩個漏洞:任何地址都可以任意移除指定地址的流動性;特殊情況下的價格寫入操作覆蓋問題。
建議項目方在進行合約開發過程中做好權限的檢查;在開發以及測試過程中將特殊情況納入考慮,例如同種代幣轉賬。
上周的元宇宙和明星圈因為一則“林俊杰在推特上宣布持有Decentraland元宇宙虛擬地塊”的新聞而備受關注,該新聞一方面在娛樂圈引起了吃瓜群眾的好奇.
1900/1/1 0:00:00太長不讀: 1、新公鏈的擴展遵循自上而下的路徑:從上層應用到下層技術,從生態應用的繁榮到公鏈使用的爆發.
1900/1/1 0:00:002021年被稱為元宇宙元年,區塊鏈與數字藏品技術可以將元宇宙中的非標準化內容“資產化”與“協議化”,進而形成可交易的、可定價的數字藏品.
1900/1/1 0:00:00為了讓IOST社區用戶更方便的交易IOST鏈上資產,IOST社區現宣布重新開放去中心化交易平臺IOSTDex.
1900/1/1 0:00:00??元宇宙是一個平行于現實世界又獨立于現實世界的虛擬空間,是映射現實世界的在線虛擬世界,是越來越真實的數字虛擬世界.
1900/1/1 0:00:00AMC和索尼為即將上映的電影《蜘蛛俠:英雄無歸》的預購者提供限量版NFT。根據BoxOfficePro的報道,AMC和索尼正在推出一項優惠政策,為即將上映的漫威電影的首映日門票購買者提供限量版N.
1900/1/1 0:00:00