慢雾:Inverse Finance遭遇闪电贷攻击是由于使用了不安全的预言机来计算 LP 价格
MarsBit News消息,慢雾安全团队表示,Inverse Finance遭遇闪电贷攻击,损失 53.2445 WBTC和 99,976.29 USDT,受攻击的原因主要在于使用了不安全的预言机来计算 LP 价格,建议可以参考 Alpha Finance 关于获取公平 LP 价格的方法。具体攻击原理如下:1.攻击者先从AAVE闪电贷借出27,000 WBTC,然后存 225WBTC到 Curve USDT-WETH-WBTC的池子 获得 5,375.5个 crv3crypto 和 4,906.7 yvCurve-3Crypto,随后攻击者把获得的2个凭证存入Inverse Finance获得245,337.73个存款凭证 anYvCrv3Crypto。2.接下来攻击者在Curve USDT-WETH-WBTC的池子进行了一次swap, 用 26,775个WBTC兑换出了75,403,376.18 USDT,由于anYvCrv3Crypto的存款凭证使用的价格计算合约除了采用Chainlink的喂价之外还会根据Curve USDT-WETH-WBTC的池子的WBTC,WETH,USDT的实时余额变化进行计算所以在攻击者进行swap之后anYvCrv3Crypto的价格被拉高从而导致攻击者可以从合约中借出超额的10,133,949.1个DOLA。3.借贷完DOLA之后攻击者在把第二步获取的75,403,376.18 USDT 再次swap成26,626.4个WBTC,攻击者在把10,133,949.1 DOLA swap成 9,881,355个3crv,之后攻击者通过移除3crv的流动性获得10,099,976.2个 USDT。4.最后攻击者把去除流动性的10,000,000个 USDT swap 成 451.0个WBT,归还闪电贷获利离场。