技术雷达站技术雷达站

Nomad Bridge漏洞利用被窃取1.9亿美元

Nomad Bridge漏洞利用事件分析  ,洞利被窃取1.9亿美元。用被亿美元 

Nomad Bridge是洞利一个区块链加密货币跨链平台,支持以太坊 、用被亿美元Moonbeam、洞利Avalanche  、用被亿美元Evmos和Milkomeda等币种的洞利跨链资产转移 。2022年8月1日 ,用被亿美元Nomad bridge经历漏洞利用,洞利引发价值1.9亿美元资产损失。用被亿美元该漏洞是洞利初始化过程中,“committedRoot”被设置为0引发的用被亿美元。因此 ,云计算洞利攻击者可以绕过消息验证过程,用被亿美元并从跨链合约中窃取token。洞利

 Nomad Bridge简介

Nomad Bridge是一个区块链加密货币跨链协议  ,允许用户在不同区块链之间实现资产的转移。此外,资产发行者还可以跨链部署token,开发者还可以通过Nomad构建原生跨链应用。Nomad的目标是使用户和开发者能够安全地交互。Nomad支持Avalanche (AVAX) 、Ethereum (ETH)、Evmos (EVMOS) 、Milkomeda C1和Moonbeam (GLMR)之间的源码库token资产转移。

漏洞利用事件分析

8月1日,Nomad bridge在升级过程中遭遇了漏洞利用 。漏洞是初始化过程中,“committedRoot”被设置为0引发的 ,攻击者可以绕过消息验证过程 ,滥用copy/paste交易发起攻击。具体来说,用户通过复制原始黑客交易的calldata,并替换为个人的原始地址 。然后该交易会被处理,并从Nomad bridge移除资金  。服务器租用在4个小时时间内 ,黑客、僵尸主机和其他社区成员不断重复该攻击 ,并成功窃取Nomad bridge几乎所有资金 ,总计约1.9亿美元  。

漏洞利用交易

攻击示例 :

以太坊接收100 WBTC转账0xa5fe9

https://etherscan.io/tx/0xa5fe9d044e4f3e5aa5bc4c0709333cd2190cba0f4e7f16bcf73f49f83e4a5460

多个攻击交易 :

攻击流

以交易0xa5fe9为例 :

攻击者调用函数; 

在process函数中 ,会调用acceptableRoot(messages[_messageHash]) ,这是用来检查root是否提交,以及timeout是否过期的。本例中messages[_messageHash]是0x000 。

函数acceptableRoot(messages[_messageHash])返回true ,源码下载消息就被证明了 。在初始化时设置为0x0000 ,因此是true(这也是部署时的错误所在)。

消息经过证明后,攻击者就可以向其他链转账 。

漏洞

初始化阶段

Replica合约在交易0x53fd9中被错误地初始化了 ,其中“committedRoot”被初始化为0 。

攻击阶段

因此,攻击者可以直接以任意“_message”调用“process(byte memory _message)”函数,实现验证绕过 。

合约地址: 0x88a69

该函数处理确保消息哈希通过检查得到证明 。

该函数会检查root是否经过证明  、建站模板处理和确认。

 在初始化交易0x53fd9中,所有者发送0 ,这些root会被设置为1。

因此,0会在0xb9233被检查 。

根据prove函数的实现,未经证明的消息的root也是0 ,因此0会被认为是一个有效的经过确认的root ,亿华云可以绕过检查。攻击者只需发送交易给Nomad Bridge,就可以获得对应token 。

资产追踪

累计有大约价值1.9亿美元的token从Nomad Bridge被转出 。

 

赞(963)
未经允许不得转载:>技术雷达站 » Nomad Bridge漏洞利用被窃取1.9亿美元