據慢霧區消息,2021年6月29日,去中心化跨鏈交易協議THORChain發推稱發現一個針對THORChain的惡意攻擊,THORChain節點已作出反應并進行隔離和防御。慢霧安全團隊第一時間介入分析,經分析發現,這是一起針對跨鏈系統的“假充值”攻擊,結果分享如下:
什么是“假充值”?
當我們在談論“假充值”攻擊時,我們通常談的是攻擊者利用公鏈的某些特性,繞過交易所的充值入賬程序,進行虛假充值,并真實入賬。
隨著RenVM、THORChain等跨鏈服務的興起,跨鏈節點充當起了交易所的角色,通過掃描另一條公鏈的資產轉移情況,在本地公鏈上生成資產映射。THORChain正是通過這種機制,將以太坊上的代幣轉移到其它公鏈。
CoinWind聲明:請用戶警惕PancakeSwap上的CowMoon假幣:近日,CoinWind發現市場上已有打著CoinWind旗號在PancakeSwap上發行的假幣CowMoon。在此,CoinWind鄭重聲明,CoinWind平臺Token為COW,請廣大用戶注意防范風險,保護自身財產安全,并對打著ConinWind旗號發行代幣的非法行為予以抵制。官方信息,請關注CoinWind官網及Twitter。[2021/6/7 23:17:10]
漏洞分析
我們從業務邏輯入口去追蹤分析此漏洞的成因。
首先看到在處理跨鏈充值事件時,調用了getAssetFromTokenAddress?方法去獲取代幣信息,并傳入了資產合約地址作為參數:
俄羅斯VTB銀行董事長:比特幣是假幣,數字貨幣出現不可避免:俄羅斯第二大銀行VTB董事長兼總裁Andrey Kostin表示,他不喜歡比特幣。他認為比特幣是假幣,并將加密挖礦技術比作中世紀罪犯偽造貨幣的方式。然而,他承認CBDC的推出是重要的,俄羅斯將很快開始數字盧布試驗。Kostin也承認世界正在走向數字化,數字貨幣的出現是不可避免的。然而,他堅持認為,這些應由央行控制。(U.Today)[2021/6/4 23:12:32]
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
?
慢霧xToken被黑事件分析:兩個合約分別遭受“假幣”攻擊和預言機操控攻擊:據慢霧區消息,以太坊 DeFi 項目 xToken 遭受攻擊,損失近 2500 萬美元,慢霧安全團隊第一時間介入分析,結合官方事后發布的事故分析,我們將以通俗易懂的簡訊形式分享給大家。
本次被黑的兩個模塊分別是 xToken 中的 xBNTa 合約和 xSNXa 合約。兩個合約分別遭受了“假幣”攻擊和預言機操控攻擊。
一)xBNTa 合約攻擊分析
1. xBNTa 合約存在一個 mint 函數,允許用戶使用 ETH 兌換 BNT,使用的是 Bancor Netowrk 進行兌換,并根據 Bancor Network 返回的兌換數量進行鑄幣。
2. 在 mint 函數中存在一個 path 變量,用于在 Bancor Network 中進行 ETH 到 BNT 的兌換,但是 path 這個值是用戶傳入并可以操控的
3. 攻擊者傳入一個偽造的 path,使 xBNTa 合約使用攻擊者傳入的 path 來進行代幣兌換,達到使用其他交易對來進行鑄幣的目的。繞過了合約本身必須使用 ETH/BNT 交易對進行兌換的限制,進而達到任意鑄幣的目的。
二)xSNXa 合約攻擊分析
1. xSNXa 合約存在一個 mint 函數,允許用戶使用 ETH 兌換 xSNX,使用的是 Kyber Network 的聚合器進行兌換。
2. 攻擊者可以通過閃電貸 Uniswap 中 ETH/SNX 交易對的價格進行操控,擾亂 SNX/ETH 交易對的報價,進而擾亂 Kyber Network 的報價。從而影響 xSNXa 合約的價格獲取
3. 攻擊者使用操控后的價格進行鑄幣,從而達到攻擊目的。
總結:本次 xToken 項目被攻擊充分展現了 DeFi 世界的復雜性,其中針對 xSNXa 的攻擊更是閃電貸操控價格的慣用手法。慢霧安全團隊建議 DeFi 項目開發團隊在進行 DeFi 項目開發的時候要做好參數校驗,同時在獲取價格的地方需要防止預言機操控攻擊,可使用 Uniswap 和 ChainLink 的預言機進行價格獲取,并經過專業的安全團隊進行審計, 保護財產安全。詳情見官網。[2021/5/13 21:57:48]
在getAssetFromTokenAddress方法里,我們看到它調用了getTokenMeta?去獲取代幣元數據,此時也傳入了資產合約地址作為參數,但在此處有一個定義引起我們的警覺,在初始化代幣時,默認賦予了代幣符號為ETH,這就是漏洞的關鍵點之一:asset:=common.ETHAsset,如果傳入合約地址對應的代幣符號為ETH,那么此處關于symbol的驗證將被繞過。
聲音 | 火幣CEO七爺:火幣動用假幣砸盤是謠言:近日有傳聞稱,火幣內部資金出現問題,并動用假幣砸盤。對此火幣CEO七爺剛剛在微信朋友圈表示這類消息是謠言,并稱:組織傳謠的痕跡還是太明顯了。[2019/7/19]
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
繼續驗證我們的猜測,我們看到當代幣地址在系統中不存在時,會從以太坊主鏈上去獲取合約信息,并以獲取到的symbol構建出新的代幣,此時所有的漏洞成因都已經顯現:
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
-?bifrost/pkg/chainclients/ethereum/tokens_db.go
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
總結一下,首先是由于錯誤的定義,如果跨鏈充值的ERC20代幣符號為ETH,那么將會出現邏輯錯誤,導致充值的代幣被識別為真正的以太幣ETH。
還原攻擊真相
我們來看一筆攻擊交易的執行過程,可以提取出充值的代幣合約地址:
我們在Etherscan上查看這個代幣合約地址:
發現這個地址對應的合約的代幣符號正是ETH,攻擊者正是通過部署了假幣合約,完成了這次跨鏈假充值。
漏洞修復
漏洞補丁:
項目方在發現攻擊后快速對代碼進行了修復,刪除了默認的代幣類型,使用common.EmptyAsset進行空代幣定義,并在后續邏輯中使用asset.IsEmpty()進行判斷,過濾了沒有進行賦值的假充值代幣。
總結
幸運的是項目方及時發現了本次攻擊,未造成巨額財產損失,但作為跨鏈系統,未來可能聚集巨額的多鏈資金,安全性不容忽視,因此慢霧安全團隊建議在進行跨鏈系統設計時應充分考慮不同公鏈不同代幣的特性,充分進行“假充值”測試,做好狀態監控和預警,必要時可聯系專業安全公司進行安全審計。
Tags:ETHCHAChainAINxETH-G價格New Chance TokenLoveChainPhoenix chain
請問3月份比特幣6萬刀的時候是什么市?站在今天回顧過去很多人肯定說是牛市。那么今天比特幣3萬3是什么市?這個問題就有分歧了。有人說是牛市中的回調,有人說是熊市的途中.
1900/1/1 0:00:00一直以來,加密世界就像一片原始的原始森林,既有埋在密林深處的財富,也有藏匿其間的陷阱。6月29日,BSC上的機槍池項目MerlinLab遭遇所謂的“黑客攻擊”,項目方隨即宣布關閉項目并開始拋售項.
1900/1/1 0:00:00文章系金色財經專欄作者牛七的區塊鏈分析記供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別,謹防上當.
1900/1/1 0:00:00在北京時間2021年6月24日晚9點,SwapAll韭菜姐攜手LOWB創始人為大家帶來了一場探討幣圈生存法則的直播,內容回顧如下.
1900/1/1 0:00:00掃一掃二維碼,即可知道公共場所安全監管是否到位;輸入關鍵字,就能快捷查詢政務信息;擔心自己發布到網絡上的原創作品被侵權,電子證據為知識產權保駕護航……這些與群眾生活密切相關的場景之所以能夠實現.
1900/1/1 0:00:0012:00-21:00關鍵詞:《基金定位法》、新加坡金管局、軟銀1.德國《基金定位法》今日已生效.
1900/1/1 0:00:00