跨鏈DEX 聚合器Transit Swap 攻擊分析

跨鏈DEX聚合器Transit Swap於10月2日遭受攻擊,導致用戶損失超過2100萬美元。攻擊者利用協議中未嚴格檢查用戶數據的漏洞,通過構造惡意調用竊取資金。目前黑客已歸還約70%資產,項目方正追蹤剩餘資金並制定返還方案。

  • 攻擊原因:Transit Swap在代幣兌換時未驗證用戶傳入數據,導致權限管理合約的claimTokens函數被濫用,攻擊者透過路由合約構造調用轉移授權用戶的代幣。
  • 技術細節:攻擊鏈涉及代理合約、路由橋合約與權限管理合約的交互漏洞,攻擊者偽造數據調用callBytes函數,直接觸發未經授權的轉賬。
  • 安全建議:開發者應嚴格檢查跨合約調用的參數與返回值;用戶需撤銷對Transit Swap的授權,並警惕DEX路由合約的無限授權風險。

(黑客地址:0x75F2abA6a44580D7be2C4e42885D4a1917bFFD46)

總結

10月2日,跨鏈DEX 聚合器Transit Swap 遭受攻擊,導致大量用戶的資金從錢包中被取出,預計損失超2100 萬美元。 Transit Finance稱,各方安全公司和項目組仍在繼續追踪黑客事件,並通過郵件、鏈上等方式與黑客進行溝通。項目組正在抓緊收集被盜用戶的具體數據,制定具體的返還方案。同時團隊將繼續追回黑客被盜資產的剩餘資產,並將其歸還給丟失的用戶。截止發稿前,黑客已經歸還約70%的資產。

黑客地址:0x75F2abA6a44580D7be2C4e42885D4a1917bFFD46

跨鏈 DEX 聚合器 Transit Swap 攻擊分析

Hyperlab 安全實驗室根據鏈上交易進行分析,此次攻擊發生的要原因在於Transit Swap 協議在進行代幣兌換時並未對用戶傳入的數據進行嚴格檢查,導致了任意外部調用的問題。

具體來說,用戶在用Transit Swap進行兌換時,會調用一個代理合約(0x8785bb8deae13783b24d7afe250d42ea7d7e9d72)。這個代理合約會根據代幣的種類選擇路徑。緊接著路由橋合約(0x0B47275E0Fe7D5054373778960c99FD24F59ff52)會調用權限管理合約(0xed1afc8c4604958c2f38a3408fa63b32e737c428)的claimtokens進行轉賬。而claimTokens 函數是通過調用指定代幣合約的transferFrom 函數進行轉賬的。其接收的參數都由上層路由橋合約傳入,本身沒有對這些參數進行任何限制,只檢查了調用者必須為路由代理合約或路由橋合約。

攻擊者利用路由代理合約、路由橋合約與權限管理合約未對傳入的數據進行檢查的缺陷,通過路由代理合約傳入構造後的數據調用路由橋合約的callBytes 函數。 callBytes 函數解析出攻擊者指定的兌換合約與兌換數據。此時兌換合約被指定為權限管理合約地址,兌換數據被指定為調用claimTokens 函數將指定用戶的代幣轉入攻擊者指定的地址中。由此攻擊者實現了竊取所有對權限管理合約進行授權的用戶的代幣。

Hyperlab 安全實驗室提醒,在跨合約的函數調用時,合約開發者需要對用戶傳入的數據進行嚴格檢查,並對下層對上層給的返回值進行正確校驗。對Transit Swap用戶而言,需停止使用Transit Swap,並提高自身對區塊鏈錢包的安全意識,尤其是對DEX 的router的無限授權權限保持謹慎。

分享至:

作者:HyperLab安全实验室

本文為PANews入駐專欄作者的觀點,不代表PANews立場,不承擔法律責任。

文章及觀點也不構成投資意見

圖片來源:HyperLab安全实验室如有侵權,請聯絡作者刪除。

關注PANews官方賬號,一起穿越牛熊
推薦閱讀
2小時前
4小時前
4小時前
4小時前
5小時前
5小時前

熱門文章

行業要聞
市場熱點
精選讀物

精選專題

App内阅读