
代币YELD价格直接跳水归零:PolyYeld Finance被攻击事件全解析
北京时间7月28日,安全公司Rugdoc在推特表示,收益耕作协议PolyYeld Finance遭到攻击,所有者已宣布合约已被利用并铸造了大量YELD代币。CoinGeckko行情显示,YELD代币价格直线跳水归零,狂跌100%。
事件概览
攻击如何发生 Event overview
PolyYeld Finance 是 Polygon 网络上的下一代产量农业协议,具有许多独特和创造性的功能,使用户能够获得被动收入。
据悉,项目正在尝试创建一个类似于 Yearn 的协议,以减少对 Polygon Network 用户、LP 提供商和抵押者高价值的代币供应。在 2-3 个月的时间里,只会铸造 62100 个 YELD 代币。
北京时间7月28日,PolyYeld Finance意外遭到黑客“血洗”,被攻击之后,YELD代币价格直线跳水归零,狂跌100% !
这一次,黑客攻击使YELD代币价格直线跳水归零,可谓损失惨重。成都链安再次提醒各大项目方,一定要注意安全防范工作。
事件具体分析
攻击者如何得手 Event overview
整个攻击事件由黑客一手策划。攻击者利用xYELD代币转账时实际到账数量小于发送数量以及MasterChef合约抵押和计算奖励上存在的逻辑缺陷,通过投入大量资金控制MasterChef合约中抵押池的抵押代币数量,进而操纵奖励计算,从而获得巨额的xYELD奖励代币,最后利用QuickSwap套现离场。
攻击者地址:
0xa4bc39ff54e1b682b366b57d1f6b114a829f5c01
攻击合约:
A:0x1BdF24CB4c7395Bf6260Ebb7788c1cBf127E14c7
B:0x56ec01726b15b83c25e8c1db465c3b7f1d094756
攻击交易:
0x3c143d2a211f7448c4de6236e666792e90b2edc8f5035c3aa992fd7d7daca974
0x10eeb698a2cd2a5e23d526b2d59d39a15263be018dbbda97dad4f9fa8c70347f
Round 1
攻击者首先利用QuickSwap交易对将29.75 WETH换成527.695171116557304754 xYELD代币。
接下来,攻击者通过攻击合约在一笔交易反复调用MasterChef合约中的抵押提取函数将MasterChef中PID为16的抵押池中的xYELD代币数量减少0到最小值。
由于xYELD代币在转移时,如果recipient地址不是BURN_ADDRESS地址,变量transferTaxRate的值不为0,recipient地址在_isExcluded映射中对应的值不为true,并且发送者不为合约的拥有者,就会收取一定比例的手续费,当前比例为3%。手续费会转移到代币合约中,在满足特定条件后,会将收取的手续费作为流动性添加到对应交易对中去。
而在MasterChef合约中,抵押数量记录的是代币转移的初始数量,而不是实际到账数量。在进行提取操作时,可提取的数量为记录的数量,超出了用户实际抵押到本合约中的数量,因为在完成一次抵押提取操作后,该抵押池中的xYELD代币便会异常减少。
在进行攻击前MasterChef中的xYELD代币的数量为242.017807511865297458:
在进行攻击后MasterChef中的xYELD代币的数量为0.000000000000000001:
Round 2
攻击者事先通过攻击合约B在该抵押池中抵押0.009789171908299592 xYELD代币,并将推荐人设置为攻击合约A。在攻击合约A攻击完成后,控制攻击合约A在该抵押池中进行奖励领取,由于MasterChef合约中更新抵押池信息时使用的是balanceOf函数获取本合约中抵押代币数量,故获取到的数量是恶意减少之后的数量。
这会造成xYFLD抵押池中accYeldPerShare变量异常增大:
从而使得奖励变为巨额:
Round 3
在进行奖励发放时,由于计算出来的奖励数量远超过实际铸币数量,故将本合约中所有的YELD代币转移给攻击合约B,通过获取奖励得到的奖励代币数量为:3031.194777597579576657 YELD。
同时,因为攻击合约B的推荐人是攻击合约A,故在攻击合约B领取奖励时会对攻击合约A发放推荐奖励,计算方式为被推荐人获取的奖励的2%。由于传入的_pending数量为异常大的值,故攻击合约A获得的推荐奖励也为异常大的数量,攻击合约获得的推荐奖励为:
4995853249752.895065839722805591 YELD。
最后攻击者利用QuickSwap将所有的YELD代币兑换成USDC、WETH和MATIC套现离场。
事件复盘
我们需要注意什么 Case Review
本次事件与之前SafeDollar攻击事件类似,都是使用了相同的攻击手法。不同之处有两点:其一是此次攻击攻击者没有选择利用闪电贷来获取大量资金,而是投入了29.75 WETH作为攻击的初始资金;其二是MasterChef合约中推荐奖励机制的问题,正是这个推荐奖励机制将本次攻击的危害无限放大了。
MasterChef类型抵押池设计之时,还没有通缩通胀类代币的出现,故开发者并没有考虑这类代币可能会造成的影响。部分的项目方在进行代码开发时,直接使用了旧的MasterChef代码,并添加了通缩通胀类代币或者奖励作为抵押代币,这便导致了各种恶意攻击事件或异常情况的产生。就目前来看,MasterChef类型抵押池存在两种类型的问题:一是没有对通胀通缩类代币进行特殊处理,没有检查实际转移到合约中的代币数量是否与函数调用时填写的数量相同;二是添加了奖励代币作为抵押代币,导致奖励计算出现异常。
两种类型问题的根本原因还是在于计算奖励时,获取抵押量使用了balanceOf函数来获取。建议项目方在进行MasterChef类型抵押池代码开发时,使用一个单独的变量作为抵押数量的记录,然后计算奖励时,通过此变量来获取抵押代币数量,而不是使用balanceOf函数。
比推快讯
更多 >>- 某巨鲸四天内以 0.25 美元均价卖出 907 万枚 APX,目前仍持有 535 万枚
- 美参议院民主党人推动就加密货币市场结构法案展开跨党派共同起草程序
- 某鲸鱼在休眠 4 年后向 Kraken 存入 1757 枚 ETH,浮盈 388 万美元
- Arthur Hayes:加密市场有望在美财政部 TGA 账户完成资金补充后进入只涨不跌模式
- 某交易员开立 3 倍 ASTER 多头头寸,目前浮盈超 100 万美元
- 本周 NFT 交易额回升 1.27%至 1.086 亿美元,买卖双方数量涨超 50%
- BNB 上涨触及 1066 USDT 续创历史新高,24H 涨幅 7.17%
- Vitalik:低风险 DeFi 或成以太坊核心收入引擎,类比谷歌搜索业务模式
- 知名 YouTuber MrBeast 首次使用 Aster,存入逾 11.4 万枚 USDT
- MrBeast 投入 11.4 万美元购买 Aster 代币
- OKX Star:团队正力争实现每周一期 Boost
- 两巨鲸因做多 ASTER 获利超 670 万美元
- 数据:ETH 当前全网 8 小时平均资金费率为 0.0045%
- 数据:过去 24h Binance 净流入 3.27 亿 USDT
- 麻吉再次加仓开空 ASTER,爆仓价抬高至 2.62 美元
- BNB 市值超越英特尔,CZ 持仓价值或已超 908 亿美元
- 下周宏观展望:美联储降息步伐或将放缓,小心 PCE 炸毁一切预期
- 昨日 3 倍杠杆做空 ASTER 的鲸鱼现浮亏超 50 万美元
- 各类机构已持有 374 万枚比特币,占总供应量 17.8%
- 某鲸鱼提取 100 万枚 PENDLE,并进行半年的锁仓质押
- 麻吉加仓 ASTER3 倍空单,平均开仓价 1.1376 美元
- 特朗普 100 万美元出售美国居留权
- 数据:近 1.5 亿枚 USDT 从未知钱包转移至 Aave
- 750 万 USDT 购买 ASTER 的鲸鱼/机构疑似在 Hyperliquid 上做空对冲
- Whales Market 将在盘前市场上线 Monad 代币 MON。
- Scam Sniffer:某受害者在签署恶意 EIP-7702 批量交易后损失逾 8 万美元
- Bitdeer 本周挖矿产出 99.5 枚 BTC,比特币总持仓量逼近 2000 枚
- Coinbase CEO:将把 Coinbase 打造为金融超级应用以取代传统银行
- Bitunix 分析师:众院欲终结双重使命冲击货币框架,政治风险放大加密波动
- 某鲸鱼向 Hyperliquid 存入 122 万枚 USDC 开设 5 倍杠杆 PUMP 多单
- 分析师:以太坊质押 ETH 最终批准有望提前至下月
- 某鲸鱼花费 200 万枚 USDT 买入 182.5 万枚 ASTER
- Coinmarketcap:山寨季指数达 74,ASTER、IMX、DRIFT 分列涨幅榜前 3
- 本周美国比特币现货 ETF 累计净流入 8.865 亿美元
- 港股上市公司中环新能源与蚂蚁区块链合作探索新能源数字资产等领域
- 币安:今日 21:00 可领取 Alpha 空投,门槛 200 个 Alpha 积分
- “麻吉大哥”黄立成已开设 3 倍杠杆 ASTER 空头仓位
- 知名加密货币交易员 Wesley 归集超 440 万枚 ASTER 空投,或为 Aster 空投活动最大受益实体
- Coinbase 帮助杜兰特解封账户引发加密社区不满,CEO 承诺将改进产品
- 马斯克:X 平台预计 11 月实现“纯 AI 算法”,支持通过 Grok 交互调整 Feed
- 观点:SOL 财库公司会与 Solana 基金会构成良性竞争促进生态增长
- 美国加密银行 Anchorage Digital 已申请美联储主账户
- 两个聪明钱地址抛售两个月前建仓的 PUMP,均锁定超 130%利润
- 数据:过去 24 小时全网爆仓 2.8 亿美元,多单爆仓 2.38 亿美元,空单爆仓 4,237.56 万美元
- Zyra 验证者模块上线 DevNet,主网将于 10 月上线
- 西姆库斯:欧洲央行需在 12 月降息以实现 2% 通胀目标
- 港股上市公司加幂科技配股募资最高 98,800,000 港元,拟整合以太坊、SOL 等多链资产
- 特朗普“金卡”已开放注册,个人版售价 100 万美元,企业版售价 200 万美元
- 赵长鹏:过去几年法国发生多起加密绑架案治安下滑,希望情况能好转
- Michael Saylor:比特币波动性降低利于大型机构投资,但会让寻求刺激者失望
比推专栏
更多 >>观点
比推热门文章
- 美参议院民主党人推动就加密货币市场结构法案展开跨党派共同起草程序
- 某鲸鱼在休眠 4 年后向 Kraken 存入 1757 枚 ETH,浮盈 388 万美元
- Arthur Hayes:加密市场有望在美财政部 TGA 账户完成资金补充后进入只涨不跌模式
- 某交易员开立 3 倍 ASTER 多头头寸,目前浮盈超 100 万美元
- 本周 NFT 交易额回升 1.27%至 1.086 亿美元,买卖双方数量涨超 50%
- BNB 上涨触及 1066 USDT 续创历史新高,24H 涨幅 7.17%
- Vitalik:低风险 DeFi 或成以太坊核心收入引擎,类比谷歌搜索业务模式
- 知名 YouTuber MrBeast 首次使用 Aster,存入逾 11.4 万枚 USDT
- MrBeast 投入 11.4 万美元购买 Aster 代币
- OKX Star:团队正力争实现每周一期 Boost