By:?yudan@慢雾安全团队
背景
2021年1月27日,据慢雾区情报,SushiSwap再次遭遇攻击,此次问题为DIGG-WBTC交易对的手续费被攻击者通过特殊的手段薅走。慢雾安全团队在收到情报后立马介入相关事件的分析工作,以下为攻击相关细节。
SushiMaker是什么
SushiMaker?是SushiSwap协议中的一个重要的组件,其用于收集SushiSwap每个交易对的手续费,并通过设置每个代币的路由,将不同交易对的手续费最终转换成sushi代币,回馈给sushi代币的持有者。这个过程就是发生在?SushiMaker?合约上。
数据:过去12个月以太坊区块链已激活近2700万个新钱包:金色财经报道,区块链基金Variant Fund链上分析师Jack Gorman在社交媒体披露数据显示,过去12个月以太坊区块链上创建激活了超过2669万个新钱包,这意味着平均每30天就有超过200万个新ETH地址在链上活动。不过Jack Gorman也指出,每月以太坊链上至少授权一笔交易的地址数量只有450-700万个,而且超过70%的钱包会在活动3 天后沉寂,而66%的活跃交易地址仅活跃一天,95.5%的活跃交易地址过去12个月内活跃时间少于10天,分析认为低活跃度的以太坊链上钱包占据主导地位可能由投资者热衷追求代币空投导致。(U.today)[2023/7/30 16:07:07]
说说恒定乘积
数据:Tether今日再次铸造10亿枚USDT,7日内已铸造50亿枚USDT:金色财经报道,据 Lookonchain 监测显示,Tether 刚刚又在 Tron 上铸造了 10 亿枚 USDT,过去 7 天 Tether 已在 Tron 与以太坊上铸造 50 亿枚 USDT。[2023/3/21 13:17:31]
恒定乘积的公式很简单,在不计算手续费的情况下,恒定乘积的公式为
也就是说每次兑换,其实都是遵循这个公式,及交易前后K值不变,在兑换的过程中,由于要保持K值不变,公式的形式会是这个样子
其中X代表卖掉的代币,Y代表要购买的代币,那么每次能兑换到的代币数量会是这个样子(具体的推导过程就不演示了:D)
伯恩斯坦:金融服务创新将转移至以太坊生态系统的新金融应用领域:金色财经报道,伯恩斯坦周五一份报告显示,金融的未来将是没有银行的。银行仍将存在,但在后台充当“旧财富的保管人”。分析师Gautam Chhugani和Manas Agrawal表示,“新的财富创造和金融服务创新将转移到以太坊生态系统上的新金融应用领域”。
报告称,去中心化金融正在复兴,它“更具可持续性、可扩展性、透明性,并且代币经济得到改善”。
伯恩斯坦估计,到2028年,无银行DeFi的收入将达到400亿美元,总资产将从现在的约650亿美元增长到1万亿美元。由于快速采用,它预测未来十年的资产将达到5万亿美元。下一代DeFi将建立在可扩展的第2层上,交易成本降低95%,产品产生实际收入和可持续收益,而不是由代币激励驱动。[2023/3/10 12:54:33]
从公式上可以看到,当输出代币Y的兑换数量上限取决于Y代币的数量,而和X代币数量的大小无关,反过来说,如果要卖掉的X代币数量很大,但是Y代币的数量很小,那么就会造成大量的X代币只能兑换出少量的Y代币,而这个兑换价格相比正常的交易价格会偏离很多,这就是所谓的滑点,是本次攻击中的关键。
链游工作室Crypthulhu Studios完成300万美元融资,Coatue和Dapper Labs领投:7月6日消息,链游工作室 Crypthulhu Studios 宣布完成 300 万美元融资,本轮融资由 Coatue 和 Dapper Labs 领投。本轮融资将用于为该工作室的首个 P2E 区块链游戏Dimension X的推出提供资金。[2022/7/6 1:55:32]
攻击流程
2020年11月30日,SushiSwap就曾因为?SushiMaker?的问题出现过一次攻击(详解参阅:以小博大,简析SushiSwap攻击事件始末),本次攻击和第一次攻击相似,但流程上有区别。相较于旧合约,在新的合约中,手续费在兑换的过程中会通过bridgeFor函数为不同交易对中的代币寻找特定的兑换路由,然后进行兑换。
其中,bridgeFor函数的逻辑如下:
根据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
--前言生活的美好,不在于努力后的纸醉金迷,更不是自我放纵,真正的美是在于奋斗的过程,不要被短暂的风景迷失了前行的步伐,思考来自于冷静后的决断,而不是冲动后的幻想,只有心存希望,有所追求.
1900/1/1 0:00:00为继续扩大ZT交易平台用户规模及交易量,提升全球品牌影响力,并将ZT社区资源进行全新升级整合,打造成为全球TOP级数字资产交易平台,平台于日前特发起“ZT社区合伙人”招募计划.
1900/1/1 0:00:00伴随着以btc为代表的数字货币热潮,数字货币市场发展迅速。本文由mkz888z整理并发布据不完全统计,数字货币交易所丢币已经不止二十亿美金,从而揭露了当前交易所领域发展的最大瓶颈——资产安全的问.
1900/1/1 0:00:00大家好,我是币圈龙校长,如果你曾经错过了昨天,那么请不要再错过今天,过去的事,交给岁月去处理,将来的事,留给时间去证明BTC行情分析:小时图来.
1900/1/1 0:00:00行情分析:大饼此番下跌,主要原因还是因为美元近期表现十分良好,由于拜登正式登台之后推出的新一轮经济刺激计划,近几日耶伦当选财政部长加大跟进力度,欧元也出现了疲软导致美元进一步的走强.
1900/1/1 0:00:00文/七星谈币VX;lwtb666888行情分析自从昨天晚间触及低点1245企稳后一路上涨,持续到今日早间7点左右到达高点1374一线,走出了近130个点的涨幅.
1900/1/1 0:00:00