Poly Network黑客攻击事件揭秘:EthCrossChainManager合约漏洞分析

robot
摘要生成中

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

近日,跨链互操作协议 Poly Network 遭受黑客攻击,引发了业内广泛关注。安全团队对此事件进行了深入分析,揭示了攻击的具体细节和过程。

攻击原理

此次攻击的核心在于 EthCrossChainManager 合约中的 verifyHeaderAndExecuteTx 函数存在漏洞。攻击者通过该函数传入精心构造的数据,成功修改了 EthCrossChainData 合约的 keeper 为指定地址。这与此前流传的 keeper 私钥泄露说法不符。

攻击者利用了以下关键点:

  1. EthCrossChainManager 合约的 verifyHeaderAndExecuteTx 函数可通过 _executeCrossChainTx 函数执行跨链交易。

  2. EthCrossChainData 合约的所有者是 EthCrossChainManager 合约,后者可调用前者的 putCurEpochConPubKeyBytes 函数来修改 keeper。

  3. 攻击者构造特定数据,通过 verifyHeaderAndExecuteTx 函数调用 _executeCrossChainTx,进而执行 putCurEpochConPubKeyBytes 函数,将 keeper 更改为攻击者控制的地址。

  4. 完成 keeper 替换后,攻击者便可随意构造交易,从合约中提取任意数量的资金。

攻击过程

攻击主要发生在币安智能链(BSC)和以太坊两个网络上,过程大致相同:

  1. 攻击者首先通过 EthCrossChainManager 合约的 verifyHeaderAndExecuteTx 函数调用 putCurEpochConPubKeyBytes 函数,更改 keeper。

  2. keeper 被替换后,攻击者开始实施一系列攻击交易,从合约中提取资金。

  3. 攻击完成后,由于 keeper 被修改,导致其他用户的正常交易被回滚。

事件影响

此次攻击暴露了 Poly Network 协议在合约设计上的重大漏洞。攻击者通过利用合约间的权限关系和函数调用机制,成功绕过了原有的安全机制。这一事件再次凸显了跨链协议在安全性方面面临的挑战,以及代码审计和安全设计的重要性。

安全启示

  1. 合约设计需要更加谨慎,尤其是涉及关键角色(如 keeper)的权限管理。

  2. 跨合约调用的安全性需要全面评估,避免出现可被攻击者利用的漏洞。

  3. 定期进行全面的安全审计,及时发现和修复潜在风险。

  4. 建立多重验证机制,避免单点故障导致的系统性风险。

  5. 加强实时监控和应急响应能力,以便在攻击发生时快速反应并采取必要措施。

这次事件为整个区块链行业敲响了警钟,提醒开发者和项目方需要始终将安全放在首位,不断完善和优化协议设计。

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 5
  • 分享
评论
0/400
AlphaBrainvip
· 07-31 16:42
合约没整明白就来玩链?
回复0
后知后觉小王vip
· 07-31 16:42
诶呀 又到我入场的时候了...我就说合约漏洞防不胜防
回复0
Sandwich Huntervip
· 07-31 16:37
诶哟 又见合约漏洞 基操勿6
回复0
无聊看戏的vip
· 07-31 16:26
合约转账的乐子又来啦~
回复0
Degen Recovery Groupvip
· 07-31 16:17
谁又炸了合约?还能黑啊
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)