Poly Network遭黑客攻擊 EthCrossChainManager合約漏洞致資金流失

robot
摘要生成中

Poly Network 遭受黑客攻擊事件分析

近日,跨鏈互操作協議 Poly Network 遭受黑客攻擊,引發了業界廣泛關注。安全團隊對此事件進行了深入分析,揭示了攻擊者的具體手法和攻擊過程。

攻擊原理

攻擊的核心在於利用 EthCrossChainManager 合約中的漏洞。攻擊者通過 verifyHeaderAndExecuteTx 函數,傳入精心構造的數據,成功修改了 EthCrossChainData 合約的 keeper 爲指定地址。這與此前流傳的 keeper 私鑰泄露說法不符。

攻擊細節

  1. EthCrossChainManager 合約的 verifyHeaderAndExecuteTx 函數可通過 _executeCrossChainTx 函數執行具體的跨鏈交易。

  2. EthCrossChainData 合約的 owner 爲 EthCrossChainManager 合約,因此後者可調用前者的 putCurEpochConPubKeyBytes 函數修改 keeper。

  3. 攻擊者利用 verifyHeaderAndExecuteTx 函數,傳入特制數據,使 _executeCrossChainTx 函數執行 EthCrossChainData 合約的 putCurEpochConPubKeyBytes 函數,從而改變 keeper 爲攻擊者控制的地址。

  4. keeper 角色被替換後,攻擊者可隨意構造交易,從合約中提取任意數量的資金。

攻擊流程

  1. 攻擊者首先通過 EthCrossChainManager 合約的 verifyHeaderAndExecuteTx 函數調用 putCurEpochConPubKeyBytes 函數,更改了 keeper。

  2. 隨後,攻擊者實施了一系列攻擊交易,從合約中提取資金。

  3. 攻擊完成後,由於 keeper 被修改,其他用戶的正常交易被拒絕執行。

  4. 類似的攻擊手法也在以太坊網路上實施,攻擊者採用了相同的操作步驟。

結論

本次攻擊的關鍵在於 EthCrossChainData 合約的 keeper 可被 EthCrossChainManager 合約修改,而後者的 verifyHeaderAndExecuteTx 函數又可執行用戶傳入的數據。攻擊者正是利用這一漏洞,通過構造特定數據,成功更改了 EthCrossChainData 合約的 keeper,進而實施了資金盜取。

這一事件再次提醒我們,在跨鏈協議的設計和實現中,需要格外注意權限管理和安全驗證機制,以防止類似的攻擊發生。同時,對於智能合約的審計和漏洞檢測也應該更加全面和深入,特別是在涉及關鍵角色和權限變更的函數上。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 6
  • 分享
留言
0/400
社恐质押者vip
· 9小時前
这合约也太脆了8
回復0
DeFiVeteranvip
· 9小時前
又见安全漏洞?慌啥
回復0
区块链假面骑士vip
· 9小時前
又到韭菜开割时间咯~
回復0
Fren_Not_Foodvip
· 9小時前
又是一个智能合约被日了
回復0
割肉不割爱vip
· 10小時前
又黑又没黑到位 菜鸡
回復0
ser_we_are_earlyvip
· 10小時前
又躺着赚钱的机会?
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)