首页 > 市场线报 > 正文
gateio

欧意交易所

全球前三大交易所之一,新用户注册可拆数字盲盒,100%可以获得数字货币

点击注册 进入官网

【币安智能链DeFi项目AutoShark Finance被黑分析】据慢雾区消息,币安智能链(BSC)DeFi项目AutoSharkFinance被黑,导致代币价格闪崩。慢雾安全团队在第一时间跟进分析,并将结果以简讯的形式分享给大家,供大家参考。由于AutoShark策略池的机制,攻击者需要事先存入一定数量的LP代币到策略池中,为后续攻击做准备,所以整个攻击其实分成了2步,这里主要分析的是第2笔的攻击交易。攻击步骤如下:
1.攻击者从Pancake的WBNB/BUSD交易对中借出大量WBNB;
2.将第1步借出的全部WBNB中的一半通过Panther的SHARK/WBNB交易对兑换出大量的SHARK,同时池中WBNB的数量增多;
3.将第1步和第2步的WBNB和SHARK打入到SharkMinter中,为后续攻击做准备;
4.调用AutoShark项目中的WBNB/SHARK策略池中的getReward函数,该函数会根据用户获利的资金从中抽出一部分手续费,作为贡献值给用户奖励SHARK代币,这部分操作在SharkMinter合约中进行操作;
5.SharkMinter合约在收到用户收益的LP手续费之后,会将LP重新拆成对应的WBNB和SHARK,重新加入到Panther的WBNB/SHARK交易池中;
6.由于第3步攻击者已经事先将对应的代币打入到SharkMinter合约中,SharkMinter合约在移除流动性后再添加流动性的时候,使用的是SharkMinter合约本身的WBNB和SHARK余额进行添加,这部分余额包含攻击者在第3步打入SharkMinter的余额,导致最后合约获取的添加流动性的余额是错误的,也就是说SharkMinter合约误以为攻击者打入了巨量的手续费到合约中;
7.SharkMinter合约在获取到手续费的数量后,会通过tvlInWBNB函数计算这部分手续费的价值,然后根据手续费的价值铸币SHARK代币给用户。但是在计算LP价值的时候,使用的是PantherWBNB/SHARK池的WBNB实时数量除以LP总量来计算LP能兑换多少WBNB。但是由于在第2步中,Panther池中WBNB的数量已经非常多,导致计算出来的LP的价值非常高;
8.在LP价值错误和手续费获取数量错误的情况下,SharkMinter合约最后在计算攻击者的贡献的时候计算出了一个非常大的值,导致SharkMinter合约给攻击者铸出了大量的SHARK代币;
9.攻击者后续通过卖出SHARK代币来换出WBNB,偿还闪电贷。然后获利离开。

gateio

抹茶交易所

抹茶禁止大陆用户KYC,真清退大陆用户,不允许交易了!建议注册全球第一的币安,或者欧意都可以

我选币安 就要注册抹茶

抹茶线报|提供一手热门交易所及数字资产快讯

文章评论已关闭!
picture loss