ESS:惊天魔盗,近2亿美金损失,Nomad Bridge攻击事件分析-ODAILY_tron

北京时间2022年8月2日,CertiK安全团队监测到NomadBridge遭受攻击,导致了价值约1.9亿美元的损失。

合约的问题在于在initialize()函数被调用的时候,“committedRoot”被设成了0x00地址。因此,攻击者可以通过消息的验证,将在桥合约中的代币转移。

攻击步骤

①攻击者调用process()函数开始攻击。

②process()函数中调用了acceptableRoot(messages),这个函数检查了被提交的root以及OptimisticTimeOut是否过期。

波场USDT流通量超过以太坊:4月15日,据TRONSCAN数据显示,波场公链上的USDT流通量已经超过以太坊。2019年,波场与Tether正式建立合作关系,并开始发行TRC-20标准版稳定币USDT,不到两年,波场上的USDT流通量就达到239亿枚,超越以太坊的234亿枚。[2021/4/15 20:23:31]

③此时函数acceptableRoot(messages)返回了true,也就是说这条message就被批准了。这是因为0x0000在初始化过程中被设置为了true。

波场TRON DApp活跃用户数近一个月都领先于以太坊和EOS:据DappReview网站显示,波场TRON DApp活跃用户数近一个月都领先于以太坊和EOS。其中,昨日波场TRON DApp活跃用户数为170787,以太坊DApp活跃用户数为40133,EOS DApp活跃用户数19532,波场TRON DApp活跃用户数是以太坊DApp活跃用户数的4倍多,是EOS DApp活跃用户数的8倍多。波场TRON致力于为去中心化互联网搭建基础设施,旗下的TRON协议是基于区块链的去中心化应用操作系统协议,为协议上的去中心化应用运行提供高吞吐,高扩展,高可靠性的底层公链支持。波场TRON还通过创新的可插拔智能合约平台为以太坊智能合约提供更好的兼容性。[2020/8/26]

波场TRON总账户数突破700万:7月22日,根据TRONSCAN波场区块链浏览器最新数据显示,波场TRON总账户数达到7,000,516,突破700万。波场TRON各项数据平稳增长,波场生态逐渐强大的同时,也将迎来更多交易量。[2020/7/22]

④当这条message被批准后,攻击者即可从桥中转移资金。

攻击交易

攻击示例:

○在MoonbeamBridge上转移了0.01WBTC:https://moonscan.io/tx/0xcca9299c739a1b538150af007a34aba516b6dade1965e80198be021e3166fe4c

○在EtheremBridge接受了100WBTC代币转移:https://etherscan.io/tx/0xa5fe9d044e4f3e5aa5bc4c0709333cd2190cba0f4e7f16bcf73f49f83e4a5460

徐明星:对2023年持乐观态度:金色财经报道,OKX创始人徐明星发推表示,“Luna、3AC、Ftx、Genesis 等事件让加密行业的人感到沮丧。但回顾加密的历史,这是一个技术驱动的行业,PoW、ETH、SegWit、Defi、ZK 推动整个加密市场市值增长到万亿。我对2023年持乐观态度。”[2022/12/31 22:17:43]

漏洞分析

在Replica合约中,“committedRoot”被错误地初始化为0。

合约地址:https://etherscan.io/address/0x88a69b4e698a4b090df6cf5bd7b2d47325ad30a3

函数process通过调用函数acceptableRoot()确保messagehash能通过验证。

函数acceptableRoot()会检查root是否已经被proven,processed或者confirmed。

然而在初始化的交易中0x53fd92771d2084a9bf39a6477015ef53b7f116c79d98a21be723d06d79024cad,owner传入了0x00并且它对应的`confirmAt`也会在初始化中被设为1。

因此0x00可以被当作一个`acceptableRoot`,这也可以在replica合约中查询到https://etherscan.io/address/0xb92336759618f55bd0f8313bd843604592e27bd8。

Prove函数的实现导致了一条unprovenmessage的root是0,而0作为一个有效的confirmedroot可以通过require的检查。攻击者只需调用process函数就能从桥中转移资金。

资金去向

大约价值1.9亿美元的代币从桥合约中转移出去。

https://defillama.com/protocol/nomad?denomination=USD

写在最后

由于该问题是由部署参数中的错误引起的,我们假设所有的部署和配置都是正确的,那么在传统的审计中确实很难发现该问题。然而,在包含验证部署过程等更广泛的审计过程中,是可以有效指出该问题的。

CertiK可提供部署阶段后的附加服务——合约验证,其中包括对智能合约的分析和部署后合约验证的深入分析。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

BTCNFT:NFT的十大类别-ODAILY_ENS

通过对主流的NFT进行分类,我们观察到NFT所涉及的领域已经远远超越了传统的艺术品/收藏品。越来越多的NFT项目开始赋能NFT多样化的公用事业,为holders带来更好的使用体验.

[0:15ms0-6:530ms