红薯刚种下,就得挖出来了?
今日DeFi领域再次发生一起魔幻事件,呼声极高的红薯项目一经上线,流动性矿工们就开始疯狂涌入。短短8个小时内,Yam Finance中锁仓总价值就超过2亿美元。COMP挖矿带动了DeFi产业出圈,而YAM直接带动了DeFi头部项目集体上涨,堪称“一飞冲天”。
然而短短36小时内,眼见它高楼起,高楼塌。数亿美元因为一个小小的漏洞,消失于无形。本以为反应迟钝的自己损失了一个亿,没想到保住了自己的五块钱。
USDT占比特币交易比重约为62.12%:金色财经消息,据cryptocompare数据显示,目前比特币交易情况按照交易币种排名,排名名第一的是USDT,占比为62.12%;排名第二的是美元,占比为10.62%;排名第三的是日元,占比为8.56%;排名第四的是CNYT,占比为4.39%;排名五的是欧元,占比为2.77%[2020/10/12]
好好的小红薯,究竟承受了什么?
事件背景
8月12日,YAM Finance官方宣布他们发现了一个智能合约漏洞,并称该漏洞将生成超出最初设定数量的YAM代币。在这种情况下,大量的保留代币将造成治理操作所需的代币数量过大。这意味着社区将来将没有足够的代币来执行任何治理操作。
去中心化借贷协议Aave发布V2版 新增抵押品还款和降低Gas费等功能:去中心化借贷协议Aave发布V2版,旨在进一步推进去中心化发展,AaveV2版本将引入一系列新功能,从抵押还款方面,新版本功能允许用户通过在1笔交易中直接用抵押品付款来去除杠杆化或平仓。从债务标记和信用委托方面,用户的债务状况将被标记(用户将收到代表其债务的代币)。债务的标记化使Aave协议中的本地信用委托成为可能,用户可以通过冷钱包进行本地头寸管理和针对特定用户的流动性挖矿策略。从固定利率存款方面,可预测的存款利率为流动性提供者提供了明确的收入保证,而不受市场变化的约束。从借款利率方面,可以将借款利率锁定在一定时间段内锁定,提高了稳定的借款利率。私募方面,为了满足机构需求,Aave协议将允许政府开放的私募市场来支持各种标记化资产。此外,本次版本还包括优化Gas费,实现对本机GasToken支持,进一步帮助用户降低交易成本。增加安全性和债务、抵押保证金交易功能,以及增加特定的治理功能等。[2020/8/15]
智能合约漏洞出现在哪里?
该漏洞发生在YAM项目智能合约YAM.sol的rebase功能上,如下图所示:
图片来源:
https://github.com/yam-finance/yam-protocol/blob/767e3a4a6918b6fb6100ad6bb356164408f5d82f/contracts/token/YAM.sol#L340
上图中的rebase功能应该执行rebase,以保持稳定的价格。但是,有一行代码(已标注蓝色)在计算totalSupply时,给出了错误的结果,这会导致系统保留的代币数量过多。
这行代码的正确代码/计算方程形式应类似于以下代码/方程:
totalSupply =initSupply.mul(yamsScalingFactor).div(BASE);
那么是否可以在截止日期之前通过治理操作来修复此漏洞?
第二次调整是在美国东部时间8月13日凌晨4点。
YAM Finance公开宣布,在美东时间凌晨3点之前,他们需要约16万YAM委托要求才能提交治理提案。如果在投票窗口中得到的委托超过40万YAM,则该提案将允许用户将YAM自行转移或存入储备池。
有一个好消息是,YAM获得了其社区的大力支持,并且该提案已成功提交。但是,新提交的提案无法在智能合约中运行,所以YAM目前依旧是一个不可管理的状态。
YAM的现状
YAM Finance目前已经失去了治理能力,75%的流动资金已经从YAM / yCRV未拨出资金池中移出。但是,其余的流动资金将从储备库中删除。
据官方消息,Gate.io将为YAM Gitcoin捐赠,捐赠资金将被用于对YAM合约进行审计。审计完成后,YAM合约将迁移到YAM2.0。
如何避免?
CertiK安全团队强烈建议:
所有区块链项目在正式发布之前不仅需要使用严格的软件测试工具来验证项目的代码安全性,更是应该邀请多个第三方区块链安全团队,做好对区块链项目中代码的验证审计工作,并在每次更新代码后进行重新审计。从而设计一个更好的项目管理系统,以备进行项目紧急更新的需求。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。