Poly Network黑客攻擊原因揭祕:EthCrossChainData合約keeper被篡改

robot
摘要生成中

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

近日,跨鏈互操作協議 Poly Network 遭遇黑客攻擊,引發了業界廣泛關注。安全團隊對此事件進行了深入分析,認爲攻擊者是通過巧妙構造數據,修改了 EthCrossChainData 合約的 keeper 地址,而非此前傳言的 keeper 私鑰泄露導致。

攻擊核心

攻擊的關鍵在於 EthCrossChainManager 合約中的 verifyHeaderAndExecuteTx 函數。該函數能夠通過 _executeCrossChainTx 函數執行特定的跨鏈交易。由於 EthCrossChainData 合約的所有者是 EthCrossChainManager 合約,因此後者可以調用前者的 putCurEpochConPubKeyBytes 函數來更改合約的 keeper。

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

攻擊過程

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

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

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

  4. 類似的攻擊手法也在以太坊網路上得到了應用。

結論

此次攻擊的根本原因在於 EthCrossChainData 合約的 keeper 可被 EthCrossChainManager 合約修改,而後者的 verifyHeaderAndExecuteTx 函數又能執行用戶傳入的數據。攻擊者正是利用了這一漏洞,通過構造特定數據,成功更改了 EthCrossChainData 合約的 keeper 地址。這一發現澄清了此前關於 keeper 私鑰泄露的錯誤傳言。

本次事件再次凸顯了跨鏈協議安全的重要性。對於復雜的智能合約系統,尤其是涉及跨鏈操作的項目,需要更加嚴格的安全審計和風險評估。同時,這也提醒了區塊鏈項目開發者要格外注意權限管理和數據驗證的問題,以防止類似的安全漏洞被利用。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 5
  • 轉發
  • 分享
留言
0/400
failed_dev_successful_apevip
· 20小時前
gg 老伙计被锁链给锁穿了
回復0
资深链上考古学家vip
· 20小時前
被盗钱也太多了 溜了溜了
回復0
retroactive_airdropvip
· 20小時前
整天都是被攻击呗
回復0
喝茶看盘侠vip
· 20小時前
别装了 都是内鬼
回復0
DeadTrades_Walkingvip
· 20小時前
智能合约也没啥用 天天被黑
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)