零时科技 || IonicMoney 攻击事件分析
2025-02-06 13:59
零时科技
2025-02-06 13:59
订阅此专栏
收藏此文章


背景介绍


近期,我们检测到 Mode Chain 上针对 Ionic Money 的一系列攻击:

https://explorer.mode.network/tx/0x37e53b15cb7f298bd8c45fcbbd914ba90feb3946f5511fc55bc986b7472956df 

Ionic Money 是一个 compound fork 的 DeFi 项目,其在 Base 、 Optimism 、 Bob 、 Fraxtal 、Lisk 、 Mode 上均提供服务。本次是在 Mode Chain 上遭受攻击者攻击,本次攻击共损失约 8.5 MUSD 。



攻击及事件分析


首先,攻击者通过 mint 使用 60 LBTC 兑换了 undelying assets , 300 ionLBTC 。



但是,当我们看攻击者 60 LBTC 来源时发现这 60 LBTC 是攻击者自己 mint 的,攻击者在发起攻击前,通过 mint 获得了 250 LBTC 。



随后,我们查看了 LBTC 的合约,发现合约中的 Bascule 为:

0x0000000000000000000000000000000000000000 。



在 LBTC 的实现中 mint 需要通过 Bascule 的验证,



其中, _confirmDeposit 的实现如下:



LBTC 官方文档中对 Bascule 的介绍如下,其主要功能为一个 on-chain 的合约和 off-chain 的系统,防止攻击者进行攻击。



因为,此 LBTC 的 Bascule 没有对应的合约,所以攻击者可以任意 mint 。随后,攻击者通过 mint 的 LBTC 抵押到 IonicMoney 中,提取了所有池子的资金完成攻击。所以,造成此次攻击的根本原因是 IonicMoney 在创建借贷池时没有验证 LBTC 是否是官方创建的合约,导致借贷池的 unlying assets 为 fake token ,攻击者随意 mint 后通过 borrow 掏空所有资金。






总结


本次漏洞成因主要是因为 IonicMoney 项目方在创建借贷池时没有验证资产对应的合约是否是官方部署的,导致借贷池的 undelying asset 为 fake token 。建议项目方在设计经济模型、价格计算机制和代码运行逻辑时要多方验证,合约上线前审计时尽量选择多个审计公司交叉审计,最后在上线前部署时检查对应的 token 是否是官方部署的。





若需了解更多产品信息或有相关业务需求,可扫码关注公众号或移步至官网:


微信号noneage

官方网址https://noneage.com/





推荐阅读

REVIEW




END





点击阅读全文 立刻直达官网

     /www.noneage.com/    


【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

在 App 打开
空投
rwa
稳定币
wct
hyperliquid
uniswap
initia
fo
以太坊
om
crv
香港