Poly Network遭黑客攻擊 EthCrossChainData合約漏洞被利用

robot
摘要生成中

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

近日,跨鏈互操作協議 Poly Network 遭受黑客攻擊,引發了業內廣泛關注。安全團隊的分析表明,此次攻擊並非由於 keeper 私鑰泄露導致,而是攻擊者通過精心構造的數據修改了 EthCrossChainData 合約的 keeper 地址。

攻擊核心

攻擊的核心在於 EthCrossChainManager 合約的 verifyHeaderAndExecuteTx 函數可以通過 _executeCrossChainTx 函數執行具體的跨鏈交易。由於 EthCrossChainData 合約的 owner 爲 EthCrossChainManager 合約,因此後者可以調用前者的 putCurEpochConPubKeyBytes 函數修改合約的 keeper。

攻擊者利用 verifyHeaderAndExecuteTx 函數傳入精心構造的數據,使 _executeCrossChainTx 函數執行調用 EthCrossChainData 合約的 putCurEpochConPubKeyBytes 函數,從而將 keeper 角色改爲攻擊者指定的地址。完成這一步後,攻擊者便可以構造交易,從合約中提取任意數量的資金。

攻擊流程

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

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

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

  4. 這一攻擊模式不僅在 BSC 上發生,以太坊網路上也出現了類似的操作。

結論

此次攻擊的關鍵在於 EthCrossChainData 合約的 keeper 可被 EthCrossChainManager 合約修改,而後者的 verifyHeaderAndExecuteTx 函數又能通過 _executeCrossChainTx 函數執行用戶傳入的數據。攻擊者正是利用了這一設計漏洞,通過構造特定數據修改了 EthCrossChainData 合約的 keeper 地址,從而實現了攻擊目的。

這一事件再次凸顯了跨鏈協議安全性的重要性,也提醒了開發者在設計智能合約時需要更加謹慎,尤其是在涉及關鍵角色權限變更的功能上。同時,對於用戶來說,在使用跨鏈服務時也需保持警惕,關注相關安全動態。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 分享
留言
0/400
LiquidatedAgainvip
· 08-03 22:02
代码漏洞的后果很惨
回復0
MoonBoi42vip
· 08-01 16:37
惨了惨了 币圈又出事
回復0
HackerWhoCaresvip
· 08-01 16:33
还是得看源代码啊
回復0
LayerZeroHerovip
· 08-01 16:25
熟悉的黑客攻击套路
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)