5

SharkTeam独家分析 | 操纵预言机:VesperLend被黑事件分析

 2 years ago
source link: https://www.tuoniaox.com/news/p-521079.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

SharkTeam独家分析 | 操纵预言机:VesperLend被黑事件分析

SharkTeam 2021-11-04 17:00
article_qmarks.svg 摘要:

详细分析VesperLend被黑事件

操纵预言机:VesperLend被黑事件分析

北京时间11月3日,Defi协议RariFuse上的23号借贷池VesperLendbeta遭遇攻击,攻击者大量消耗 Uniswap V3中VUSD的流动性,并自行创建VUSD/USDC流动性池以操纵预言机VUSD喂价功能,抬高VUSD价格后大量借出VesperLend上的资产,最终获利300万美元。

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

一、事件分析

攻击者账户0xa3f447feb0b2bddc50a44ccd6f412a5f98619264 通过混币平台tornado.cash提取了100ETH 作为攻击的投入资产。

(交易:0x1423391a93b283e9a001d5faee292cb82c55d04f021c53f7eda0f600665f8cba)

1636019442146820.png

1636019441939634.png

通过合约0x7A0D94F55792C434d74a40883C6ed8545E406D12创建攻击合约,地址为 0x7993e1d66ffb1ab3fb1cb3db87219f532c25bdc8

1636019456604871.png

1636019457216403.png

攻击交易:

TX-1:0x89d0ae4dc1743598a540c4e33917efdce24338723b0fabf34813b79cb0ecf4c5

TX-2:0x8527fea51233974a431c92c4d3c58dee118b05a3140a04e0f95147df9faf8092

攻击细节:

TX-1:0x89d0ae4dc1743598a540c4e33917efdce24338723b0fabf34813b79cb0ecf4c5

图片5.png

此部分在TX-1中:

0x89d0ae4dc1743598a540c4e33917efdce24338723b0fabf34813b79cb0ecf4c5

1. 将57个ETH swap为254783个USDC;

图片6.png

2. 以tickLower:-887260,tickUpper:-887250为价格区间(VUSD对USDC无穷大价格),将0.1个USD作为流动性加入Uniswap V3: VUSD-USDC的池子中;

图片7.png

3. 随后将232509个USDC swap出222403个VUSD(此步骤是正常的swap);

图片8.png

接下来的操作在TX-2:

0x8527fea51233974a431c92c4d3c58dee118b05a3140a04e0f95147df9faf8092

图片9.png

4. 攻击者在TX-1交易所在交易块的后10块(块高13537922 )将222403个VUSD swap出2205234399714300个fVUSD!

图片10.png

5. 攻击者将2205234399714300个fVUSD存入多种Vesper Pool 中,将池中对应的基础代币借出,最终实现获利;

图片11.png

6. 通过混币平台tornado.cash将获利资产转移。

图片12.png

攻击原理:

攻击者在TX-1将232509个USDC swap出222403个VUSD之前,以VUSD对USDC无穷大价格向Uniswap V3: VUSD-USDC的池子中添加了一笔0.1个USDC的流动性。由于Uniswp V3在同一个区块内,Oracle 的写入操作只会发生在这个区块中的第一笔对价格产生影响的交易中,因此,VUSD对USDC无穷大的价格被写入。v3 中的价格计算是取的几何平均值,通过计算一段时间内的价格加权几何平均值作为下一阶段的价格。此时攻击者将VUSD对USDC无穷大价格写入Oracle,即使通过时间加权,最后得出下一阶段的价格也非常大,这也是为什么攻击者不在同一个块中进行攻击获利的原因。

由于VUSD的价格被操纵的很高,导致在TX-2中swap出大量的fVUSD,并把fVUSD进行抵押借出大量其他代币(WBTC、DAI、USDC等),实现获利。

一般来说,在Uniswp V2对VUSD对USDC池子添加流动性,不可以只添加一种代币,而在Uniswp V3中当价格超过某一范围是可以的(相当于初始化某一价格的流动性区间)。然而当这个价格过高或过低,利用时间加权价几何平均的设计,会使得交易池易遭受攻击。虽然可以很好的避免闪电贷攻击,但是又引入了新的问题!

1636019537782575.png

1636019538300677.png

二、安全建议

SharkTeam提醒您,在涉足区块链项目时请提高警惕,选择更稳定、更安全,且经过完备多轮审计的公链和项目,切不可将您的资产置于风险之中,沦为黑客的提款机。

SharkTeam作为领先的区块链安全服务团队,为开发者提供智能合约审计服务。智能合约审计服务由人工审计和自动化审计构成,满足不同客户需求,独家实现覆盖高级语言层、虚拟机层、区块链层、业务逻辑层四个方面近两百项审计内容,全面保障智能合约安全。

图片15.png

声明: 鸵鸟区块链所有发布内容均为原创或授权发布,如需转载,请务必注明文章作者以及来源:鸵鸟区块链(微信公众号:MyTuoniao),任何不尊重原创的行为鸵鸟区块链都将进行责任追究!鸵鸟区块链报道和发布内容,不构成任何投资建议。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK