位置:丁香财经网 >> 货币平台

警惕以太坊合并后的重放攻击:Omni跨链桥被攻击事件分析

2023年04月06日 13:55

欧易okx交易所下载

欧易交易所又称欧易OKX,是世界领先的数字资产交易所,主要面向全球用户提供比特币、莱特币、以太币等数字资产的现货和衍生品交易服务,通过使用区块链技术为全球交易者提供高级金融服务。

APP下载   官网注册

SharkTeam 刚刚

二、事件分析

该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:

(1)PoS链交易hash:0xbddb0cc8bc9949321e1748f03503ed1a20dd618fbf0a51dc5734c975b1f8bdf5

(2)PoW链交易hash:0x9c072551861ce384203516f4d705176a2d2e262d5b571d853467425f1a861fb4

(3)攻击者地址:0x82FaEd2dA812D2E5CCed3C12b3baeB1a522DC677

首先,我们对比发现两笔交易访问的合约相同,并且inputdata完全相同,即调用了同一个合约的同一个函数并且参数相同,根据相同的方法签名ID 0x23caab49可知,黑客调用safeExecuteSignaturesWithAutoGasLimit函数。

因此,攻击者通过Omni Bridge 转移200WETH,然后在PoW链上重放了相同的Inputdata,获得了额外的200 ETHW。

此时,我们对这里的重放操作抱有怀疑态度。因为,以太坊网络在硬分叉之前强行执行EIP-155,这就说明ETH PoS链上交易不能在PoW链上重复交易。在正常的交易中,我们通过nonce来进行排序交易,避免重复交易。在跨链中,我们会根据chianid进行识别链的类型,比如以太坊主网的chainid是1,ETHW主网的chainid是10001。

对此,我们分析了Omni Bridge相应的源码。我们查看一下Omni Bridge验证chainid的逻辑,发现chainid的来源于unitStorage中存储的值,而不是通过操作码 CHAINID(0x46)直接读取的链上chainid。

unitStorage是合约EternalStorage中的状态变量,sourceChainId()函数所在的合约BasicAMB继承了BasicBridge和VersionableAMB。其中,BasicBridge陆续继承了合约EternalStorage。这里保存的chainid是预先存储好的,如果发生区块链的硬分叉而chainid又没有重新设置或者chainid人为设置有误,从合约层面上来说,由于不是通过操作码获取的chainid,不会正确验证跨链消息的实际chainid。这样的漏洞,容易被攻击者利用。

问题分析总结:主要是Omni使用的solidity版本是0.4.24,采用的是手动存储和更新chainid的方式,并未通过EIP-1344中规定的CHAINID(0x46)操作码进行实际chainid获取。

三、安全建议

引发本次安全事件的原因是在PoW升级PoS过程中,Omni Bridge对chainid未及时处理。导致过旧的solidity版本中,存在历史遗留问题。建议在后续项目迭代中,及时应对新问题,采取必要的代码优化措施。虽然Gnosis 链上Omni Bridge有每日最大转移代币数量限制250个WETH,但是依旧要保持警惕,以防止积少成多,造成更大的损失。

推荐阅读

标签:

文章来源: 丁香财经网
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至405936398@qq.com 举报,一经查实,本站将立刻删除。
相关资讯
奥斯卡虚拟货币怎么买(BUCKS是什么)
奥斯卡虚拟货币怎么买(BUCKS是什么) 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...

游戏虚拟币交易平台?虚拟货币交易用什么软件
游戏虚拟币交易平台?虚拟货币交易用什么软件 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...

陕西虚拟货币挖矿举报平台,12369举报范围
陕西虚拟货币挖矿举报平台,12369举报范围 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...

乡镇虚拟货币挖矿排查情况 (虚拟货币)挖矿犯不犯法?
乡镇虚拟货币挖矿排查情况 (虚拟货币)挖矿犯不犯法? 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...

最近大涨虚拟货币,虚拟币最近为何大幅上涨?
最近大涨虚拟货币,虚拟币最近为何大幅上涨? 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...

虚拟货币外围资金是什么,外围指数怎么还在变动
虚拟货币外围资金是什么,外围指数怎么还在变动 1970-01-01

SharkTeam 刚刚二、事件分析该事件涉及两个不同链的交易hash以及攻击者地址,分别如下:(1)PoS链交易has...