比特幣價格 比特幣價格
Ctrl+D 比特幣價格
ads
首頁 > SHIB > Info

DEX:0x協議漏洞原理剖析:惡意掛單可擾亂正常交易秩序_去中心化交易所前三

Author:

Time:1900/1/1 0:00:00

昨天,去中心化交易所協議0x項目方稱其發現嚴重安全漏洞。PeckShield安全人員跟進分析發現,0xExchange合約在校驗訂單簽名時存在缺陷,導致攻擊者可以進行惡意掛單,進而將用戶的數字資產低價賣出,擾亂正常的交易秩序。所幸項目方及時發現并修復問題,截至目前,尚未有真實攻擊發生,并沒有產生數字資產損失。

背景

北京時間2019年07月13日,去中心化交易所0x協議項目方稱其發現嚴重安全漏洞,并緊急關閉了0xExchangev2.0合約,隨后部署了修復后的合約。受此影響,基于0x協議的交易所及錢包,包括RadarRelay,Tokenlon,StarBit等緊急暫停了相關交易服務。

PeckShield安全人員跟進分析發現,0xExchange合約在校驗訂單簽名時存在缺陷,導致攻擊者可以進行惡意掛單,進而將用戶的數字資產低價賣出,擾亂正常的交易秩序。

0x82ae開頭地址買入1.99萬億枚PEPE賣出1.69萬億,盈利162萬美元:金色財經報道,據Lookonchain監測,0x82ae開頭地址以106萬美元買入1.99萬億枚PEPE,并以268萬美元賣出1.69萬億枚PEPE,目前仍持有3000億枚PEPE(45.3 萬美元)。

該地址還使用80枚ETH通過另一個地址購買比特幣,然后以275枚ETH的價格賣出所有比特幣。[2023/7/21 15:50:54]

0x協議簡介

0x協議是一個基于以太坊的開放協議,實現鏈上資產的點對點交易。它期望在以太坊上創建一種標準協議,使得任何人能夠基于此協議運行去中心化交易所,實現以太坊上的代幣之間的交易。0x協議上的交易特點是鏈下訂單撮合,鏈上結算,其中為用戶交易提供訂單服務的參與者稱為中繼者。0x項目發行了自己的代幣ZRX,一方面作為去中心化治理投票權的證明,同時也被作為交易服務費,用于建立在0x協議之上的中繼者提供服務的收益。

Flashbots產品負責人Bert Miller:“0xbaDc0dE”開頭地址在單筆交易中賺了 800 ETH,但一小時后被黑客盜走損失1,100 ETH:金色財經報道,據研究機構 Flashbots 產品負責人 Bert Miller 在社交媒體發文稱,一個“0xbaDc0dE”開頭地址的 MEV Bot 機器人操作員在單筆交易中賺了 800 ETH,但一小時后損失了高達 1,100 ETH,該地址在過去幾個月中執行了 220,000 筆交易。Bert Miller 解釋說,“0xbaDc0dE” 利用了一位試圖在 Uniswap v2 上出售價值 180 萬美元 cUSDC 的用戶,通過將交易與涉及許多不同 DeFi dApp 精心套利交易賺了 800 ETH(102 萬美元),而那位不幸的賣家從該交易中只收到了 500 美元。但僅僅一個小時后,“0xbaDc0dE” 所有 ETH 都被盜了,一名黑客從該錢包中獲取 1,101 ETH(約合 140 萬美元),區塊鏈安全公司 PeckShield 也發現了這筆交易并發布了與黑客相關的鏈上信息。[2022/9/29 22:38:56]

0x協議受到不少去中心化交易所和錢包的青睞,從Etherscan的DEX過去七天交易份額的餅圖中能看到,排名靠前的RadarRelay和Tokenlon都是基于0x協議:

0x Labs完成7000萬美元B輪融資,Greylock Partners領投:4月26日消息,去中心化交易基礎設施提供商0x Labs完成7000萬美元B輪融資,Greylock Partners領投,Coinbase、Pantera、JumpCapital、OpenSea與Jared Leto等參投。

此前,0x曾在2017年的ZRX代幣銷售中籌集2400萬美元。據了解,總部位于舊金山的0xLabs總部位于美國舊金山,其開發的0x協議允許通過區塊鏈進行點對點資產交易,今年初期還推出了NFT交易功能。Coinbase上周推出的NFT市場由0x進行技術支持。(福布斯)[2022/4/26 5:13:27]

另外,從DAppTotal的DEX24小時交易額排名中也能看到它們的排名:

0x協議計劃通過0x DAO來實現治理其:據0x協議官方治理網站,該協議計劃通過由0x Labs資助的該社區金庫種子基金“0x DAO”來實現該協議的去中心化治理。為了建立DAO,0x Labs將確定一組引導代表,引導治理權力下放的最初步驟。[2021/2/13 19:39:44]

由于Ethereum平臺上大量的DEX都使用了0x協議,而作為最根本的TokenTranfer主合約出問題,這對于整個DEX領域來說,都是比較重大的事件。

漏洞原理分析

本次漏洞共涉及isValidWalletSignature和isValidValidatorSignature兩個相似的漏洞,由于兩者出問題的代碼是相似的,本文只以前者為例說明。

英國夫婦因使用虛假的Chrome瀏覽器Ledger擴展丟失14800XRP:一對英國夫婦周六于Reddit上發帖稱,其因使用Chrome瀏覽器上的所謂“Ledger擴展程序”而丟失了14800 XRP。據此前報道,MyCrypto平臺的安全主管Harry Denley發現,一個名為Ledger Live的Chrome擴展程序正試圖冒充真實的Ledger Live應用,獲取用戶Ledger錢包的恢復種子(創建Ledger錢包時設置的12或24個單詞的助記詞)并竊取資產。(CoinGape)[2020/3/29]

isValidWalletSignature(bytes32,address,bytes)函數用于驗證給定的Wallet合約所定義的簽名信息與給定的簽名是否一致,用于確保Order是由正確的Maker/Taker執行的交易。但是0xExchange合約在驗證的過程中,存在著比較嚴重的問題:

上圖是這一函數的全部邏輯,分為兩部分:

組裝簽名具體字段為ABI編碼格式;根據組裝的ABI編碼內容計算簽名值正確性。其中,第2步的邏輯,在0xv2合約代碼中是用匯編實現的:

引入cdStart指針,指向calldata中對應的位置;對WalletAddress調用staticcallOpCode計算簽名正確性,注意觀察代碼,其中的input和output都為cdStart這一指針,即復用input/output的內存;檢驗步驟2.2中的結果是否正確。WalletAddress為合約的前提下,這樣子的流程沒有問題。先來看下EVM中合約的執行流程是怎樣的,PeckShield安全人員查閱EVM源碼的時候發現:

當被調用的合約沒有code,也就是EOA賬號的情況下,什么都沒有的執行,直接返回。因此,對應到isValidWalletSignature(bytes32,address,bytes)函數來說,其中的cdStart所對應的內存內容在調用staticcall前后并沒有變化,而后面在判斷簽名是否正確的isValid取值的時候,也就取到了錯誤的值。

用戶通過fillOrder(Order,uint256,bytes)函數完成Token買賣,PeckShield安全人員發現,這一函數的三個參數可以由用戶自由配置:

分別為:

代表訂單信息的Order類型;用戶為此訂單付出的Token數量;Order對應的簽名信息signature其中比較關鍵的是Order及對應的signature信息的一致性正是通過上面的isValidWalletSignature類函數校驗,因此,當攻擊者精心構造signature為SignatureTypeWallet時,可『跳過』簽名合法性檢查,從而使得用戶在不經意之間被惡意掛單,從而被攻擊者順利吃單,由于這一訂單信息是由攻擊者直接傳入合約的,因此這一訂單信息在線下的中繼者也無法查詢。

漏洞影響分析

基于上述分析發現,曾在0x協議Exchange上做過授權轉賬的普通用戶帳號都將受到影響:

攻擊者可偽造用戶掛單,低價獲得用戶代幣。

鑒于此安全漏洞的危害性,PeckShield安全人員發現0x項目方在漏洞被發現的時候先緊急關閉了0xExchangev2.0合約的Tokentransfer功能,將所有的ERC20、ERC721、以及MultiAsset的Transfer功能全部下線;隨后部署了修復后的合約,同時告知用戶及使用了0xExchange的所有DEX及Relayer,相關的遷移升級工作正在進行中。受此影響,基于0x協議的交易所及錢包,包括RadarRelay,Tokenlon,StarBit等緊急暫停了交易服務。

PeckShield安全人員通過漏洞特性分析鏈上數據發現,從0xExchange2018-09上線至今,并沒有因此安全漏洞造成的用戶直接資產損失。

對于使用了0x的DEX及錢包來說,當前的階段需要暫停交易服務,如無法暫停交易服務的話,可將對應的0xExchange合約地址變更為當前已經修復的合約地址。

結語

0x協議本次出現漏洞的合約代碼,主要是內聯匯編代碼編寫簽名驗證功能出現的問題,直接編寫匯編代碼雖然在編譯器無法優化合約代碼的情況下非常有用,可控性更強且能提高執行效率,減少Gas消耗,但是編寫Solidity匯編代碼需要對EVM運行機制有非常熟悉的理解,不然EVM的某些特性可能導致編寫的合約無法正常運行,同時也缺少了Solidity提供的多種安全機制。

PeckShield安全人員在此提醒廣大開發者及時排查合約的相關代碼,避免類似問題可能造成的安全風險,對于DEX等DeFi類項目,項目方在上線前需要找有資質的安全公司審計安全風險。

Tags:DEX去中心化交易所中心化交易所DEX幣DEX價格去中心化交易所違法嗎LFG去中心化交易所去中心化交易所英文單詞去中心化交易所算證券么dex去中心化交易所價格計算器去中心化交易所前三

SHIB
比特幣:亦步亦趨的比特幣:黃金暴漲帶來的另類盛宴_數字貨幣詐騙案例視頻

來源:中國證券報 “從今年3月份開始,身邊玩比特幣的人增多,大都是想賺快錢。”在私募行業工作的宋先生告訴中國證券報記者.

1900/1/1 0:00:00
以太坊:與BM、V神分道揚鑣,攜Cardano殺回幣圈,艾達幣創始人能否再創傳奇?_艾達幣

今天繼續來和大家分享一位幣圈大神的傳奇故事。他是CharlesHoskinson,是一位有著十分傳奇經歷的加密貨幣從業者.

1900/1/1 0:00:00
香蕉幣:和平精英特工巴納納套裝怎么獲得 獲取方法_香蕉幣是什么

和平精英巴納納套裝如何獲取?這是一款造型十分奇特的服裝,小編這里帶來了和平精英特工巴納納套裝獲得方法.

1900/1/1 0:00:00
APP:涉非法集資洗錢!從巴菲特座上賓到邊控疑云 他會成下個賈躍亭?_區塊鏈技術發展現狀和趨勢CEO幣

來源:新財富 在過去的53天里,孫宇晨靠著標價3150萬元的巴菲特午餐賺足了眼球。有人說他是創業的演員,有人說他是騙子、追風者、抄襲者、營銷炒作高手、收割者……隨著“取消巴菲特午餐”一事不斷發酵.

1900/1/1 0:00:00
區塊鏈:VSYS公鏈發布2019年路線圖 多個創新功能直指下一代比特幣_SYS幣VSYS幣

再次出山的區塊鏈教父級人物SunnyKing近期帶領團隊在香港發布了他的第三個區塊鏈項目——VirtualEconomyEra的2019年Roadmap路線圖.

1900/1/1 0:00:00
人工智能:創投周報 Vol.32|「圖森未來」完成1.2億美元融資,周內官宣億級人民幣融資12筆,硬件登頂最熱門融資賽道;以及6家有意思的公司_ICON人工智能技術應用

編者按:創投周報是36氪的新欄目,每周日9點更新,為創投用戶梳理一周創投熱點,不錯過任何值得關注的創投動態.

1900/1/1 0:00:00
ads