免责声明:金色财经所有资讯仅代表作者个人观点,不构成任何投资理财建议。 举报

    金色观察|“首次去中心化抢劫”:还原Nomad被攻击始末

    8月2日7时,加密KOL @0xfoobar发推称,跨链互操作性协议Nomad桥正在被黑客攻击,WETH和WBTC正以每次百万美元的频次转出,合约中仍有1.26亿美元可能存在风险。提醒用户尽快提取资金。最近的一次就有1万枚以太坊(约合1600万美元)转出,Nomad桥还有8000万美元的USDC正在流出。

    Nomad官方团队称,已知晓涉及 Nomad 代币桥的事件,目前正在调查中。受该事件影响,Moonbeam称:Moonbeam 网络已进入维护模式,以调查网络上部署的智能合约的安全事件。在此期间,功能将受到限制,用户将无法执行常规用户交易和智能合约交互。治理、质押、取消暂停和升级的能力将继续有效。

    截至目前,据defillama数据显示,Nomad TVL 中超过 1.9 亿美元的加密货币在几小时内被撤出,钱包中目前仅剩5336美元。Terra研究员FatMan评论此次攻击事件称,这是以真正的加密方式——第一次去中心化的抢劫。

    X2Qvi0euqrZkH5NIm1sAdnTApqyxxVjR0VzXloSv.png对此,投资机构Paradigm研究员@samczsun试图还原黑客攻击的全过程:

    1,一切都开始于@officer_cia分享@spreekaway ETH Security Telegram 频道的推文。尽管当时并不知道发生了什么事,但从桥上撤离的大量资产来看显然是一个不好的信号。

    Image2,第一个想法是代币的小数点配置有误。毕竟,桥上好像在运行“发送 0.01 WBTC,返还 100 WBTC”的促销活动。

    tHh8j5rhW2ovtFMl1H3gIHEZEel8nFjXNl8Gpg5Z.png3,然而,在 Moonbeam 网络上进行了一些手动挖掘之后,确认虽然 Moonbeam 交易确实桥接了 0.01 WBTC,但以太坊交易以某种方式桥接了 100 WBTC。

    图片

    图片4,此外,在 WBTC 中桥接的交易实际上并没有证明什么。它只是直接调用了`process`。可以说,能够在不首先证明的情况下处理消息是非常不好的

    nCOMowLkWEp4dLmE6KPlikPDcOYZiu8OH6XoELkD.png

    5,在这一点上,有两种可能性。要么是在较早的区块中单独提交了证明,要么是 Replica 合约存在严重错误。但是,绝对没有迹象表明最近有任何事情被证明。

    图片6, 这只剩下一种可能性——副本合约存在致命缺陷。但是怎么做?快速浏览表明提交的消息必须属于可接受的根。否则,第 185 行的检查将失败。

    图片

    7,幸运的是,有一种简单的方法可以检查这个假设。知道没有被证明的消息的根是 0x00,因为messages[_messageHash] 将未初始化。接下来所要做的就是检查合同是否会接受它作为根。

    图片图片

    8,事实证明,在例行升级期间,Nomad 团队将可信根初始化为 0x00。需要明确的是,使用零值作为初始化值是一种常见的做法。不幸的是,在这种情况下,它具有自动验证每条消息的微小副作用。

    Image9,这就是黑客如此混乱的原因——你不需要了解 Solidity 或 Merkle Trees 或类似的东西。你所要做的就是找到一个有效的交易,用你的地址找到/替换对方的地址,然后重新广播它。

    10,例行升级将零哈希标记为有效根,这具有允许在 Nomad 上欺骗消息的效果。攻击者滥用它来复制/粘贴交易,并在疯狂的混战中迅速耗尽了桥。

    A16z应用安全成员Matt Gleason发推介绍了Nomad 被攻击的原因

    Nomad 桥以与 Qubit 的 QBridge 类似的方式获得。桥的不安全配置导致特定路径允许发送任何事务。错误出现在 Replica 的“进程”函数中。

    Process 旨在确保消息已被证明,然后处理该消息,这通常应该没问题。

    图片

    它使用acceptableRoot 来执行此操作,它将检查根是否已被证明或在当前时间之前已被确认。

    图片出现这个问题是因为在 solidity 中,如果一个映射键在此之前没有被看到,那么它将默认为零,从而导致尝试确认根值为零。但是,由于它们初始化时使用的是 0 的 confirmed Root ,这意味着零在技术上是一个已确认的根。

    图片

    因此,系统会接受任何以前从未见过的消息,并将其当作真实消息来处理,这意味着你所需要做的就是要求所有的桥的钱,你就会得到它。

    Paradigm工程师@ParadigmEng420发推提醒用户如果在Nomad 、Evmos、Moonbeam、Milkomeda有任何资金,需要交换出游牧资产,并使用不同的跨链桥,尽快回到以太坊或另一个链。他还指出,Nomad 暂停了中继器,并试图使用观察者审查所有桥接交易,但是,这可能没什么帮助,因为漏洞利用是在合同方面而不是在基础设施方面。

    jinse.com
    好文章,需要你的鼓励
    jinse.com
    好文章,需要你的鼓励
    参与评论
    0/140
    提交评论
    文章作者: / 责任编辑: 我要纠错

    声明:本文系金色财经原创稿件,版权属金色财经所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:金色财经",违者将依法追究责任。

    提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

    金色财经 > 金色财经 罐罐儿 > 金色观察|“首次去中心化抢劫”:还原Nomad被攻击始末
    • 寻求报道
    • 金色财经中国版App下载
      金色财经APP
      iOS & Android
    • 加入社群
      Telegram
    • 意见反馈
    • 返回顶部
    • 返回底部