查看原文
其他

泪纷纷,被盗项目欲断魂……Inverse Finance被盗1450万美元事件分析

CertiK CertiK 2022-06-07
北京时间2022年4月2日19时,CertiK安全技术团队监测到Inverse Finance被恶意利用,导致价值约1450万美元的资产受到损失。
该事件发生的根本原因在于外部价格预言机依赖导致价格被操纵,因此攻击者可通过操纵价格来借用资产。

攻击流程

在发起攻击之前,攻击者做了如下准备: 

1. 首先,攻击者部署了一个恶意合约。该合约地址为:0xea0c959bbb7476ddd6cd4204bdee82b790aa1562

2. 其次,攻击者在SushiSwap/Curve.fi中进行调换,以操纵交易中的价格,该交易地址为:0x20a6dcff06a791a7f8be9f423053ce8caee3f9eecc31df32445fc98d4ccd8365

由于SushiSwap:INV(INV-ETH Pair)的流动性非常低,用300ETH(价值约一百多万美元)换取INV将大幅增加INV价格。

随后,攻击者正式发起攻击:

1. 攻击者把在准备阶段获得的INV存入,并铸造(mint)了1746枚XINV代币

2. XINV的价格计算:根据SushiSwap:INV对中的INV价格所计算。如上所述,INV的价格被操纵,因此每XINV的价值为20926美元

3. 随着XINV的价格被修改,攻击者能够用铸造的XINV代币借用到如下资产:1588枚ETH,94枚WBTC,3999669枚DOLA与39枚YFI。


合约漏洞分析

该漏洞主要原因是对价格预言机具有依赖性,并且这中间有30分钟的窗口期。而攻击在准备阶段完成后正式发生,仅仅用了15秒。

在这种情况下,因为timeElapsed == 15,预言机合约Keep3rV2Oracle的函数_update()中'timeElapsed > periodSize'的检查将被绕过。这意味着最后的累积价格还没有被更新。由此可见,函数_computeAmountOut()中的amoutOut会比预期的数额大,因为priceCumulative已经被操纵了,但_observation.priceCumulative没有被更新。

一方面,XINV的价格依赖于SushiSwap:INV 对(INV-ETH对)的储备,其流动性非常低。

另一方面,TWAP可以防止闪电贷攻击。理论上,攻击者能够通过 "牺牲 "一些钱来操纵价格,也就是说,用他自己的钱来改变价格。在这个特殊的价格预言机设计中,如果经过的时间没有超过30分钟,当前的价格(来自储备金)不应该被用来计算出金金额。


资产追踪

据CertiK SkyTrace显示,价值约1450万美元的资产被盗后已被转移到Tornado Cash。


其他细节:
  • 利用漏洞进行交易的准备期间: 

    https://etherscan.io/tx/0x20a6dcff06a791a7f8be9f423053ce8caee3f9eecc31df32445fc98d4ccd8365

  • 利用漏洞进行交易发起攻击: 

    https://etherscan.io/tx/0x600373f6752132https://etherscan.io/tx/0x600373f67521324c8068cfd025f121a0843d57ec813411661b07edc5ff781842

  • 攻击者地址1:https://etherscan.io/address/0x117c0391b3483e32aa665b5ecb2cc539669ea7e9 

  • 攻击者地址2: 
    https://etherscan.io/address/0x8b4c1083cd6aef062298e1fa900df9832c8351b3 
  • 攻击合约: 

    https://etherscan.io/address/0xea0c959bbb7476ddd6cd4204bdee82b790aa1562  

  • 预言机合约: 

    https://etherscan.io/address/0x39b1df026010b5aea781f90542ee19e900f2db15#code 

  • SushiSwap INV-ETH Pair: 

    https://etherscan.io/address/0x328dfd0139e26cb0fef7b0742b49b0fe4325f821 

  • XINV 合约地址: https://etherscan.io/address/0x1637e4e9941d55703a7a5e7807d6ada3f7dcd61b#code

  • Keep3rV2 预言机合约地址: 

    https://etherscan.io/address/0x39b1df026010b5aea781f90542ee19e900f2db15#code 

写在最后
现如今,很多项目都会用到预言机,部分项目还会对其具有很强的依赖性。安全审计,会审查预言机的设计合理性、价格算法以及经济模型等。

因此,CertiK的安全专家建议:尽量避免使用流动性低的池子作为价格预言机价格来源,同时对项目进行安全审计从而保证预言机模型的正确性。

作为区块链安全领域的领军者,CertiK致力于提高加密货币及DeFi的安全和透明等级。迄今为止,CertiK已获得了2500家企业客户的认可,保护了超过3110亿美元的数字资产免受损失。

欢迎点击CertiK公众号底部对话框,留言免费获取咨询及报价!

往期长文回顾

红杉资本布局区块链安全赛道,以近10亿美元估值领投CertiK 8000万美元B2轮

Tiger布局区块链安全赛道,领投CertiK 2400万美元B+轮

区块链安全赛道最大单笔融资,CertiK B轮融资3700万美元

丧心病狂再“炸桥”?又一跨链桥项目遭袭,Meter.io损失420万美元

破五不能破财!Solana跨链桥虫洞事件分析

快到碗里来 | 微软等巨头企业领导者加入CertiK,共筑重量级管理团队

全球邀请函 | CertiK写给挣扎在理想和现实中的你的一封信

一键查询安全排行榜——DeFi的安全洞察数据库

CertiK Skynet天网扫描系统:绕道土狗,竟如此简单?

想知道项目的审计情况,看看项目的审计报告?攻略和入口在这!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存