简析Yearn Finance被黑安全事件

此次攻击的原因在于攻击者利用 yUSDT 合约被错误设置了 fulcrum 地址,从而操控 yUSDT 合约中的稳定币储备余额,通过在 yUSDT 中存入 USDT,以获得大量的非预期的 yUSDT 代币进行获利。

据慢雾区情报,2023 年 4 月 13 日,去中心化收益聚合平台 Yearn Finance 遭到攻击,攻击者获利超千万美金。慢雾安全团队以简讯的形式分享如下:

相关信息

Yearn 的 yUSDT 合约设计存在 aUSDT、dydx 头寸、iUSDC 与 cUSDT 储备,用户在 deposit/withdraw 时会根据上述储备余额计算用户所能获得的份额 / 所需存款的数额。

攻击核心点

此次攻击的原因在于攻击者利用 yUSDT 合约被错误设置了 fulcrum 地址,从而操控 yUSDT 合约中的稳定币储备余额,通过在 yUSDT 中存入 USDT,以获得大量的非预期的 yUSDT 代币进行获利。

简析Yearn Finance被黑安全事件

具体细节分析

1、攻击者首先通过闪电贷借出大量的 DAI、USDC 和 USDT,接着通过 Curve 的 ySwap 将 DAI 和 USDC 换成 USDT,以消耗 yUSDT 合约中的 aUSDT 储备。

2、接着攻击者为 Aave Pool v1 上存在负债的用户还款,目的是增加 Aave Pool v1 中的 USDT 数额,以便 yUSDT 中的 aUSDT 能够顺利被赎回。

简析Yearn Finance被黑安全事件

3、紧跟着调用 yUSDT 合约的 deposit 函数进行 USDT 存款,得到相对应的 yUSDT 代币。为后续通过 withdraw 清空 yUSDT 中 aUSDT 储备做准备。

4、为了确保 withdraw 时能够清空 yUSDT 中 aUSDT 储备,攻击者调用 iUSDC 合约的 mint 函数铸造 iUSDC 后,将 iUSDC 直接转给 yUSDT 合约,为 yUSDT 合约增加储备深度。

简析Yearn Finance被黑安全事件

5、随后攻击者调用 yUSDT 合约的 withdraw 函数进行取款,由于此时 provider 指定为 AAVE,因此 yUSDT 会通过 Aave Pool v1 赎回 USDT 给提款人。

6、由于攻击者在之前通过 iUSDC 增加了合约中的储备,因此在此次提现中可以将 yUSDT 里的 aUSDT 储备全部清空。

简析Yearn Finance被黑安全事件

7、此时 yUSDT 合约中的 aUSDT、dydx 头寸与 cUSDT 储备都被操控为 0 了。最后,为清空 iUSDC 储备,攻击者调用 yUSDT 合约的 rebalance 函数,进行储备更新。

8、由于此时 yUSDT 中只剩余 iUSDC,因此合约的新 provider 将会被指向 iUSDC,导致 Rebalance 函数会先进行 _withdrawAll 操作,再通过余额获取的方式更新储备。

简析Yearn Finance被黑安全事件

9、而在 _withdrawAll 操作中会燃烧掉 iUSDC 以获得 USDC 代币,但在更新储备时获取的是 yUSDT 合约中 USDT 的余额。因此 fulcrum 储备被错误的指向了 iUSDC,导致此时 yUSDT 合约储备被操控为 0。

10、攻击者为确保能通过存款获得大量的 yUSDT,向 yUSDT 合约中转入 1 wei 的 USDT。

简析Yearn Finance被黑安全事件

11、最后,攻击者调用 yUSDT 的存款函数,存入 10,000 枚 USDT,获得 1,252,660,242,850,000 枚 yUSDT,并通过 curve 将 yUSDT 换成大量的 yDAI、yUSDC、yTUSD。

总结

本次攻击事件是由于 Yearn Finance 的 yUSDT 合约错误的配置导致的。慢雾安全团队建议在对协议进行配置时,应仔细检查所有参数是否符合预期并进行充分的测试以确保协议的安全。

(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)

(0)
Gao的头像Gao
上一篇 2023年4月15日 上午11:47
下一篇 2023年4月15日 下午3:26

相关推荐

  • DEX在流动性质押战争下的形式与机会

    如此推文所述,支持 usntake 的 Staking Token 其价格区间是一个略可预期的窄区间,这其实非常适合 Uni V3 自主选择流动性区间的模式。毕竟对于 Curve 而言,至少也会浪费 stETH/ETH>1 这一区间的流动性。

    2023年1月16日
    679
  • 聚焦跨链质押的衍生品协议

    Staking 衍生品本质上是对参与 Staking 的原生代币发放对应凭证,持有该凭证可以获得 Staking 收益。在 Staking 周期结束后,该凭证可以刚性承兑回原生通证。这样的设计能够解决 PoS 共识下的 DeFi 收益和 Staking 收益相冲突的问题,通过将 Staking 收益转化为可以交易的衍生品,让用户在 DeFi 中进行交易,从而同时实现 Staking 代币的流动性和收益。

    2023年12月29日
    906
  • LD Capital:Aave短期资金面分析

    Aave 是以太坊上借贷龙头,现部署在 Polygon、Arbitrum、Optimism 等 9 条链上。该项目成立于 2017 年,初始版本为点对点借贷,后因借贷撮合效率低下而改版,借鉴 Compound 资金池借贷模型提供高流动性。Aave 当前为 V3 版本,该版本的目的是为提供更高的资本效率、更高的安全性和跨链借贷功能。

    2023年9月20日
    405

发表回复

登录后才能评论
微信

联系我们
邮箱:whylweb3@163.com
微信:gaoshuang613