慢雾:Harvest.Finance 被黑事件简析

IP归属:广东

2020 年 10 月 26 号,据慢雾区消息 Harvest Finance 项目遭受闪电贷攻击,损失超过 400 万美元。以下为慢雾安全团队对此事件的简要分析。

1. 攻击者通过 Tornado.cash 转入 20ETH 作为后续攻击手续费

2. 攻击者通过 UniswapV2 闪电贷借出巨额 USDC 与 USDT

3. 攻击者先通过 Curve 的 exchange_underlying 函数将 USDT 换成 USDC,此时 Curve yUSDC 池中的 investedUnderlyingBalance 将相对应的变小

4. 随后攻击者通过 Harvest 的 deposit 将巨额 USDC 充值进 Vault 中,充值的同时 Harvest 的 Vault 将铸出 fUSDC,而铸出的数量计算方式如下:

amount.mul(totalSupply()).div(underlyingBalanceWithInvestment());

计算方式中的 underlyingBalanceWithInvestment 一部分取的是 Curve 中的 investedUnderlyingBalance 值,由于 Curve 中 investedUnderlyingBalance 的变化将导致 Vault 铸出更多的 fUSDC

5. 之后再通过 Curve 把 USDC 换成 USDT 将失衡的价格拉回正常

6. 最后只需要把 fUSDC 归还给 Vault 即可获得比充值时更多的 USDC。

7. 随后攻击者开始重复此过程持续获利

其他攻击流程与上述分析过程类似

参考交易哈希:

0x35f8d2f572fceaac9288e5d462117850ef2694786992a8c3f6d02612277b0877

总结:此次攻击主要是 Harvest Finance 的 fToken(fUSDC、fUSDT...) 在铸币时采用的是 Curve y池中的报价(即使用 Curve 作为喂价来源),导致攻击者可以通过巨额兑换操控预言机的价格来控制 Harvest Finance 中 fToken 的铸币数量,从而使攻击者有利可图。

本文来源:陀螺科技 文章作者:慢雾科技
收藏
举报
慢雾科技
累计发布内容30篇 累计总热度10万+

陀螺科技现已开放专栏入驻,详情请见入驻指南: https://www.tuoluo.cn/article/detail-27547.html

慢雾科技专栏: https://www.tuoluo.cn/columns/author311436/

本文网址: https://www.tuoluo.cn/article/detail-10031599.html

免责声明:
1、本文版权归原作者所有,仅代表作者本人观点,不代表陀螺科技观点或立场。
2、如发现文章、图片等侵权行为,侵权责任将由作者本人承担。

相关文章