CUR:成都链安:DeFi项目Yearn Finance闪电贷攻击事件分析_Mero Currency

一、事件概览

北京时间2021年2月5日,舆情监测到,DeFi知名项目YearnFinance发生闪电贷攻击事件。?

简言之,本次攻击事件的具体手法为攻击者利用闪电贷借取巨额资金,而后进行循环套利。根据成都链安安全团队的响应和分析,本次攻击事件的合约为yValutCurvePool。

二、事件分析

1.攻击者在yVault合约中存入DAI,并调用earn触发yValut向流动性池使用DAI添加流动性,如下图所示:

动态 | 爱沙尼亚将在香港活动中展示电子公民(e - Residency):据meetup消息,爱沙尼亚将于明日18点30分在香港举行活动,并在活动中展示电子公民(e - Residency)。据悉,电子公民(e - Residency)使数字企业家能够完全在线启动和管理一家总部位于欧盟的公司。爱沙尼亚是第一个提供电子居留权的国家,这是一个政府颁发的数字身份和身份认证,可以访问爱沙尼亚透明的数字商业环境和欧洲市场。[2019/6/14]

△图1

动态 | 爱沙尼亚监管局计划缩小提供加密货币服务公司的利润率:据atozmarkets报道,爱沙尼亚金融监管局(FSA)正在研究对加密货币和代币市场部门施加更多限制。由于担心这些提供商参与活动,该国的金融监管机构打算缩小那些提供加密货币服务的公司的利润率。另一方面,恐怖主义融资超过了当局对数字资产的担忧,这促使他们要求交易平台遵守反(AML)申请的财务标准,并对客户尽职调查程序。[2018/12/4]

上图红框显示,在进行铸币时,需要读取合约中的DAI余量,但因为策略合约中的DAI已经抵押至curve合约进行盈利,所以要计算DAI代币的量,只能通过价值换算,计算出所持有的Curve代币能够兑换的DAI的量。

爱沙尼亚向加密货币交易软件供应商Ibinex授予许可:Ibinex是一家专门从事加密货币交易所白标签解决方案的公司,获得了在爱沙尼亚经营的许可证。 除了为交易所服务外,它还计划在监管框架内提供热钱包和冷钱包服务。[2018/6/15]

2.攻击者利用借来的资金向流动性池使用USDT添加流动性,获得Curve代币,如下图所示:

△图2

这里值得注意的是,攻击者向池中注入的是单一的USDT,因为池子的特性,我们知道,当一种代币的含量上升,其相对价格也就下降。

3.攻击者取出yValut合约中存入的DAI,如下图所示:

△图3

根据#2可知,此时的池子中因为USDT的含量增加,所以DAI的相对价格是上升的,这也就导致攻击者所持有的Curve代币兑换出的DAI相对下降,池子中将会余留少量DAI。

4.攻击者指定与添加流动性时相等的USDT数量,进行流动性移除,注意这里因为#3时将一部分DAI取走,所以USDT的相对#2时价格下降,所以这里将余下一部分Curve代币。

△图4

不断进行上述循环,这使得攻击者消耗DAI进而获取Curve代币。

经过多次循环之后,攻击者套取了大量的Curve代币,而将DAI代币打入了Curve合约中。在整个攻击流程结束时,攻击者使用Curve代币,兑换出DAI/USDC。

这次兑换,因为不是USDT的兑换,即使此时的DAI相对攻击前含量较高,也会按照同等比例进行兑换,也就是攻击者打入Curve池子中多出的DAI代币,也会分发给攻击者。

这里,我们再来看攻击者在进行攻击时的第一步操作,如下图所示:

△图5

攻击者利用闪电贷向池子中添加了巨量的流动性,这就导致这些多出的DAI,最终将会大部分分给攻击者。

而除去这一部分损失,攻击者还获得了更多的Curve代币,从而获利。

三、安全建议

针对本次事件,成都链安安全团队认为,很大程度上源于项目方潜在的合约漏洞未得到全面的安全排查,进而导致闪电贷攻击事件的发生。

在此,成都链安需要提醒区块链各生态项目方,切不可因项目上线完成之后就掉以轻心,做好日常的安全排查和安全加固等工作,寻求第三方安全公司的力量,建立一整套的安全防护机制,防范于未然。

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

区块博客

[0:0ms0-4:853ms