時(shí)間:2023-06-11|瀏覽:283
黑客的詳細(xì)地址是0x75F2abA6a44580D7be2C4e42885D4a1917bFFD46。Hyperlab室依據(jù)區(qū)塊鏈交易進(jìn)行分析,本次攻擊的主要原因是TransitSwap協(xié)議在進(jìn)行代幣交換時(shí)沒(méi)有全面檢查用戶(hù)傳輸?shù)男畔ⅲ瑢?dǎo)致外部方可進(jìn)行調(diào)用。
在使用TransitSwap進(jìn)行交換時(shí),用戶(hù)會(huì)調(diào)用一個(gè)代理合約(0x8785bb8deae13783b24d7afe250d42ea7d7e9d72)。該代理合約將根據(jù)貨幣類(lèi)型選擇路徑。然后路由器橋合約(0x0B47275E0Fe7D5054373778960c99FD24F59ff52)將調(diào)用管理權(quán)限合約(0xed1afc8c4604958c2f38a3408fa63b32e737c428)的claimtokens函數(shù)進(jìn)行轉(zhuǎn)賬。而claimTokens函數(shù)將根據(jù)調(diào)用特定貨幣合約的transferFrom函數(shù)公式進(jìn)行轉(zhuǎn)賬。它收到的主要參數(shù)來(lái)自頂層路由器橋合約,本來(lái)就沒(méi)有對(duì)這些主要參數(shù)進(jìn)行任何限定,只檢查調(diào)用者是否為路由器代理合約或路由器橋合約。
網(wǎng)絡(luò)攻擊利用路由器代理合約、路由器橋合約和管理權(quán)限合約對(duì)傳輸信息進(jìn)行安全檢查不足。根據(jù)路由器代理合約傳輸?shù)慕Y(jié)構(gòu)后數(shù)據(jù)信息,調(diào)用路由器橋合約的callBytes函數(shù)公式。該函數(shù)解析出網(wǎng)絡(luò)攻擊指定的交換合約與交換數(shù)據(jù)信息。在此時(shí),交換合約被選定為管理權(quán)限合約的詳細(xì)地址,交換數(shù)據(jù)信息被選定為調(diào)用claimTokens函數(shù)公式,將特定用戶(hù)的貨幣轉(zhuǎn)移到網(wǎng)絡(luò)攻擊指定地址。這樣,網(wǎng)絡(luò)攻擊完成了對(duì)管理權(quán)限合約授權(quán)用戶(hù)的全部貨幣的竊取。
Hyperlab室提醒,在跨合約的函數(shù)公式調(diào)用時(shí),合約開(kāi)發(fā)人員必須全面檢查用戶(hù)傳輸?shù)男畔ⅲ瑢?duì)其下層傳輸?shù)膮?shù)進(jìn)行恰當(dāng)?shù)男z。對(duì)TransitSwap用戶(hù)來(lái)說(shuō),應(yīng)停止使用TransitSwap,并提高自己對(duì)區(qū)塊錢(qián)包安全防范意識(shí),特別是對(duì)DEX的路由器授權(quán)管理權(quán)限要保持謹(jǐn)慎。
本文轉(zhuǎn)載自駝鳥(niǎo)區(qū)塊鏈。