Polygon上收益聚合项目PolyYeld Finance被攻击事件分析_POL:bigone金大一

北京时间7月28日,收益聚合器PolyYeld.Finance遭到攻击,其代币YELD归零,攻击者获利25万美元。

SharkTeam第一时间对此事件进行了攻击分析和技术分析,并总结了安全防范手段,希望后续的区块链项目可以引以为戒,共筑区块链行业的安全防线。

一、事件分析

攻击者地址:

0x56ec01726b15b83c25e8c1db465c3b7f1d094756

0x1bdf24cb4c7395bf6260ebb7788c1cbf127e14c7

基于Polygon的社区建设实验NFT项目Paulygon即将推出:金色财经报道,基于Polygon的交互式艺术品社区建设实验NFT项目Paulygon即将推出。Paulygon将为其合作伙伴协议发布自定义NFT集合,用户可结合20多个合作伙伴协议的链上查询以及数百个独特的配件来进行解锁。目前其合作伙伴包括LayerZero、DefiLlama、Frax Finance、FlywheelDeFi、Gains Network、Arkham、Polymarket、0VIX、Dopex、Diamond Pepes、Qi Dao、Gelato、BROZO等。[2023/3/30 13:34:47]

从交易详情可以看出攻击者获取的奖励费用异常。

lpSupply值被操纵为1,导致1300行计算错误。

去中心化 DeFi 策略构建器 Mellow Protocol 上线 Polygon:2月8日消息,去中心化 DeFi 策略构建器 Mellow Protocol 现已上线 Polygon,目前已集成 QuickSwap、Uniswap 和 Aave,允许用户使用该平台部署策略以及投资于已有的策略。[2023/2/8 11:55:00]

根本原因在于当前合约的LPToken的余额不是所有用户质押的LPTokn总额,其中还包含攻击者向当前合约转入的LP?Token金额,这导致了lpSuppy被操纵为1的情况,造成了错误的判断和计算。

详细函数分析

攻击者事先给16号池转入1LPToken

攻击者合约0x56ec01726b15b83c25e8c1db465c3b7f1d094756调用balanceOf函数查询lpSupply的值为1

调用updatePool函数

Huobi否认将与Poloniex合并:金色财经报道,Huobi在一份电子邮件中表示,我们郑重声明,有关Huobi将很快与Poloniex合并的传言是绝对不真实的,Huobi和Poloniex现在是独立运营的。

金色财经此前报道,知情人士透露,孙宇晨正将交易所Poloniex与Huobi合并。[2022/11/26 20:47:19]

调用balanceOf函数查询lpSupply的值

此时由于lpSupply的值为1,判断条件不符,继续执行函数代码

巴塞罗那俱乐部称对加密行业缺乏信心弃选Polkadot等加密公司作为赞助商:2月23日消息,巴塞罗那足球俱乐部及其主席Joan Laporta在最近几周拒绝了加密公司的各种赞助标书,并选择音乐流媒体公司Spotify作为其赞助商。Spotify交易涉及的具体金额还不清楚。然而,其他消息来源称,Spotify将在三年内支付约2.8亿欧元(3.2亿美元)的赞助费。该俱乐部称,对加密货币行业缺乏信心是做出这一决定的原因之一。

此前,Polkadot和Binance都在1月份向巴塞罗那足球俱乐部提交了竞标。(CryptoBriefing)[2022/2/23 10:09:52]

调用getMultiplier函数获取差值

去中心化交易所MakiSwap将在Polygon上集成Chainlink VRF:9月7日消息,基于HECO的去中心化交易所MakiSwap将在Polygon上集成Chainlink VRF,以保证其分配机制中抽奖的公平性。[2021/9/7 23:06:12]

YeldPerBlock值为10000000000000000,allocPoint值为2000,totalAllocPoint值为29000。但下一步中将计算奖励的百分之十铸币给项目方,并未从给用户的奖励中扣除,这将导致通胀。

将铸造给项目方和当前合约地址的Token数量添加到totalSupply

此时YeldReward值为25517241379310344,乘上1e18,再除lpSupply的值1。

执行结束后,accYeldPerShare的值为25517241379310346060896017401670445

返回user.amount的值为249792662487644753291986140279580

计算完成后调用withdraw提取奖励,函数内调用payReferralCommission函数铸造通过上面计算得到的token数量。

事件分析总结,该项目存在多个问题:

项目方收取百分之十的收益时直接铸币并未从用户收益中扣除,导致通胀。

调用Masterchef合约实现推荐机制,即推荐者永久享受被推荐者收益的百分之二,但这百分之二并未从被推荐者收益中扣除。

正常情况下,合约计算收益的逻辑没有错误,lpSupply应该为合约中的总Token数,但攻击者通过操作,使得lpSupply为1,手动执行一次updatePool函数,使其计算出来的参数错误,再使用另外一攻击合约的地址正常质押提取,使得推荐者获得超出其本身应该获得的收益。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

火必浅谈NFT经济学原理_NFT:LOOT

康德说:人为自然立法。加密技术奉行第一准则「Codeislaw」为数字社会的经济关系提供数字对等物,而NFT的出现是加密资产开始实践它特有的社会和文化变革的使命,同时开始构建成为数字社会稀缺资源.

[0:15ms0-1:64ms