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

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

近日,跨链互操作协议Poly Network遭受黑客攻击,引发广泛关注。安全团队经过分析认为,此次攻击并非由keeper私钥泄露导致,而是攻击者通过精心构造的数据修改了EthCrossChainData合约的keeper为指定地址。

攻击细节

  1. 攻击的核心在于EthCrossChainManager合约的verifyHeaderAndExecuteTx函数可通过_executeCrossChainTx函数执行跨链交易。

  2. EthCrossChainData合约的owner为EthCrossChainManager合约,因此后者可调用前者的putCurEpochConPubKeyBytes函数修改keeper。

  3. 攻击者通过verifyHeaderAndExecuteTx函数传入特制数据,使_executeCrossChainTx函数执行对EthCrossChainData合约的putCurEpochConPubKeyBytes函数调用,从而将keeper改为攻击者指定地址。

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

攻击过程

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

  2. 随后,攻击者实施了多笔攻击交易,从合约中提取资金。

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

  4. 类似的攻击手法也在以太坊网络上实施。

结论

此次攻击的本质在于EthCrossChainData合约的keeper可被EthCrossChainManager合约修改,而后者的verifyHeaderAndExecuteTx函数又能执行用户传入的数据。攻击者利用这一漏洞,通过精心构造的数据修改了keeper,而非此前传言的keeper私钥泄露。

这一事件再次凸显了跨链协议安全性的重要性,提醒开发者和用户需要更加谨慎地设计和使用相关功能。同时,它也为整个行业敲响了警钟,呼吁加强对智能合约vulnerabilities的审计和防范。

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 5
  • 分享
评论
0/400
NFT黑洞钱包vip
· 08-05 02:09
又是漏洞被薅的典型案例了
回复0
Lonely_Validatorvip
· 08-03 14:54
果然又是合约漏洞
回复0
码农挖矿摆烂君vip
· 08-02 14:40
还在改合约bug?裂开
回复0
快照暴击手vip
· 08-02 14:35
凉了凉了谁没被黑过
回复0
RadioShackKnightvip
· 08-02 14:32
又倒了一个
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)