免责声明:金色财经所有资讯仅代表作者个人观点,不构成任何投资理财建议。请确保访问网址为(jinse.cn) 举报

    损失约900万美元——WOOFi 攻击分析

    来源:深圳零时科技

    背景介绍

    2024年3月5日,我们监测到一笔arbitrum链上的异常交易:https://arbiscan.io/tx/0xe80a16678b5008d5be1484ec6e9e77dc6307632030553405863ffb38c1f94266

    经分析,我们发现是一次针对WOOFi的攻击事件,事件共造成约900万美元的损失

    WOOFi是由WOO Network构建的一体化去中心化应用程序(DApp)。WOOFI旨在通过提供超低滑点、有竞争力的兑换费用以及其他有用功能,优化用户对去中心化金融(DeFi)的体验。

    WOOFi用户可兑换热门数字资产,还有机会通过质押和向网络提供流动性来赚取收入。WOOFi平台为DeFi用户打造的一大价值主张是深度流动性。

    本次受攻击的为WOOFi中的swap合约,合约地址为:https://arbiscan.io/address/0xeff23b4be1091b53205e35f3afcd9c7182bf3062#code

    攻击及事件分析

    攻击者从Uniswap、TraderJoe中利用flashLoan获得攻击初始资金,共计10504796 USDC.e和2721172 WOO。

    图片

    随后,攻击者将借来的USDC.e在Slio Finance中抵押(共抵押7000000 USDC.e),借出5092663 WOO。

    图片

    接着,攻击者利用剩下的USDC.e通过WOOFi的swap功能,兑换为WOO,因此拉高WOO的价格。

    图片

    经过3次swap操作,将WOO的价格由56884100拉高到了60400479,为后续的攻击创造了条件。

    真正的攻击发生在攻击者将WOO兑换为USDC.e时,

    图片

    可以看到,经过此次swap,WOO的价格变为了7,即0.00000007 USD。对比之前的价格暴跌了862万倍

    通过查看合约代码我们发现,WOOFi合约中在进行将BaseToken兑换为QuoteToken时存在数据处理缺陷。

    图片

    我们看卖出BaseToken得到QuoteToken时,BaseToken的价格计算方法

    newPrice = (1 - 2 * k * oracle.price * baseAmount) * oracle.price

    攻击者可以控制oracle.price和baseAmount,因为k值不变。攻击者可以通过多次swap操纵oracle.price即BaseToken的价格,并且可以操纵baseAmount。由这个公式可以看出,newPrice必定小于oracle.price。所以,攻击者可以控制oracle.price和baseAmount的组合,将newPrice操纵到极低。

    最后,攻击者利用小额的USDC.e兑换出了大量的WOO,归还借贷本金并套现。

    2天后,WOOFi官方人员与攻击者沟通,表示可以提供10%作为Whitehat奖金。不过截至发文时,攻击者还未归还被盗资金。

    图片

    随后,官方修复了这个问题,可以看到,官方修复的方式就是取消了2倍的系数。https://github.com/woonetwork/WooPoolV2/commit/f5fe28acc77cf3801ac379db9bf99bb61b73ba17

    图片

    总结

    本次漏洞的成因是经济模型计算存在漏洞,攻击者可以控制价格的买卖数量从而使Token价格大幅缩水,最终导致攻击者用极少的USDC.e掏空了项目方的WOO代币。建议项目方在设计经济模型和代码运行逻辑时要多方验证,合约上线前审计时尽量选择多个审计公司交叉审计。

    jinse.cn 1
    好文章,需要你的鼓励
    jinse.cn 1
    好文章,需要你的鼓励
    参与评论
    0/140
    提交评论
    文章作者: / 责任编辑:

    声明:本文由入驻金色财经的作者撰写,观点仅代表作者本人,绝不代表金色财经赞同其观点或证实其描述。

    提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

    金色财经 > 深圳零时科技 > 损失约900万美元——WOOFi 攻击分析
    • 寻求报道
    • 金色财经中国版App下载
      金色财经APP
      iOS & Android
    • 加入社群
      Telegram
    • 意见反馈
    • 返回顶部
    • 返回底部