宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > Filecoin > 正文

慢雾简析 PancakeBunny 被黑:由 WBNB-BUNNY LP 价格计算存在缺陷所致

作者:

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

慢雾团队称,这是一次典型的利用闪电贷操作价格的攻击,其关键点在于WBNB-BUNNYLP的价格计算存在缺陷,而BunnyMinterV2合约铸造的BUNNY数量依赖于此存在缺陷的LP价格计算方式,最终导致攻击者利用闪电贷操控了WBNB-BUNNY池子从而拉高了LP的价格,使得BunnyMinterV2合约铸造了大量的BUNNY代币给攻击者。

撰文:慢雾

今日6点35分左右开始,币安智能链上DeFi收益聚合器PancakeBunny从240美元闪崩,一度跌破2美元,最高跌幅一度超99%。

对此PancakeBunny回应称,遭到来自外部人员的闪电贷攻击,共损失114,631枚BNB和697,245枚BUNNY,按当时价格计算约合4200万美元。

慢雾:警惕QANX代币的双花攻击风险:据慢雾区消息,近期存在恶意用户利用QANX代币的转账锁定、解锁功能(transferLocked/unlock)触发的事件记录与正常使用transfer功能转账触发的Transfer事件记录相同而进行双花攻击。

慢雾安全团队建议已上架此币种的平台及时自查,未上架的平台在对接此类币种时应注意以上风险。

QANX: 0xaaa7a10a8ee237ea61e8ac46c50a8db8bcc1baaa[2022/3/26 14:18:46]

简单来说,黑客使用PancakeSwap借入了大量BNB,之后继续操纵USDT/BNB以及BUNNY/BNB价格,从而获得大量BUNNY并进行抛售,导致BUNNY价格闪崩,最后黑客通过PancakeSwap换回BNB。

慢雾xToken被黑事件分析:两个合约分别遭受“假币”攻击和预言机操控攻击:据慢雾区消息,以太坊 DeFi 项目 xToken 遭受攻击,损失近 2500 万美元,慢雾安全团队第一时间介入分析,结合官方事后发布的事故分析,我们将以通俗易懂的简讯形式分享给大家。

本次被黑的两个模块分别是 xToken 中的 xBNTa 合约和 xSNXa 合约。两个合约分别遭受了“假币”攻击和预言机操控攻击。

一)xBNTa 合约攻击分析

1. xBNTa 合约存在一个 mint 函数,允许用户使用 ETH 兑换 BNT,使用的是 Bancor Netowrk 进行兑换,并根据 Bancor Network 返回的兑换数量进行铸币。

2. 在 mint 函数中存在一个 path 变量,用于在 Bancor Network 中进行 ETH 到 BNT 的兑换,但是 path 这个值是用户传入并可以操控的

3. 攻击者传入一个伪造的 path,使 xBNTa 合约使用攻击者传入的 path 来进行代币兑换,达到使用其他交易对来进行铸币的目的。绕过了合约本身必须使用 ETH/BNT 交易对进行兑换的限制,进而达到任意铸币的目的。

二)xSNXa 合约攻击分析

1. xSNXa 合约存在一个 mint 函数,允许用户使用 ETH 兑换 xSNX,使用的是 Kyber Network 的聚合器进行兑换。

2. 攻击者可以通过闪电贷 Uniswap 中 ETH/SNX 交易对的价格进行操控,扰乱 SNX/ETH 交易对的报价,进而扰乱 Kyber Network 的报价。从而影响 xSNXa 合约的价格获取

3. 攻击者使用操控后的价格进行铸币,从而达到攻击目的。

总结:本次 xToken 项目被攻击充分展现了 DeFi 世界的复杂性,其中针对 xSNXa 的攻击更是闪电贷操控价格的惯用手法。慢雾安全团队建议 DeFi 项目开发团队在进行 DeFi 项目开发的时候要做好参数校验,同时在获取价格的地方需要防止预言机操控攻击,可使用 Uniswap 和 ChainLink 的预言机进行价格获取,并经过专业的安全团队进行审计, 保护财产安全。详情见官网。[2021/5/13 21:57:48]

慢雾安全团队也对此次被黑事件进行了详细分析,具体如下:

声音 | 慢雾分析:以太坊“君士坦丁堡”和“圣彼得堡”硬分叉成功:据慢雾实时监测以太坊“君士坦丁堡”和“圣彼得堡”硬分叉成功。目前通过 Geth 和 Parity 节点观察到在区块高度 7280000 之后出块稳定,说明以太坊硬分叉已经成功,中间由于最后五分钟用户访问量过大导致 Etherscan 和 ethdevops 网站无法访问,说明大家还是很关注本次以太坊升级的。同时慢雾也提醒大家不要过于激动,分叉是成功了,未来会遇到什么问题目前都是不确定的,希望大家继续保持关注。[2019/3/1]

攻击者先发起一笔交易,使用0.5个WBNB与约189个USDT在PancakeSwap中添加流动性并获取对应的LP,随后将LP抵押至PancakeBunny项目的VaultFlipToFlip合约中。

声音 | 慢雾科技余弦:所有数字货币项目方应完整review所有第三方模块:据IMEOS报道,慢雾科技余弦提醒所有数字货币相关项目(如交易所、钱包、DApp 等)都应该强制至少一名核心技术完整 review 一遍所有第三方模块,看看是否存在可疑代码,也可以抓包看看是否存在可疑请求。供应链攻击不计代价,数字货币依然炙手可热。

比如最新发现的: Hacker backdoors popular JavaScript library to steal Bitcoin funds 。[2018/11/27]

在LP抵押完成后,攻击者再次发起另一笔交易,在这笔交易中攻击者先从PancakeSwap的多个流动性池子中闪电贷借出巨量的WBNB代币,并从Fortube项目的闪电贷模块借出一定数量的USDT代币。随后使用借来的全部USDT代币与部分WBNB代币在PancakeSwap的WBNB-USDT池子添加流动性,并把获得的LP留在WBNB-USDT池子中。

动态 | 慢雾区:多个 EOS 游戏合约遭受攻击:据慢雾区:多个 EOS 游戏合约遭受攻击,请广大用户注意风险,保障资产安全。[2018/9/14]

由于在步骤1攻击者已经在VaultFlipToFlip合约中进行了抵押,因此攻击者在添加完流动性后直接调用VaultFlipToFlip合约的getReward函数来获取BUNNY代币奖励并取回先前抵押的流动性。

在进行getReward操作时,其会调用BunnyMinterV2合约的mintForV2函数来为调用者铸造BUNNY代币奖励。

在mintForV2操作中,其会先将一定量(performanceFee)的LP转至WBNB-USDT池子中移除流动性,但由于在步骤2中攻击者把大量的LP留在了池子中,因此BunnyMinterV2合约将会收到大量的WBNB代币与USDT代币。

在完成移除流动性后会调用zapBSC合约的zapInToken函数分别把步骤5中收到的WBNB与USDT代币转入zapBSC合约中。

而在zapInToken操作中,其会在PancakeSwap的WBNB-USDT池子中把转入的USDT兑换成WBNB。随后再将合约中半数WBNB在PancakeSwap的WBNB-BUNNY池子中兑换成BUNNY代币,并将得到的BUNNY代币与剩余的WBNB代币在WBNB-BUNNY池子中添加流动性获得LP,并将此LP转至mintForV2合约中。而由于步骤5中接收到的非预期的大量的WBNB,并且进行WBNB兑换成BUNNY代币的操作,因此WBNB-BUNNY池子中的WBNB数量会大量增加。

在完成zapInToken操作后会计算BunnyMinterV2合约当前收到的WBNB-BUNNYLP数量,并将其返回给mintForV2。随后将会调用PriceCalculatorBSCV1合约的valueOfAsset函数来计算这些LP的价值,这里计算价值将会以BNB结算(即单个LP价值多少个BNB)。

在valueOfAsset计算中,其使用了WBNB-BUNNY池子中WBNB实时的数量乘2再除以WBNB-BUNNYLP总数量来计算单个LP的价值(valueInBNB)。但经过步骤7,我们可以发现WBNB-BUNNY池子中的WBNB非预期的数量大量变多了,这就导致了在计算单个LP的价值会使得其相对BNB的价格变得非常高。

随后在mintForV2中,合约会以在步骤9中计算出的LP价值来通过amountBunnyToMint函数计算需要给攻击者铸造多少BUNNY代币。但由于价格计算方式的缺陷导致最终LP的价格被攻击者恶意的操控抬高了,这就导致了BunnyMinterV2合约最终给攻击者铸造了大量的BUNNY代币(约697万枚)。

在拿到BUNNY代币后,攻击者将其分批卖出成WBNB与USDT以归还闪电贷。完成整个攻击后拿钱走人。

慢雾团队称,这是一次典型的利用闪电贷操作价格的攻击,其关键点在于WBNB-BUNNYLP的价格计算存在缺陷,而BunnyMinterV2合约铸造的BUNNY数量依赖于此存在缺陷的LP价格计算方式,最终导致攻击者利用闪电贷操控了WBNB-BUNNY池子从而拉高了LP的价格,使得BunnyMinterV2合约铸造了大量的BUNNY代币给攻击者。慢雾安全团队建议,在涉及到此类LP价格计算时可以使用可信的延时喂价预言机进行计算或者参考此前AlphaFinance团队。

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

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

慢雾科技

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

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

入驻指南:

/apply_guide/

本文网址:

/news/9993195.html

免责声明:

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

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

上一篇:

Bitfinex一周简报

标签:UNNBUNBUNNYBNBcrazybunny币是什么时候出bunny币价格BUNNYINU币BNB Hero Token

Filecoin热门资讯
顶级做市商评测 Uniswap V3:哪些因素可以在 V3 中维持有效的做市策略?

与V2相比,UniswapV3做市需要更精细的调整和更高频率的干预。这也意味着通过参数调整,UniswapV3可以打造更复杂的做市策略.

1900/1/1 0:00:00
区块链如何为下一代网络安全奠定基础

而NFT像其他加密应用一样吸引了公众想象力。然而,本轮牛市带来的大问题依然存在。我们是否看到了加密货币开始被大规模采用?在普通大众真正采用DeFi这类产品的道路上还存在一些障碍。安全是最大的障碍之一.

1900/1/1 0:00:00
币安杠杆代币临时维护公告(2021-05-19)

亲爱的用户:币安已暂停BTCUP、BTCDOWN、ETHUP、ETHDOWN、BNBUP、BNBDOWN之外的所有杠杆代币的交易,并暂停所有杠杆代币的申购和赎回功能。交易、申购和赎回恢复时间将另行通知。给您带来不便,敬请谅解.

1900/1/1 0:00:00
HomiEx(红米交易所)关于上线GV/USDT交易对的公告

亲爱的用户: HomiEx将于2021年5月20日19:00(UTC8)上线GV/USDT交易对.

1900/1/1 0:00:00
BitMart上线SafeSpace Protocol (SAFESPACE)

亲爱的BitMart用户:BitMart将于2021年5月21日上线代币SafeSpaceProtocol(SAFESPACE)。届时将开通SAFESPACE/USDT交易对.

1900/1/1 0:00:00
金色早报 | Uniswap V3 总锁仓价值突破十亿美元

头条 ▌北京地区首张数字人民币保单签发落地5月17日,现代保险为付女士签发了北京市首张数字人民币保单:“橙易保”百万医疗险保单.

1900/1/1 0:00:00