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

robot
摘要生成中

Poly Network 遭黑客攻擊事件分析

近日,跨鏈互操作協議 Poly Network 遭受黑客攻擊,引發了廣泛關注。根據安全團隊的分析,此次攻擊並非由於 keeper 私鑰泄露造成,而是攻擊者通過巧妙構造的數據,利用合約漏洞修改了 EthCrossChainData 合約的 keeper 地址。

攻擊原理

攻擊的核心在於 EthCrossChainManager 合約的 verifyHeaderAndExecuteTx 函數可以執行跨鏈交易。由於 EthCrossChainData 合約的所有者是 EthCrossChainManager 合約,因此後者可以調用前者的 putCurEpochConPubKeyBytes 函數來更改 keeper。

攻擊者利用 verifyHeaderAndExecuteTx 函數傳入精心設計的數據,通過內部調用 _executeCrossChainTx 函數,最終執行了 EthCrossChainData 合約的 putCurEpochConPubKeyBytes 函數,將 keeper 角色更改爲攻擊者指定的地址。

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

攻擊過程

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

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

  3. 由於 keeper 被修改,導致其他用戶的正常交易被拒絕執行。

  4. 類似的攻擊也在以太坊網路上進行,攻擊手法相同。

結論

這次攻擊的根本原因在於 EthCrossChainData 合約的 keeper 可以被 EthCrossChainManager 合約修改,而後者的 verifyHeaderAndExecuteTx 函數又能執行用戶傳入的數據。攻擊者正是利用了這一設計缺陷,通過構造特定數據修改了 EthCrossChainData 合約的 keeper 地址,進而實現了攻擊目的。

此事件再次提醒我們,在設計跨鏈協議時需要格外注意權限管理和數據驗證,以防止類似的安全漏洞被利用。同時,也凸顯了定期進行安全審計和漏洞賞金計劃的重要性,以及時發現並修復潛在的安全隱患。

查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 讚賞
  • 5
  • 分享
留言
0/400
MetaDreamervip
· 07-04 18:08
又一个馒头被卷走惹
回復0
CoffeeNFTsvip
· 07-02 15:50
智能合约又炸了?这年头还敢存币
回復0
空气币品鉴大师vip
· 07-02 15:48
又一个智能合约被薅了
回復0
被毕业的矿工vip
· 07-02 15:47
安全漏洞又来了 溜了溜了
回復0
Hodl老司机vip
· 07-02 15:31
每年都有韭菜被割 咱都习惯了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)