2020年10月26号,据慢雾区消息HarvestFinance项目遭受闪电贷攻击,损失超过400万美元。以下为慢雾安全团队对此事件的简要分析。
1.攻击者通过Tornado.cash转入20ETH作为后续攻击手续费
2.攻击者通过UniswapV2闪电贷借出巨额USDC与USDT
数据:今年1月初以来,BNB Chain上NFT销售额增长约1180%:金色财经消息,据BeInCrypto Research的数据,自2022年1月以来,BNB Chain上的NFT销售额增长了约1180%。1月份,总销售额大约为94325美元。截止2022年2月,这一数字上升了1109%,达到约114万美元。在3月18日至3月20日期间,总销售额攀升至约121万美元。(BeInCrypto)[2022/3/21 14:09:39]
3.攻击者先通过Curve的exchange_underlying函数将USDT换成USDC,此时CurveyUSDC池中的investedUnderlyingBalance将相对应的变小
HIVE Blockchain将扩建加拿大数据中心 容量达40兆瓦:金色财经报道,上市矿企HIVEBlockchain将扩大其在加拿大新不伦瑞克的数据中心园区,拥有40兆瓦的容量。HIVE目前运营着5个数据中心园区,他们在那里开采比特币和以太坊。HIVE的数据中心已经可以使用大约50兆瓦的电力,使其成为所有公开上市的加密货币矿工中最大和最多样化的。此外,这些地方提供了独特的丰富的绿色能源,因此HIVE的所有数据中心都由清洁、低成本的水电或地热供电。(news.bitcoin)[2021/10/13 20:24:58]
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
总结:此次攻击主要是HarvestFinance的fToken(fUSDC、fUSDT...)在铸币时采用的是Curvey池中的报价(即使用Curve作为喂价来源),导致攻击者可以通过巨额兑换操控预言机的价格来控制HarvestFinance中fToken的铸币数量,从而使攻击者有利可图。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。