木星链 木星链
Ctrl+D收藏木星链
首页 > TRX > 正文

DIG:如何通过恒定乘积黑掉 SushiSwap ?简析 SushiSwap 第二次被攻击始末

作者:

时间:1900/1/1 0:00:00

背景

2021年1月27日,据慢雾区情报,SushiSwap再次遭遇攻击,此次问题为DIGG-WBTC交易对的手续费被攻击者通过特殊的手段薅走。慢雾安全团队在收到情报后立马介入相关事件的分析工作,以下为攻击相关细节。

SushiMaker是什么

SushiMaker是SushiSwap协议中的一个重要的组件,其用于收集SushiSwap每个交易对的手续费,并通过设置每个代币的路由,将不同交易对的手续费最终转换成sushi代币,回馈给sushi代币的持有者。这个过程就是发生在SushiMaker合约上。

说说恒定乘积

恒定乘积的公式很简单,在不计算手续费的情况下,恒定乘积的公式为

韩国金融监管局今日将与各交易所开会讨论如何判断加密资产的证券属性:6月2日消息,韩国金融监管局(FSS)将于今日召集Gopax、Bithumb、Upbit、Korbit、Coinone等5家加密交易所与数字资产交易所协会DAXA举行非公开会议,就判断个别虚拟资产的证券属性的细节问题等进行讨论。FSS计划在审查虚拟资产证券时提出注意事项,并分享Upbit和Korbit等虚拟资产交易所自行判断证券的例子。[2023/6/2 11:53:48]

也就是说每次兑换,其实都是遵循这个公式,及交易前后K值不变,在兑换的过程中,由于要保持K值不变,公式的形式会是这个样子

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

海德薇格:我很期待看到 数字货币将如何改变人民币支付市场:第十七届中国国际金融论坛于2020年12月17日-18日在上海举行。主题为“数字经济时代的金融服务”。国际银行业联合会(IBFed)总裁海德薇格?挪伦斯视频参会并致辞时指出:金融稳定委员会正在监测大科技公司的创新和金融稳定风险,并且已经发表了很多关于该主旨的文章,例如在2020年10月13日发表的一篇文章中,就提出了关于全球稳定币的10个高层建议。考虑到创新的规模之大,监管机构和监督机构都需要拓宽自己的视野,并且彼此之间开展更多合作。

中国监管机构一直在积极加强监管,以便随时应对大科技公司所引起的市场变化。例如,去年,中国人民银行就起草了相关规则,要求将银行和金融服务与金融控股公司旗下的科技公司分离,并对这些科技公司进行监管。 现在,要求支付公司必须有100%的存款准备金。

中国还率先推出了由国家信用支持的数字货币。我很期待看到这些数字货币将如何改变中国国内和境外的人民币支付市场。(新浪财经)[2020/12/17 15:29:42]

从公式上可以看到,当输出代币Y的兑换数量上限取决于Y代币的数量,而和X代币数量的大小无关,反过来说,如果要卖掉的X代币数量很大,但是Y代币的数量很小,那么就会造成大量的X代币只能兑换出少量的Y代币,而这个兑换价格相比正常的交易价格会偏离很多,这就是所谓的滑点,是本次攻击中的关键。

波卡社区正在讨论如何限制验证者大幅更改佣金:刚刚,Web3基金会技术教育主管Bill Laboon发推提醒用户小心局。Web3基金会、Polkadot官方以及Parity都没有赠送DOT和KSM代币。与此同时,Bill Laboon还公布波卡项目进展。内容显示:1.目前验证者可以随意更改佣金比例。目前社区正在讨论如何限制佣金变动以避免佣金大幅变动,例如在获得足够多的提名者后,将佣金由0%改为100%。2.财政部已经开始讨论Elara 0.2提案。Elara 0.2是Patract Labs是为以Substrate为基础的链提供的基础设施。[2020/10/29]

攻击流程

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

币情观察室 | 揭秘庄家操盘手法 主力是如何血洗散户?:4月9日19:00,金色盘面邀请行情大V 币圈缠论狙击手做客金色财经《币情观察室》直播间,将分享《揭秘庄家操盘手法 主力是如何血洗散户?》,敬请关注,扫描下图二维码即可观看直播![2020/4/9]

其中,brdigeFor函数的逻辑如下:

根据bridgeFor的逻辑,我们不难发现,如果没有手动设置过特定币种的bridge,那么默认的bridge是WETH,也就是说,在未设置bridge的情况下,默认是将手续费兑换成WETH。而DIGG这个币,就是正好没有通过setBridge设置对应的bridge的。

但是这里还有一个问题,就是在swap的过程中,如果这个交易对不存在,兑换的过程是失败的。本次攻击中,DIGG-WETH这个交易对一开始并不存在,所以攻击者预先创建一个DIGG-WETH的交易对,然后添加少量的流动性。这个时候如果发生手续费兑换,根据前面说的恒定乘积的特性,由于DIGG-WETH的流动性很少,也就是DIGG-WETH中的WETH上限很小,而SushiMaker中的要转换的手续费数量相对较大,这样的兑换会导致巨大的滑点。兑换的过程会拉高DIGG-WETH交易对中WETH兑DIGG的价格,并且,DIGG-WETH的所有DIGG手续费收益都到了DIGG-WETH交易中。通过观察DIGG-WETH交易对的流动性情况,流动性最大的时候也才只有不到2800美元的流动性,这个结果也能和公式的推导相互验证。

攻击者在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

By:?慢雾安全团队

标签:DIGIGGETHDIGGHidigital btcigg币局eth2.0币价Doge Digger

TRX热门资讯
ETH:ETH碰到前高之后 哪些观点值得讨论?

ETH跨越山河大海,终于摸到了上一次牛市的高点。从2018年1月到2021年1月,已经过去了3年。三年前挂在高点的朋友,现在终于松了一口气.

1900/1/1 0:00:00
OIN:币赢CoinW关于ETF部分币种份额合并的公告

尊敬的CoinW用户:由于当前部分ETF产品的价格过低,为提高其价格变化的灵敏度,优化交易体验,CoinW将在2021年1月26日20:00-1月27日08:00期间.

1900/1/1 0:00:00
DOT:Polkadot波卡是2021年新的财富密码?

Polkadot波卡的热度持续不断,除了一路攀涨的币价和不久之后要到来的插槽拍卖外,“价值网络”的讨论又再度被提起.

1900/1/1 0:00:00
GAM:GameStop股票创历史新高-感谢Redditors

在一次不寻常的事件中,视频游戏公司GameStop的股价创下了历史新高,达到76.76美元,这要归功于Redditor和卖空者之间的斗争.

1900/1/1 0:00:00
LOEx国际站1月28日15:00上线BADGER

尊敬的LOEx用户:LOEx国际站上线BADGER!并开放BADGER/USDT交易对具体时间如下:提币:待定充币:1月28日15:00交易对:1月28日15:00注:未到充值开放时间请勿提前充.

1900/1/1 0:00:00
GAT:Gate.io“天天理财”第108期 USDT锁仓理财明日开启,年化收益8%

Gate.io全新理财福利产品“天天理财”每天中午12点至少一场理财福利,赚主流币理财收益,天天理财天天乐!《Gate.io“天天理财”第107期ETH锁仓理财》于今日中午12点上线.

1900/1/1 0:00:00