【#區(qū)塊鏈# #零時(shí)科技 || TransitSwapRouterV5攻擊分析#】
2023 年 12 月 20 日下午 我們監(jiān)控到 Transit Swap 項(xiàng)目遭到黑客在多個(gè)公鏈上的攻擊交易,且最終黑客共計(jì)獲利約 110k $。
下方為該漏洞合約在多個(gè)鏈上的部署地址:
https://docs.transit.finance/en/reference/smart-contracts
攻擊交易:
0x93ae5f0a121d5e1aadae052c36bc5ecf2d406d35222f4c6a5d63fef1d6de1081(BSC鏈)
由于攻擊者在多個(gè)鏈上對該項(xiàng)目進(jìn)行攻擊,本文主要通過對BNB鏈上攻擊者交易數(shù)據(jù)進(jìn)行分析,并對其交易進(jìn)行整理歸納。
黑客通過 TransitSwapRouterV5 合約的多路徑兌換功能將 0.01 BNB 成功兌換了約為 173.9 BNB ,如下圖:
通過交易堆棧數(shù)據(jù),我們看出該筆兌換操作經(jīng)過 2 次兌換操作,不過期間調(diào)用了一個(gè)未驗(yàn)證的交易對合約
(0x7d7583724245eeebb745ebcb1cee0091ff43082b),并將一個(gè)最小單位的BNB( 1/1e18 BNB )兌換為了約 43841.86 USDT,而且此處兌換得到的金額與當(dāng)前 TransitSwapRouterV5 合約的自身USDT儲備余額一致。
根據(jù)攻擊交易的參數(shù)對其合約邏輯進(jìn)行分析:
當(dāng)兌換路徑大于1時(shí)的邏輯如下:
深入 _swap 函數(shù),查看具體兌換邏輯,此處的內(nèi)部兌換函數(shù)在調(diào)用外部傳入的 pool 池子進(jìn)行代幣兌換后,未對兌換后的資金進(jìn)行校驗(yàn),直接使用 pool 返回的兌換金額進(jìn)行下一個(gè)路徑的兌換操作,從而導(dǎo)致攻擊者構(gòu)造假的 pool 合約并直接在swap函數(shù)中返回當(dāng)前TransitSwapRouterV5 合約自身的USDT儲備,進(jìn)而造成合約資金被拿去做第二次兌換,最終使攻擊者獲利。
經(jīng)分析該攻擊者獲利資金最終流入 Tornado Cash 混幣平臺。
簡單來說,TransitSwapRouterV5 合約中多路徑兌換函數(shù)缺少兌換成功校驗(yàn),導(dǎo)致多路徑兌換中使用虛假的兌換金額在后續(xù)的兌換中換取真實(shí)資金并成功獲利。
在多路徑兌換代幣時(shí)對傳入的交易對池子進(jìn)行校驗(yàn),或?qū)Χ嗦窂絻稉Q操作中的兌換結(jié)果進(jìn)行校驗(yàn),如某次兌換資金未到賬或兌換失敗則直接回滾,避免攻擊者使用虛假交易池造成的虛假兌換。
建議項(xiàng)目方上線前進(jìn)行多次審計(jì),避免出現(xiàn)審計(jì)步驟缺失。
小編推薦下載
油耗分析 生活實(shí)用
個(gè)性分析 娛樂消遣
智能分析 辦公效率
紅巨人攻擊 動作冒險(xiǎn)
城堡攻擊空閑 動作冒險(xiǎn)
野戰(zhàn)者攻擊 戰(zhàn)爭策略
安迪攻擊射手 FPS射擊
惡魔攻擊太空冒險(xiǎn) FPS射擊
相關(guān)推薦
相關(guān)文章
更多>>資訊排行
同類軟件下載
熱門標(biāo)簽