遭遇“黑吃黑”?MEV机器人损失2500万美元攻击事件分析

Beosin
Beosin 机构得得号

Apr 03, 2023 Beosin是总部位于新加坡的全球知名区块链安全公司,为区块链生态提供代码安全审计,安全风险监控、预警与阻断,虚拟资产被盗追回,KYT/AML等“一站式”安全产品+服务,已为全球2000多个区块链企业服务,保护客户资产5000多亿美元。

摘要: 恶意节点利用MEV-boost-relay相关漏洞,然后通过恶意三明治攻击价格操纵并最终获利。

2023年4月3日,据Beosin-Eagle Eye态势感知平台消息,MEV机器人遭受恶意三明治攻击,损失约2500万美元。

什么是三明治攻击?本次攻击又是如何发生,Beosin安全团队第一时间对事件进行了分析,结果如下。

攻击block:

https://etherscan.io/block/16964664

攻击者:

https://etherscan.io/address/0x3c98d617db017f51c6a73a13e80e1fe14cd1d8eb

Mev bug git link:

https://github.com/flashbots/mev-boost-relay/pull/330

Bundles analyze@samczsun:

https://twitter.com/samczsun/status/1642848556590723075?s=46&t=Ucn3vRhyG0n8a4YU2zWE0g

攻击简介:

恶意节点利用MEV-boost-relay相关漏洞,然后通过恶意三明治攻击价格操纵并最终获利。

MEVbot介绍:

最大可提取价值 (MEV) 是指通过在区块中添加和排除交易并更改区块中的交易顺序,可以从区块生产中提取的超过标准区块奖励和燃料费用的最大值。

在区块链数据上运行复杂的算法来检测盈利的 MEV 机会,有机器人自动将这些盈利交易提交到网络。

MEVbot有许多策略,dex中通过币价差套利,清算,NFT MEV等等而本次攻击中涉及的三明治交易,为了实现这样的功能,MEV bot会监视内存池内 DEX 的交易并且计算影响,抢先下单低价买入,然后在用户交易后卖出获利。最近FlashBots等 MEV 服务的兴起现在允许交易者创建“三明治捆绑包”,其中所有 3 笔交易都执行,或者都不执行。与此同时,矿工交易团队也有所增加,他们将三明治包直接挖到他们的区块中。

三明治攻击(sandwich attacks)是DeFi里流行的抢先交易技术的一种。为了形成一个“三明治”交易,攻击者(或者我们叫他掠夺性交易员)会找到一个待处理的受害者交易,然后试图通过前后的交易夹击该受害者。这种策略来源于买卖资产从而操作资产价格的方法。

三明治攻击介绍:

三明治攻击(sandwich attacks)是DeFi里流行的抢先交易技术的一种。为了形成一个“三明治”交易,攻击者(或者我们叫他掠夺性交易员)会找到一个待处理的受害者交易,然后试图通过前后的交易夹击该受害者。这种策略来源于买卖资产从而操作资产价格的方法。

三明治交易的目标是利用意外受害者的滑点,同时也有许多诱饵机器人反过来利用MEVBot的策略,例如恶意的诱饵代币,或者转账函数中特殊的金额指定等,而本次攻击利用了MEVBot相关漏洞。

链下BUG描述:

 

正常情况下恶意提议者很难修改bundles,这是因为双签惩罚,但是攻击parent_root和state_root被恶意设置为0x00,会导致PublishBlock返回error,但是由于旧版本没有对返回的error进行处理,从而获取已经披露的Bundles,才导致了事件的发生,下图是git中对该漏洞的修复。


链上攻击流程:


1.其中一次攻击为例,攻击者首先将目标瞄准到流动性很低的池子,并试探MEV机器人是否会抢跑交易。例如下图中,我们可以看到攻击者通过0.04 WETH试探MEV机器人,勾引MEV机器人进行抢跑套利。发现池子确实有MEV机器人进行监控,并且MEV机器人会使用其所有的资金进行套利。
2.攻击者试探成功之后使用预先在Uniswap V3中兑换出来的大量代币在低流动性的V2池内进行兑换操作,勾引MEV使用全部的WETH进行抢跑购买不值钱的代币。然而被抢跑的交易其实才是瞄准了MEV的攻击交易,使用了大量的代币换出MEV刚刚进行抢跑的所有WETH。
3.这时由于MEV进行抢跑的WETH已经被攻击交易兑换出来,所以MEV机器人想要重新换回WETH的操作会执行失败。
 例如

总结
一是因为攻击者利用MEVbot相关Bug,这是攻击能够完成的主要原因。
二是因为MEV每次在低流动性池中套利仍然会使用自身所有的资金,这是攻击损失如此大的可能原因。
三是因为在uniswap V3中可以用少量资金获得同样的代币,而其价值在V2池中已经被操纵失衡,这是攻击中使用的主要手法。
部分参考:https://github.com/flashbots/mev-boost-relay/pull/330感谢twitter@samczsun

资金追踪:


截止发稿前,Beosin KYT反洗钱分析平台发现目前主要被盗资金位于地址0x3c98d617db017f51c6a73a13e80e1fe14cd1d8eb($20,051,175.47),0x5B04db6Dd290F680Ae15D1107FCC06A4763905b6($2,334,519.51),0x27bf8f099Ad1eBb2307DF1A7973026565f9C8f69($2,971,393.59)。约2520万美元。Beosin作为一家全球领先的区块链安全公司,在全球10多个国家和地区设立了分部,业务涵盖项目上线前的代码安全审计、项目运行时的安全风险监控、预警与阻断、虚拟货币被盗资产追回、安全合规KYT/AML等“一站式”区块链安全产品+服务,目前已为全球3000多个区块链企业提供安全技术服务,审计智能合约超过3000份,保护客户资产高达5000多亿美元。欢迎点击公众号留言框,与我们联系。

链得得仅提供相关信息展示,不构成任何投资建议
本文系作者 Beosin 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信