YFV勒索事件分析:DeFi需做好上线前的代码审计工作

2020-08-25 439 区块链

YFV是基于以太坊的一个DeFi项目,今天早些时候,YFV官方发文称遭到勒索。攻击者利用staking的合约漏洞,可以任意重置用户锁定的YFV。

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

并表示,此次事件可能和不久前的『pool0』事件相关,勒索者极有可能是在『pool0』事件中未取回资金的『愤怒的农民』。

 

漏洞分析

 

合约存在一个stakeOnBehalf函数使得攻击者可以为任意用户进行抵押,如下图所示:

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

此函数中的 lastStakeTimes[stakeFor] = block.timestamp; 语句会更新用户地址映射的laseStakeTimes[user]。而用户取出抵押所用的函数中又存在验证,要求用户取出时间必须大于lastStakeTimes[account]+72小时。如下图所示:

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

UnfrozenStakeTime如下图所示:

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

综上所述,恶意用户可以向正常用户抵押小额的资金,从而锁定正常用户的资金。

根据链上信息,我们找到了两笔疑似攻击的交易,如下所示:

0xf8e155b3cb70c91c70963daaaf5041dee40877b3ce80e0cbd3abfc267da03fc9

0x8ae5e5b4f5a026bc27685f2b8cbf94e9e2c572f4905fcff1e263df24252965db

其中一笔如下图所示:

YFV勒索事件分析:DeFi需做好上线前的代码审计工作

此两笔交易都来自同一地址,且均为极小值。由此我们可以基本判定这是一个测试锁死问题的交易。

 

总结

 

针对于本次事件,究其根本原因,还是没有做好上线前的代码审计工作。本次事件实际上是属于业务层面上的漏洞。

根据成都链安在代码审计方面的经验,个别项目方在进行代码审计时,未提供完整的项目相关资料,使得代码审计无法发现一些业务漏洞,导致上线后损失惨重。

成都链安·安全实验室在此提醒各项目方:安全是发展的基石,做好代码审计是上线的前提条件。

币币情登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。

交易平台最新公告查看更多>
成交额排行榜
  • 交易所
  • 币种
排名 交易所 成交额
1 币安网币安网 ¥6,326.03亿
2 欧易OKX欧易OKX ¥2,706.75亿
3 HTXHTX ¥434.47亿
4 CoinbaseCoinbase ¥106.41亿
5 芝麻开门芝麻开门 ¥1,678.70亿
6 BitgetBitget ¥1,782.49亿
7 BybitBybit ¥2,018.06亿
8 Crypto.comCrypto.com ¥290.54亿
9 BitfinexBitfinex ¥15.94亿
10 抹茶抹茶 ¥1,804.82亿