Poly Network遭黑客攻击:合约漏洞导致keeper被篡改

robot
摘要生成中

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

近日,跨链互操作协议 Poly Network 遭遇黑客攻击,引发了广泛关注。经过安全团队的深入分析,攻击者并非通过keeper私钥泄露实施攻击,而是利用了合约中的漏洞。

攻击原理

攻击的核心在于EthCrossChainManager合约的verifyHeaderAndExecuteTx函数可以通过_executeCrossChainTx函数执行特定的跨链交易。由于EthCrossChainData合约的所有者是EthCrossChainManager合约,因此后者可以调用前者的putCurEpochConPubKeyBytes函数来修改合约的keeper。

攻击者通过向verifyHeaderAndExecuteTx函数传入精心构造的数据,使_executeCrossChainTx函数执行了对EthCrossChainData合约putCurEpochConPubKeyBytes函数的调用,从而将keeper角色更改为攻击者指定的地址。完成keeper角色替换后,攻击者便可以随意构造交易,从合约中提取任意数量的资金。

攻击过程

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

  2. 随后,攻击者利用更改后的权限实施了一系列攻击交易,从合约中提取资金。

  3. 由于keeper被修改,导致其他用户的正常交易被拒绝执行。

  4. 这种攻击模式不仅在BSC链上发生,以太坊网络上也遭遇了类似的攻击操作。

结论

此次攻击事件的根本原因在于EthCrossChainData合约的keeper可以被EthCrossChainManager合约修改,而EthCrossChainManager合约的verifyHeaderAndExecuteTx函数又能够通过_executeCrossChainTx函数执行用户输入的数据。攻击者正是利用了这一设计缺陷,通过构造特定数据修改了EthCrossChainData合约的keeper,进而实现了资金盗取。

这一事件再次凸显了跨链协议安全设计的重要性,尤其是在权限管理和函数调用方面需要更加严格的审核和限制。对于去中心化金融项目而言,持续的安全审计和漏洞修复至关重要,以防范类似攻击事件的发生。

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 6
  • 转发
  • 分享
评论
0/400
PanicSeller69vip
· 08-12 04:32
漏洞还搞毛defi?
回复0
熊市炒面师vip
· 08-11 11:12
又一个牺牲品 白嫖教程警告
回复0
Hodl熊本熊vip
· 08-10 15:50
啊啊啊 QA审计做的怎么这么糊~
回复0
毛绒绒提款机vip
· 08-10 15:49
合约漏洞真的烦
回复0
爱发币的阿婆主vip
· 08-10 15:46
又被锤爆了嘛
回复0
PoolJumpervip
· 08-10 15:31
被薅了这么多毛,合约还敢说漏洞?
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)