freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

16万美元资产被盗竟是乌龙事件? | Yeld.finance“闪电贷攻击”事件
成都链安科技有限公司 2021-03-01 11:45:03 54861

一、事件概览

北京时间2021年2月27日,【链必安-区块链安全态势感知平台(Beosin-OSINT)】舆情监测到,DeFi知名项目Yeld.finance官方发出通告,表示该项目的DAI池遭受到闪电贷攻击,原文链接如下:https://yeldf.medium.com/the-yeld-dai-earn-vault-has-been-hacked-93f27d475b1b
成都链安(Beosin)安全团队第一时间介入响应,对原文中所提及的交易(0x57b378f8d20d3945ab40cd62aa24063f375bcfc5693c2e788dc193ffa1a5cc3a)进行分析。经分析后发现,该笔交易为Yeld.finance项目自身的策略机制而导致的资金转移,与闪电贷攻击无关。闪电贷攻击表示不背这个锅。

二、事件分析

1614570303_603c633fe10580cebe42d.jpg!small

图1 交易信息

如图1所示,该笔交易是名为0xf0f225e0的用户,调用了0xe780cab7ca8014543f194fc431e6bf7dc5c16762合约的deposit函数。经确认,0xef80cab7合约正是项目方的DAI池。该笔交易一共产生了6笔代币转移,分别用T1到T6表示。那么,这些代币转移究竟是什么操作导致的呢?下面通过代码进行分析:

1614570304_603c634047931006f9b90.jpg!small

图2 deposit函数源代码

很明显,第538行代码,产生导致了序号为T1的代币转移,将token(即DAI)转移到yDAI合约。这是一笔普通的代币转账,表示用户存入了9,377 DAI到yDAI合约。
第541-553行代码,是yDAI合约用于计算用户存入的DAI应返回给用户多少yDAI,并在第554行进行铸币,对应序号为T2的代币转账,表示yDAI合约向用户铸了9,306 yDAI。
然后进入第555行的rebalance函数,分析该函数的逻辑。

1614570304_603c6340dcc61ae58ac07.jpg!small

图3 rebalance函数源码

1614570305_603c634155235fe6e7a7e.jpg!small

图4 recommend函数

第732行代码会计算newProvider,该函数会调用recommend函数(如图4所示),recommend函数会调用IEarnAPRWithPool合约查询4个Defi项目DYDX,COMPOUND,AAVE,FULCRUM中,年利率(APR)最高的项目,查询结果如图5所示:

1614570305_603c6341a57c86b91a335.jpg!small

图5 recommend查询结果

其中dYdX池的APR最高,newProvider被设置为dYdX池。当前池为AAVE池,进入736行的if代码块,调用内部函数_withdrawAll。

1614570306_603c634206d5ec6f9c5b5.jpg!small

图6 _withdrawAll函数源代码

第778行代码将会提出AAVE池中的所有DAI,产生了序号为T3-T5的代币转移,具体代码可参考AAVE(0xfC1E690f61EFd961294b3e1Ce3313fBD8aa4f85d)合约redeem函数相关代码,此处不再详述。
最后是第741行代码,将从AAVE中提出的16.6余万枚DAI存入dYdX合约,产生了序号为T6的代币转移,即将16.6万枚DAI存入dYdX池。
整个交易就此结束,可以看到,这次所谓的“闪电贷攻击”只是虚惊一场。用户只是单纯的存入了一笔DAI,然后刚好触发了Yeld.finance项目的策略机制,并不是所谓的“闪电贷攻击”,可谓是闹了场乌龙事件。值得注意的是,dYdX在该事件中充当了一个“良心商家”的角色,并不是以往闪电贷攻击中的帮凶。

三、安全建议

尽管本次事件经成都链安(Beosin)安全团队分析后被判断为虚假一场,但在这里还是有必要提醒各项目方,依然需要在日常的安全防护工作中,对闪电贷攻击加以预警和防范。
同时,作为致力于区块链生态安全建设的成都链安(Beosin)也在此建议,项目方的安全预警机制和安全加固工作切不可等闲视之。寻求第三方安全公司的力量,搭建覆盖全生命周期的一站式安全解决方案方为万全之策。

# 区块链 # 区块链技术
本文为 成都链安科技有限公司 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
成都链安科技有限公司 LV.5
成都链安科技有限公司
  • 88 文章数
  • 8 关注者
智能合约自动检测工具『链必验』,如何带你解锁Web3.0世界
2022-04-27
如何让你的智能合约更安全?
2022-03-29
BSC生态又一起“闪电贷攻击”再现 | ApeRocket Finance被黑事件简析
2021-07-14
文章目录