木星链 木星链
Ctrl+D收藏木星链

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

作者:

时间:1900/1/1 0:00:00

2022年9月18日,以太坊合并完成后,PoW链遭到PoS链上交易的重放攻击,根本原因是网桥未正确读取并验证区块链的chainid。攻击者首先通过Gnosis链的Omni跨链桥转移了200 WETH,然后在PoW链上重放了相同的消息,获得了额外的200 ETHW。

SharkTeam对此事件进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

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

动态 | 咸宁市地方金融工作局:警惕以“虚拟货币”“区块链”名义进行的非法集资:近期,一些不法分子打着“金融创新”“区块链”的旗号,通过发行所谓“虚拟货币”“虚拟资产”“数字资产”等方式吸收资金,侵害公众合法权益。咸宁市地方金融工作局提醒广大市民:警惕以“虚拟货币”“区块链”名义进行的非法集资。(新浪财经)[2019/10/29]

(1)PoS链交易hash:0xbddb0cc8bc9949321e1748f03503ed1a20dd618fbf0a51dc5734c975b1f8bdf5

声音 | 延边州金融办:警惕以投资“虚拟货币”“区块链”等为幌子的投资理财局:延边州金融办发布风险提示,提醒群众务必警惕部分投资”、“理财”项目。其中包括以投资“虚拟货币”“区块链”等为幌子的。[2019/7/25]

(2)PoW链交易hash:0x9c072551861ce384203516f4d705176a2d2e262d5b571d853467425f1a861fb4

(3)攻击者地址:0x82FaEd2dA812D2E5CCed3C12b3baeB1a522DC677

动态 | 乌鲁木齐晚报:警惕以投资“虚拟货币”、“区块链”等为幌子的投资”、“理财”项目:2月21日,乌鲁木齐晚报发布《防范非法集资常识》,务必警惕以投资“虚拟货币”、“区块链”等为幌子的“投资”、“理财”项目。[2019/2/24]

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

独家 | 警惕以太坊里的垃圾合约?伪造交易进行广告推广:近日,降维安全实验室(johnwick.io)在以太坊智能合约监控系统中监测到一个垃圾推广合约ERC20 (blockwell.ai KYC Casper Token),垃圾推广通过调用垃圾合约的某公开方法(方法签名: 0x975ef7df)虚构了大量(每500个一组,转账数量100个代币)受害地址之间的转账交易,并虚假记录了这些转账交易的Transfer()事件日志,导致大批钱包应用依据此事件记录,向无辜受害用户推送了此垃圾代币的交易转账通知,变相成为了此垃圾代币的推广宣传帮凶。在短短一天时间内,该交易者伪造了50余万笔虚假交易(截至发稿前为止)进行垃圾推广。

垃圾交易者地址: 0xaaf70e052b76c9bd177e24a0e249f17cc3486ea0

垃圾合约地址: 0x212d95fccdf0366343350f486bda1ceafc0c2d63

垃圾代币名称: ERC20 (blockwell.ai KYC Casper Token)[2018/9/10]

因此,攻击者通过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,但是依旧要保持警惕,以防止积少成多,造成更大的损失。

财经法学

成都链安

金色早8点

Bress

链捕手

PANews

Odaily星球日报

标签:ChainAINHAICHAbankquickchainglobalchainNumbers ChainEthernity Chain

比特币价格实时行情热门资讯
BSP:纽约时报:半年被盗20亿美元 加密世界面临“信任危机”

来源:纽约时报编译:比推Bitpush News Mary Liu2022年已有超过 20 亿美元的加密货币被黑客窃取.

1900/1/1 0:00:00
SYN:Synthetix 的现状与展望

我们之前专门写了一篇文章介绍Synthetix的底层机制和原理,这篇文章我们想进行一个项目跟踪,顺便说说我们对于合成资产的理解.

1900/1/1 0:00:00
以太坊:晚间必读 | 以太坊的8位联合创始人 如今都怎么样了?

 a16z crypto为那些寻求理解、深入和构建零知识的人挑选了一组资源:强大的基础技术,这些基础技术掌握着区块链可扩展性的关键,代表着隐私应用程序的未来.

1900/1/1 0:00:00
以太坊:对话:以太坊硬分叉背后的套利机会

随着以太坊PoS升级日益临近,原有的PoW矿工并不甘心被以太坊基金会抛弃,正在积极准备保留PoW链,对以太坊进行硬分叉.

1900/1/1 0:00:00
WEB:我们仍处在Web3.0爆发的前夜

截至今年七月底,以太坊域名服务独立地址数已突破50万,Web3正收获越来越大的用户群体。从2017年开始,Web3基础设施逐渐完备,呈现出从“泥泞小路”到“柏油公路”的变化.

1900/1/1 0:00:00
WEB:Web3.0漩涡中的人们

「发生什么事了,显卡怎么跌回原价了?」即刻上,有人在「电脑装机爱好者」圈子发问,同好网友回复「ETH不能挖矿了」一语点醒网游人.

1900/1/1 0:00:00