一文梳理 Harvest Finance 闪电贷安全事件
Harvest Finance 此次遭受闪电贷攻击主要是由于 fToken 在铸币时采用 Curve y 池中的报价,攻击者可以通过巨额兑换操控预言机价格来控制 fToken 的铸币数量,从而获利。
撰文:阿得
10 月 26 日中午 12 时左右,DeFi 热门项目 Harvest Finance 被曝遭黑客攻击。据推特网友发现,疑似有黑客借用闪电贷,使用 20 ETH 从 Harvest Finance 中套现超 400 万美元。
消息扩散后,Harvest Finance 项目的 FARM 代币价格在短时间内 下跌近 60% ,同时 Harvest Finance 和 Curve 的锁仓量大幅减少。截至目前,Curve 锁仓量为 8.53 亿美元,较昨天 减少 25.92% ;Harvest Finance 锁仓量为 5.85 亿美元,较昨天 减少 47.27% 。
链闻对相关信息进行梳理,简析 Harvest Finance 本次安全事件的要点。
到底发生了什么?
据慢雾安全团队分析,Harvest Finance 项目此次遭受闪电贷攻击主要是 Harvest Finance 的 fToken(fUSDC、fUSDT...) 在铸币时采用的是 Curve y 池中的报价 (即使用 Curve 作为喂价来源),导致攻击者可以通过巨额兑换操控预言机的价格来控制 Harvest Finance 中 fToken 的铸币数量,从而使攻击者有利可图。
- 攻击者通过 Tornado.cash 转入 20ETH 作为后续攻击手续费;
- 攻击者通过 UniswapV2 闪电贷借出巨额 USDC 与 USDT;
- 攻击者先通过 Curve 的 exchange_underlying 函数将 USDT 换成 USDC,此时 Curve yUSDC 池中的 investedUnderlyingBalance 将相对应的变小;
-
随后攻击者通过 Harvest 的 deposit 将巨额 USDC 充值进 Vault 中,充值的同时 Harvest 的 Vault 将铸出 fUSDC。而铸出的数量计算方式如下:amount.mul(totalSupply()).div(underlyingBalanceWithInvestment());
计算方式中的 underlyingBalanceWithInvestment 一部分取的是 Curve 中的 investedUnderlyingBalance 值,由于 Curve 中 investedUnderlyingBalance 的变化将导致 Vault 铸出更多的 fUSDC。 - 之后再通过 Curve 把 USDC 换成 USDT 将失衡的价格拉回正常;
- 最后只需要把 fUSDC 归还给 Vault 即可获得比充值时更多的 USDC;
- 随后攻击者开始重复此过程持续获利。
其他攻击流程与上诉分析过程类似
参考交易哈希:
0x35f8d2f572fceaac9288e5d462117850ef2694786992a8c3f6d02612277b0877
安全事件发生后,Harvest Finance 初步调查后更新推特表示:
就像其他套利经济攻击,本次攻击源于一笔巨额闪电贷。攻击者多次操纵一个资金池(Curve y Pool)的价格,以耗尽另一个资金池(fUSDT、fUSDC)里的资金,随后再将资金转换为 renBTC 并套现。
此外,Harvest Finance 官方还表示:
此次攻击是通过 Curve y 池进行。为了保护用户,Harvest Finance 已经将 y 池和 BTC Curve 策略资金存入 Vault 中。目前为止,所有稳定币和 BTC 资金都在 Vault 中(已不在策略中部署)。其他池不受影响。
Harvest Finance 还通过与 RenProtocol 合作,并相关的 10 个 BTC 地址,希望币安、火币、OKEx 和 Coinbase 等交易平台对其进行冻结。其进一步称:
除了持有被盗资金的 BTC 地址,我们现在还掌握了大量关于攻击者的个人身份信息。他在加密社区颇为有名。
后续影响
由于本次安全事件涉及的金额较大,且影响较广,再次引发市场对 DeFi 项目安全性的担忧。Cobo 联合创始人神鱼在微博表示,理论上凡是 Harvest 上的稳定币和 BTC 挖 CRV 的单币都有这个风险,大家抓紧提现。
在市场恐慌蔓延的情况下,Debank 数据显示,DeFi 市场总锁仓价值(TVL)从 10 月 25 日的 149.98 亿美元下降至今日 138.90 亿美元。在锁仓量排名前十的项目中,已有 Harvest、Curve、YFI、Aave 四个项目下跌比例超过 10%。其中 Harvest 从 11.19 亿美元的锁仓量下跌至 5.85 亿美元。
锁仓量的大幅下降却带动了 Uniswap 等去中心化交易所的交易量。据 Uniswap 官网显示,Uniswap 的交易量今日突现猛增态势,从昨天的 1.48 亿美元增长到 21.1 亿美元,24 小时增长 1267.91%。
The Block 研究总监 Larry Cermak 对此发推称,这其中约 92%的交易量来自 USDT/ETH 交易对(48.3%)和 USDC/ETH 交易对(43.4%)。他们为 Uniswap 的 LP 产生了 576 万美元的费用。
据 DeFi 发烧友 jiecut 总结的数据显示,在本次安全事件中,黑客在链上的操作为部分平台带来了比较可观的收入。其中 Uniswap 的 LP 收入近 600 万美元;Curve LP 大约可获得 100 万美元;ETH Gas 费达 10 万美元;RenVM 的手续费为 2 万美元。
据官方消息,目前攻击者已通过 USDT 和 USDC 的形式退回开发者 247.9 万 美元,这笔资金将通过快照按比例分配给资金受损的存款人。Harvest Finance 持续发推希望黑客归还被盗资金,并悬赏 10 万美金奖励首位成功和攻击者取得联系并帮助返还用户资金的个人或团队。
安全端倪早已显现
在攻击发生前,DeFi 分析师 Chris Blec 揭露了 Harvest Finance 存在的巨大风险。其指出,Harvest Finance 拥有一个管理密钥,可让持有者随意铸造代币并窃取用户的资金。正如该项目的审计公司 PeckShield 和 Haechi 所指出的那样,其治理参数不是由具有明确定义规则的合约来设置的。该管理密钥可能由该项目背后的匿名开发者持有。持有人可铸造无限数量的代币,并消耗代币的 Uniswap 池中的资金。
同时,Chris Blec 还表示,项目方或许有在试图向用户隐藏其审计报道。因为他发现:
Peckshield 和 Haechi Labs 审计报告链接的 URL 都是不正确的,以及“ https://github.com …” 之前的所有内容都应被删除。
而在 Chris Blec 发现问题并试图联系 Harvest Finance 社区和开发者,以询问管理密钥的归属时,其还遭受到言语攻击,并被禁止加入 Harvest Finance 的 Discord 社区,在 Twitter 上被拉黑。
最新进展
在最新的推特中,官方表示将在接下来的 16 小时内发布事后报告,并针对未来的危机应对策略制定工作,包括评估保险方案以及赔偿策略。截止发稿前,Harvest 代币 FARM 暂报 101.35 美元,24 小时跌幅达 56.7%。
Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?
Bitcoin Price Consolidates Below Resistance, Are Dips Still Supported?
XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up
XRP, Solana, Cardano, Shiba Inu Making Up for Lost Time as Big Whale Transaction Spikes Pop Up
Justin Sun suspected to have purchased $160m in Ethereum
Justin Sun suspected to have purchased $160m in Ethereum