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

robot
摘要生成中

Poly Network 遭黑客攻擊事件分析

近日,一起針對跨鏈互操作協議 Poly Network 的黑客攻擊事件引起了廣泛關注。經安全團隊分析,此次攻擊並非由於 keeper 私鑰泄露造成,而是攻擊者通過精心構造的數據成功修改了 EthCrossChainData 合約的 keeper 地址。

攻擊原理

攻擊的核心在於利用 EthCrossChainManager 合約中的漏洞。該合約的 verifyHeaderAndExecuteTx 函數可以通過 _executeCrossChainTx 函數執行跨鏈交易。由於 EthCrossChainData 合約的所有者是 EthCrossChainManager 合約,因此後者可以調用前者的 putCurEpochConPubKeyBytes 函數來修改 keeper。

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

攻擊過程

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

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

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

  4. 這種攻擊模式不僅在幣安智能鏈(BSC)上發生,以太坊網路上也出現了類似的操作。

結論

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

這一事件再次凸顯了智能合約安全的重要性,尤其是在涉及跨鏈操作和關鍵角色管理時,需要更加謹慎的設計和全面的安全審計。對於區塊鏈項目方來說,不斷完善安全機制、及時發現並修復潛在漏洞至關重要。同時,對於普通用戶而言,在參與新興區塊鏈項目時也應保持警惕,關注項目的安全性評估和審計報告。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 分享
留言
0/400
pvt_key_collectorvip
· 08-01 16:56
又一个巨大的漏洞
回復0
HodlOrRegretvip
· 07-31 04:26
警钟敲得震耳欲聋
回復0
Anon32942vip
· 07-31 04:14
又见跨链风险了
回復0
社区混子王vip
· 07-31 04:08
又在薅韭菜呗
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)