CertiK:Inverse Finance再遇闪电贷攻击

北京时间2022年6月16日,CertiK审计团队监测到Inverse Finance遭受闪电贷进犯,导致了约1068.215ETH(约126万美元)的丢失。

这是近2个多月内,Inverse Finance第2次遭遇闪电贷进犯。在此前于2022年4月2日发生的那起闪电贷进犯中,黑客成功获利约1450万美元。

现在1000枚ETH已被发送到Tornado Cash,黑客的钱包内还余7.5万美元。

进犯过程

①进犯者从AAVE闪电贷出了27,000枚WBTC代币。

TZVuzHQoCpysdNysDr5cUKW3jYHOsCJuhsvacFl2.png

②WBTC作为流动性被添加到Curve Pool中。

CertiK:Inverse Finance再遇闪电贷攻击

③取得的LP代币被存入Yearn的Vault。

CertiK:Inverse Finance再遇闪电贷攻击

④Yearn的Vault代币作为Inverst Finance的抵押品,被存入Inverse Finance的Yearn 3Crypto Vault。

CertiK:Inverse Finance再遇闪电贷攻击

⑤然后,恶意的智能合约运用初始闪贷中剩余的26,775枚WBTC(约5.69亿美元),在Curve 3Crypto上换取7500万USDT。(WETH-USDT-WBTC)

CertiK:Inverse Finance再遇闪电贷攻击

⑥由于上述过程操作了价格预言机,因此抵押品的价格被拉高。随后,进犯者利用价格优势借到价值1000万美元的美元稳定币(DOLA)。

xT4RPjxWLxUsGXiLOb3rujXRBKPDn6BeR0JNPZ5J.png

⑦7500万美元的USDT被26,626 WBTC换回。

CertiK:Inverse Finance再遇闪电贷攻击

⑧进犯者的智能合约,用借来的DOLA向DOLA-3Pool的Curve Metapool供给流动性。

CertiK:Inverse Finance再遇闪电贷攻击

⑨之后流动性被移除,黑客换取了约1010万的USDT, 这过程的目的是把进犯所得的DOLA换成USDT。

CertiK:Inverse Finance再遇闪电贷攻击

⑩最终黑客运用Curve上的3Crypto Pool将1000万USDT转换为451WBTC。剩余的99,976.294美元被保存在进犯者的智能合约中。

CertiK:Inverse Finance再遇闪电贷攻击

⑪偿还AAVE上的闪电贷。

CertiK:Inverse Finance再遇闪电贷攻击

缝隙分析

被进犯的合约运用YVCrv3CryptoFeed作为Inverse Finance DOLA借贷池的价格预言机。YVCrv3CryptoFeed价格预言机回来的价格会根据Curve USDT-WBTC-WETH池中不同代币的余额来决议Yearn的Vault代币价格,因此可被进犯者操作。

CertiK:Inverse Finance再遇闪电贷攻击

财物去向

进犯者在合约上留下了53.244枚WBTC和99,997.294枚USDT,并在他们的合约上调用了`withdrawERC20()`函数,随后将其撤回。WBTC被换成了983.290枚以太币,USDT被换成了84.925枚以太币,总计1068.215枚以太币。随后,1000枚以太币经过多次买卖被发送到Tornado Finance,至此黑客完毕操作。

Inverse Finnace表明,现在已暂停了借贷,没有用户的资金会被拿走或者面临危险,此次事情也正在进一步查询当中,等待供给更多的细节。

写在最终

价格预言机导致价格被操作是一个常见问题,经过审计,我们能够发现Inverse Finance的危险。在此,CertiK的安全专家建议:

1. 运用Chainlink作为价格预言机

2. 运用time weighted average price的价格作为价格预言机。

3. 如果上述价格预言机都不可行,借贷平台应该保证“供给抵押品”和“告贷”不在一个Block里边完成, 以此来减少被闪电贷进犯的可能性。

进犯发生后,CertiK的推特预警账号以及官方预警系统已于第一时间发布了音讯。同时,CertiK也会在未来继续于官方公众号发布与项目预警(进犯、诈骗、跑路等)相关的信息。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注