跨鏈協議安全漏洞剖析:攻擊者如何修改keeper獲取資金控制權

robot
摘要生成中

跨鏈協議遭遇安全漏洞:一次深入剖析

最近,一個跨鏈互操作協議遭遇了嚴重的安全漏洞,引發了業內廣泛關注。安全專家團隊對此事件進行了詳細分析,揭示了攻擊者是如何利用合約漏洞獲取權限並最終實施攻擊的。

攻擊原理

分析顯示,此次攻擊的核心在於協議中的一個關鍵合約函數存在漏洞。攻擊者通過精心構造的數據,成功修改了另一個重要合約中的管理員地址,從而獲得了對資金的控制權。這與此前流傳的管理員私鑰泄露說法不符。

攻擊細節

  1. 攻擊者利用了一個名爲verifyHeaderAndExecuteTx的函數,該函數可以執行跨鏈交易。

  2. 由於合約間的所有權關係,攻擊者能夠通過上述函數調用另一個合約的putCurEpochConPubKeyBytes函數,從而修改關鍵的keeper角色。

  3. 攻擊者構造了特定的交易數據,使verifyHeaderAndExecuteTx函數間接調用putCurEpochConPubKeyBytes函數,將keeper角色更改爲攻擊者控制的地址。

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

攻擊過程

攻擊者首先在一個區塊鏈網路上發起攻擊,通過精心設計的交易修改了keeper地址。隨後,攻擊者連續發起多筆交易,從被攻擊的合約中提取大量資金。

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

值得注意的是,攻擊者採用了類似的方法在另一個主流區塊鏈網路上也實施了攻擊,顯示出這是一次有預謀的、跨鏈的攻擊行動。

總結

這次攻擊事件的根本原因在於協議設計中存在的漏洞。攻擊者巧妙地利用了合約間的調用關係和權限設置,通過構造特殊的交易數據,成功篡改了關鍵的keeper地址。這一發現糾正了此前關於私鑰泄露的錯誤推測,爲同類協議的安全設計提供了重要參考。

此事件再次凸顯了去中心化金融協議在安全性方面面臨的挑戰,也提醒開發者在設計跨鏈互操作功能時需要更加謹慎,充分考慮各種可能的攻擊場景。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 分享
留言
0/400
MetaRecktvip
· 07-19 15:28
啧啧 合约代码审查还不够仔细
回復0
zkProofInThePuddingvip
· 07-19 15:27
又一个智能合约裂缝被撬开了
回復0
screenshot_gainsvip
· 07-19 15:21
太菜了吧 被黑得这么轻松
回復0
GateUser-aa7df71evip
· 07-19 15:18
哎呀跨链又出事了,这些项目怎么天天被薅羊毛
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)