链资讯 链资讯
Ctrl+D收藏链资讯
首页 > DAI > 正文

UNN:梅开二度 —— PancakeBunny 被黑分析_CRAZYBUNNY币

作者:

时间:

By:慢雾安全团队

据慢雾区消息,2021年07月17日,DeFi收益聚合器PancakeBunny在Polygon上的版本遭受闪电贷攻击,慢雾安全团队第一时间介入分析,并将结果分享如下。

值得注意的是本次攻击与5月20日PancakeBunny在币安智能链上的版本遭受的闪电贷攻击类似。此前慢雾安全团队也进行了简要分析,具体可查看:代币闪崩,差点归零-PancakeBunny被黑简析。

攻击细节分析

首先攻击者从AAVE中闪电贷借出大量的USDC、USDT、WETH代币,并将借来的USDC与USDT代币转入SushiSwap中添加流动性以获得SLP。

随后攻击者进行了本次攻击最为关键的操作:将添加流动性获得的LP的一小部分抵押至VaultSushiFlipToFlip合约中,为获得polyBUNNY代币奖励做准备。而其余大部分LP都抵押到MiniChefV2中,并将存款收益地址指定为VaultSushiFlipToFlip合约。

接下来为了减少攻击成本,使用借来的100,000个WETH代币,在QuickSwap中将其兑换成WMATIC代币(在后面的分析将会说明为何这样会减少攻击成本)

随后攻击者调用了VaultSushiFlipToFlip合约的withdrawAll函数,以获取抵押的SLP与polyBUNNY代币奖励。我们切入此函数进行具体分析:

声音 | 罗永浩回应币圈邀请:感谢好意,但发币我自己也会:金色财经报道,11月3日,罗永浩被限制消费一事在微博上热传,对此币圈人士纷纷表示要帮助罗永浩还债。面对币圈大佬的相邀,罗永浩在11月4日凌晨进行了回应,罗永浩表示:“感谢币圈的朋友们看得起我,但发币我自己也会,只是没打算做,不管怎么样,谢谢你们的好意。????[2019/11/5]

在上图代码第162行与163行,分别通过balanceOf函数与principalOf函数获取攻击者抵押凭证换算成用户通过VaultSushiFlipToFlip合约在MiniChefV2中抵押的SLP数量以及用户在VaultSushiFlipToFlip合约中抵押时记录的SLP数量。理论上这两个数量不应相差太多,但通过分析balanceOf函数我们发现:其是通过balance函数获取VaultSushiFlipToFlip合约在MiniChefV2中抵押的SLP数量与用户持有的凭证占比相乘得到amount的。

由于攻击者已提前将大量的SLP未通过VaultSushiFlipToFlip合约直接在MiniChefV2合约中抵押并将受益地址指给VaultSushiFlipToFlip合约,因此balance函数将会获取到一个比预期大得多的值,而攻击者的凭证占比却又是正常的,最后导致赋给amount的是个比预期大得多的值。这就直接导致了在上图代码第176行计算出的performanceFee参数是个非预期的巨大值。

动态 | 币圈用户信息大规模泄露,网络/电话事件频发:据降维安全实验室了解,有大量用户反馈称接到火币、OKEx及币安等交易所“客服”、“大客户经理”的电话。不法分子以各种渠道非法获取交易所注册用户的手机号,以电销的形式招揽交易所用户加入微信群或QQ群,用户加入群后,会有专门的“营销部”负责指导客户炒币,“技术部”负责给客户传播木马病。此外,火币两日前曾发布相关公告提醒用户防范网络/电话,但仍有用户陆续遭到骚扰,降维安全实验室在此提示广大用户保持警惕,谨防上当受。[2019/8/8]

随后将此异常的performanceFee参数传入mintForV2函数中参与铸造polyBUNNY代币奖励的计算,我们切入此函数进行分析:

我们可以发现其通过调用mintFor函数进行具体的逻辑处理,首先在上图代码第205行将SLP发送给Pair合约,为后续移除流动性做准备。由于shouldMarketBuy函数最终价格比较计算为false,因此将通过if逻辑调用_zapAssets函数。我们切入_zapAssets函数继续分析:

在_zapAssets函数,由于asset为SLP因此将通过elseif逻辑先通过调用SushiSwapRouter合约的removeLiquidity函数进行移除流动性,随后通过_tokenToAsset函数将移除流动性获得USDC与USDT代币分别在QuickSwap中兑换成polyBUNNY与WETH代币并在QuickSwap中添加流动性。接下来我们对_tokenToAsset函数进行分析:

声音 | 江卓尔:在下个周期币圈大概率还是一百倍:莱比特矿池江卓尔微博称,第一,拆迁男是靠父母躺赢,币圈没有谁的币是父母给的吧,个人能力、认知、素质差距巨大。第二,币圈资产是高风险高收益资产,不能简单打折,固然熊市一来普遍一两折,但牛市一来也普遍百千倍。并且下个周期,币圈大概率还是一百倍。[2018/10/15]

通过简单分析我们可以发现,其将通过if逻辑直接调用zapPolygon合约的zapInToken函数,这里不再赘述判断条件的分析。接下来跟进zapInToken函数分析:

同样通过对判断条件的简单分析,我们可以指定其将通过上图代码第133行进入else逻辑,接下来调用_swapTokenForMATIC函数通过下图代码第221行if逻辑设定的代币兑换路径“USDC->WETH->WMATIC",USDT代币的兑换路径同样如此。

由于在此之前,攻击者已经使用借来的100,000个WETH代币在QuickSwap中通过“WETH->WMATIC”将其兑换成大量的WMATIC代币,所以上述通过“USDC/USDT->WETH->WMATIC”路径兑换到的WMATIC代币变得很少,因此接下来通过_swapMATICToFlip函数将WMATIC代币兑换成的WETH与polyBUNNY代币就会较少,导致最后转给BUNNY_POOL的LP会较少,达到减少消耗攻击者付出的SLP目的,最终减少了一部分攻击成本。

50,000,000枚USDT从Bitfinex转移到未知钱包:金色财经报道,Whale Alert监测数据显示,50,000,000枚USDT从Bitfinex转移到未知钱包。[2022/11/25 12:42:07]

接下来我们再看mintFor函数,在完成上述一系列操作后,将通过amountBunnyToMint函数计算需要铸造的polyBUNNY代币数量,而通过下图我们可以看出参与计算的contributionInETH参数来自于priceCalculator合约的valueOfAsset函数,但valueOfAsset函数接收的参数却是我们先前所说的_performanceFee参数,这是一个非预期的巨大值。

我们可以对valueOfAsset函数进行简单的分析:

由于asset是SLP,因此将通过上图代码第155行调用_getPairPrice函数,通过对此函数进行分析我们可以发现,参与价格获取的途径都为可信的预言机,因此攻击者无法直接操控预言机进行攻击。但由于参与计算的amount即_performanceFee是个非预期的巨大值,因此最终通过乘法计算得出的valueInETH与valueInUSD都是非预期的巨大值。

随后会将获得的非预期的contributionInETH参数传入amountBunnyToMint函数进行铸币数量计算。

传Roche Freedman律所除Kyle Roche外的其他律师也持有大量AVAX:金色财经报道,Debevoise&Plimpton律所律师Elliott Greenfield透露,Kyle Roche可能不是CryptoLeaks视频爆料中唯一获得Ava Labs股权和AVAX代币的律师,Roche Freedman律所中,除Kyle Roche之外,包括 Devin “Vevel” Freedman、Amos Friedland和Edward Normand等律师可能都持有大量AVAX代币,截止发稿时,相关人士均未回复置评请求。据此前报道,Cryptoleaks在其官网的视频爆料称Avalanche开发公司Ava Labs在几年前和美国律师事务 Roche Freedman达成一项合作协议,内容是Ava Labs向Roche Freedman支付大量Ava Labs股权和AVAX(现价值数亿美元),Roche Freedman则针对 Binance、Solana Labs和Dfinity Foundation等竞争对手发起恶意诉讼。(Blockworks)[2022/9/5 13:08:30]

而这里的priceOfETH与priceOfBunny都取自可信的ChainLink与官方自行喂价的预言机,因此最终经过乘法计算后,得到的铸币数量mintBunny是个非预期的巨大值。导致最终攻击者获得了大量的polyBUNNY代币奖励。

攻击流程

1.攻击者在AAVE闪电贷借出USDT/USDC/WETH代币,并在SushiSwap中添加流动性获得SLP。

2.将大部分的SLP转入MiniChefV2中并将受益地址指定给VaultSushiFlipToFlip合约,小部分抵押到VaultSushiFlipToFlip合约中。

3.由于攻击者的大部分抵押到MiniChefV2中的SLP受益地址指定给VaultSushiFlipToFlip合约,导致VaultSushiFlipToFlip获取到错误的balanceOf造成performanceFee变成一个非预期的巨大值。

4.最终铸造polyBUNNY代币奖励使用了此非预期的performanceFee参数,导致额外铸造了大量的polyBUNNY代币给攻击者。

5.最后攻击者抛售polyBUNNY代币,归还闪电贷,获利走人。

总结

****

此次攻击与第一次不同的点在于:并非是预言机被操控导致铸币数量错误,而是VaultSushiFlipToFlip合约获取在MiniChefV2中抵押的抵押品数量时,错误地获取了攻击者未通过VaultSushiFlipToFlip抵押的抵押品数量,导致参数铸币的参数异常。最终铸造出额外的polyBUNNY代币。

****

参考交易链接:

https://polygonscan.com/tx/0x25e5d9ea359be7fc50358d18c2b6d429d27620fe665a99ba7ad0ea460e50ae55

往期回顾

科普|加密货币,你中招了吗?(上)

假币的换脸戏法——技术拆解THORChain跨链系统“假充值”漏洞

强扭的瓜不甜——SafeDollar被黑分析

“不可思议”的被黑之旅——ImpossibleFinance被黑分析

走过最长的路,竟是自己的套路——Alchemix事件分析

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

币乎

https://bihu.com/people/586104

知识星球

https://t.zsxq.com/Q3zNvvF

火星号

http://t.cn/AiRkv4Gz

链闻号

https://www.chainnews.com/u/958260692213.htm

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

慢雾科技

现已在非小号资讯平台发布68篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/10171120.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

巨鲸的资金涌向哪里,哪里就是热点!

标签:UNNBUNBUNNYSHIBunnyVerseCRAZYBUNNY币bunny币价格怎么掉那么厉害SHIR

DAI热门资讯
BSN:Gate.io 已发VRX空投福利活动奖励公告_gate.io官方登录网页版

Gate.ioVRX空投福利活动已圆满结束,根据活动规则,我们已为符合规则的用户发放了活动奖励。用户可进入“钱包—账单明细”查询奖励发放情况.

区块链:专家观点:《数据安全法》为区块链发展带来的机遇_Game Token Gate

2021年6月23日下午,由深圳市信息服务业区块链协会、BSN发展联盟和中关村大数据产业联盟共同举办的“《数据安全法》为区块链发展带来的机遇”主题研讨会顺利召开.

BUN:美联储主席鲍威尔在半年度货币政策报告证词当前陈述偏鸽_BunnyToken

巴比特讯,美联储主席鲍威尔正在进行半年度货币政策报告证词陈述,目前言论偏鸽。鲍威尔称全国的房价正在以很高的速度上涨,目前为止,房地产市场并没有被不计后果的放贷所驱动;低利率正在推高房价,但个人偏.

区块链:币圈小蝶:小蝶干货,让你了解区块链的概念_APP

信息互联网通过TCP/IP协议可实现信息传输,如文本、图像、音频、视频等,而区块链不依赖于中介机构实现价值传递,如数字货币,数字资产等,实现价值互联网提供了另一种可能.

DAP:IPFS让一切皆有可能,让算力轻松入手_APP

以分布式存储作为内核的IPFS,将去中心化结构发挥到了极致。IPFS碎片式数据管理方式,将我们所保存的数据“零碎”地分布于整个网络之中,极大避免了各种外在因素所造成的数据泄漏与丢失问题,也可以让.

CREA:Yearn 创始人 Andre Cronje 在 Cream Finance 社区提出新 CREAM 代币经济设计提案_CRE

链闻消息,Yearn创始人AndreCronje在抵押借贷平台CreamFinance社区提出CREAM代币经济设计提案,该提案建议将iceCREAM作为CREAM代币的生产性资产.