http://www.7klian.com

慢雾:简析SushiSwap第二次被进攻始末

By :?yudan@慢雾安详团队

配景

2021 年 1 月 27 日,据慢雾区情报,SushiSwap 再次遭遇进攻,此次问题为 DIGG-WBTC 生意业务对的手续费被进攻者通过非凡的手段薅走。慢雾安详团队在收到情报后立马参与相关事件的阐明事情,以下为进攻相关细节。

SushiMaker 是什么

SushiMaker是 SushiSwap 协议中的一个重要的组件,其用于收集 SushiSwap 每个生意业务对的手续费,并通过配置每个代币的路由,将差异生意业务对的手续费最终转换成 sushi 代币,回馈给 sushi 代币的持有者。这个进程就是产生在SushiMaker合约上。

说说恒定乘积

恒定乘积的公式很简朴,在不计较手续费的环境下,恒定乘积的公式为

慢雾:简析SushiSwap第二次被打击始末

也就是说每次兑换,其实都是遵循这个公式,及生意业务前后 K 值稳定,在兑换的进程中,由于要保持 K 值稳定,公式的形式会是这个样子

慢雾:简析SushiSwap第二次被打击始末

个中 X 代表卖掉的代币,Y 代表要购置的代币,那么每次能兑换到的代币数量会是这个样子(详细的推导进程就不演示了 :D)

慢雾:简析SushiSwap第二次被打击始末

从公式上可以看到,当输出代币 Y 的兑换数量上限取决于 Y 代币的数量,而和 X 代币数量的巨细无关,反过来说,假如要卖掉的 X 代币数量很大,可是 Y 代币的数量很小,那么就会造成大量的 X 代币只能兑换出少量的 Y 代币,而这个兑换价值对比正常的生意业务价值会偏离许多,这就是所谓的滑点,是本次进攻中的要害。

进攻流程

2020 年 11 月 30 日,SushiSwap 就曾因为SushiMaker的问题呈现过一次进攻(详解参阅:以小博大,简析 Sushi Swap 进攻事件始末),本次进攻和第一次进攻相似,但流程上有区别。相较于旧合约,在新的合约中, 手续费在兑换的进程中会通过 bridgeFor 函数为差异生意业务对中的代币寻找特定的兑换路由,,然后举办兑换。

慢雾:简析SushiSwap第二次被打击始末

个中,bridgeFor 函数的逻辑如下:

慢雾:简析SushiSwap第二次被打击始末

按照 bridgeFor 的逻辑,我们不难发明,假如没有手动配置过特定币种的 bridge,那么默认的 bridge 是 WETH,也就是说,在未配置 bridge 的环境下,默认是将手续费兑换成 WETH。而 DIGG 这个币,就是正好没有通过 setBridge 配置对应的 bridge 的。

慢雾:简析SushiSwap第二次被打击始末

可是这里尚有一个问题,就是在 swap 的进程中,假如这个生意业务对不存在,兑换的进程是失败的。本次进攻中,DIGG-WETH 这个生意业务对一开始并不存在,所以进攻者预先建设一个 DIGG-WETH 的生意业务对,然后添加少量的活动性。这个时候假如产生手续费兑换,按照前面说的恒定乘积的特性,由于 DIGG-WETH 的活动性很少,也就是 DIGG-WETH 中的 WETH 上限很小,而SushiMaker中的要转换的手续费数量相对较大,这样的兑换会导致庞大的滑点。兑换的进程会拉高 DIGG-WETH 生意业务对中 WETH 兑 DIGG 的价值,而且,DIGG-WETH 的所有 DIGG 手续费收益都到了 DIGG-WETH 生意业务中。通过调查 DIGG-WETH 生意业务对的活动性环境,活动性最大的时候也才只有不到 2800 美元的活动性,这个功效也能和公式的推导彼此验证。

慢雾:简析SushiSwap第二次被打击始末

进攻者在SushiMaker完成手续费转换后,由于 ?DIGG-WETH 生意业务对中 WETH 兑 DIGG 的价值已经被拉高,导致少量的 WETH 即可兑换大量的 DIGG,而这个 DIGG 的数量,正是 DIGG-WBTC 生意业务对的大部门手续费收入。

总结

本次进攻和 SushiSwap 第一次进攻雷同,都是通过操控生意业务对的兑换价值来发生赢利。可是进程是纷歧样的。第一次进攻是因为进攻者利用 LP 代币自己和其他代币建设了一个新的生意业务对,并通过哄骗初始活动性操控了这个新的生意业务对的价值来举办赢利,而这次的进攻则操作了 DIGG 自己没有对 WETH 生意业务对,而进攻者建设了这个生意业务对并操控了初始的生意业务价值,导致手续费兑换进程中发生了庞大的滑点,进攻者只需利用少量的 DIGG 和 WETH 提供初始活动性即可获取巨额利润。

相关参考链接如下:

SushiMaker 归集手续费生意业务:

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

进攻者套利生意业务:

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

DIGG-WETH 活动性详情:

https://www.sushiswap.fi/pair/0xf41e354eb138b328d56957b36b7f814826708724

Sushi 第一次被进攻详解:

https://mp.weixin.qq.com/s/-Vp9bPSqxE0yw2hk_yogFw

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