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 的铸币数量,从而使攻击者有利可图。
—- 编译者/作者:区块律动BlockBeat 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
慢雾:Harvest.Finance 被黑事件简析 - 律动BlockBeats
2020-10-26 区块律动BlockBeat 来源:区块链网络
LOADING...
相关阅读:
- 拥有超过10亿美元锁定资产的Defi被黑客入侵。 投资者踩踏2020-10-26
- 649期:那个被抓又出来的男人的故事2020-10-26
- 第一家提币被提跨的交易所跑路,将迎来跑路潮!!!2020-10-25
- 震惊冻卡-出金200万被43家公安冻结,避免卡被冻一些建议与方法┃比特2020-10-24
- 凌晨,法币区炸锅九妹单枪匹马应对,九妹曾做……合约大神半木夏被2020-10-24