DeFi平台Grim Finance攻击事件分析:攻击者盗币价值超过3000万美元_DEF:Capdax Token

0x1事件背景

GrimFinance是一个智能收益优化平台,允许用户将AMMs发行的LP-Tokens押在GrimVaults中,这些LP-Tokens会自动收获并将其奖励重新押在LP-Tokens上,以获得复合效应,帮助用户收获更多的奖励。

零时科技区块链安全情报平台监控到消息,北京时间2021年12月19日,GrimFinance官方发推文称平台被外部攻击者利用,攻击者盗币价值超过3000万美元,零时科技安全团队及时对该安全事件进行复盘分析。

0x2攻击者信息

零时科技安全团队通过初步追踪分析,此次攻击发生在Fantom链,主要攻击信息如下:

国际证券委员会组织:应对DeFi项目负责人进行监管:9月7日消息,国际证券委员会组织(IOSCO)在周四发布的一份报告中表示,各国政府应该弄清楚谁负责所谓的DApp,并像正常的金融市场参与者一样对其进行监管。

全球标准制定者的成员包括美国证券交易委员会和英国金融行为监管局等机构,他们担心创新的金融应用程序可能很容易被操纵,并且似乎对没有人控制并承担法律义务的前提表示怀疑。原则上,DeFi允许使用算法、代币和去中心化自治组织(DAO)进行借贷或交易,颠覆了常规金融监管的许多前提,而常规金融监管依赖于找到一个中心人物或公司负责维护市场公平并保护投资者。

IOSCO建议,国家监管机构应确定谁真正负责,并赋予他们与传统金融(TradFi)相同的维护投资者保护和市场诚信的义务。[2023/9/7 13:24:48]

攻击者钱包地址https://ftmscan.com/address/0xdefc385d7038f391eb0063c2f7c238cfb55b206c

DeFi借贷协议Vee Finance完成250万美元A轮融资:9月7日消息,DeFi借贷协议Vee Finance宣布完成新一轮250万美元A轮融资,投资方包括7 O'Clock Capital、AC Capital、AP Capital、Avalanche Capital、BCA Investments、CatcherVC、Chronos Ventures、COBAK、 Damo Labs、Dutch Crypto Investors、FBG Capital、Kryptos Research、Lancer Capital、LD Capital、Limestone Capital、MEXC Labs、Mint Ventures、Momentum 6、NGC Ventures、Ti Capital、ViaBTC Capital和Waterdrip Capital等。同时,Vee.Finance宣布将于9月14日在Avalanche主网上正式启动。[2021/9/7 23:06:44]

攻击者合约地址https://ftmscan.com/address/0xb08ccb39741d746dd1818641900f182448eb5e41#code

Kava DeFi Hub总锁仓量突破5000万美元 创历史新高:据官方公告,当前Kava CDP和HARD Protocol中累计锁仓价值5000万美元的资产,正在赚取超高收益的KAVA和HARD奖励。其中HARD Protocol上USDX的存币量突破1500万。

Kava是一个跨链DeFi平台,提供主流数字货币的抵押借贷。HARD Protocol是基于Kava区块链发布的跨链加密货币市场,支持BTC、XRP、BNB、BUSD、KAVA和USDX等资产借贷和挖矿赚取收益。[2020/11/18 21:09:51]

攻击交易https://ftmscan.com/tx/0x19315e5b150d0a83e797203bb9c957ec1fa8a6f404f4f761d970cb29a74a5dd6

58学院直播间:稳定币的增发有利于DeFi行业稳定发展:8月20日晚8点,58学院第十一期AMA《万众狂欢的DeFi,老币圈与新币圈存在鄙视链?》邀请到了牛市财经CEO Vicky做客直播间。Vicky表示,随着DeFi行业不断发展完善,市场对稳定币的需求也会增长。例如这次疫情,投资者大多都选择了稳定币避险,再加上3月份的币市大跌和DeFi市场的火热,这些都促进了市场对稳定币需求的增加。合规是稳定币最大的优势。稳定币由公司监管运营,由监督机构批准,具备合法的储备金账户,还有审计机构定期核准其流通量与储备金的匹配度。目前来看,稳定币的增发更加有利于DeFi行业稳定发展。[2020/8/20]

GrimBoostVault合约https://ftmscan.com/address/0x660184ce8af80e0b1e5a1172a16168b15f4136bf#code

Qtum量子链推出100万美金DeFi开发者支持计划:量子链基金会已设立DeFi开发者支持计划,旨在支持开发者利用Qtum量子链开发DeFi应用,丰富量子链DeFi生态。量子链基金会计划为每位通过审核的申请者(团队)根据其开发目标提供相应的开发资助。对于开发者,只要熟悉Solidity智能合约开发,理解量子链的运行原理与技术特点,对DeFi应用有自己独到的认识,都可进行申请。[2020/8/17]

0x3攻击分析

以下将拆解攻击者交易,方便读者更清晰地了解攻击过程。

第一步:攻击者闪电贷借款30枚BTC和92万枚WFTM,并通过PancakePair将借款添加流动性获取0.0476枚SpiritLP。

第二步:将获取的SpiritLP质押后获得GB-BTC-FTM。

第三步:通过多次质押存款获取GB-BTC-FTM。

第四步:将获取的GB-BTC-FTM归还,获得0.0663枚SpiritLP。

第五步:解除流动性获取41枚BTC和128万枚WFTM,并归还闪电贷借款及手续费,随后将获利的11枚BTC和36万枚WFTM转至攻击者钱包地址。

攻击者通过同样的攻击手法继续进行了8次攻击,如下图

至此

攻击者通过9笔攻击交易共获取累计获取26万枚BTC,1865万枚,75万枚DAI,75万枚USDC,13万枚BOO,价值约3000万美元。

下来通过合约代码了解漏洞发生的原因。

0x4漏洞细节

通过查询交易详情可以找出本次攻击中使用的合约方法主要有两个:

GrimBoostVault.depositFor方法,用户质押资金并返回相应的证明代币。

GrimBoostVault.withdrawAll方法,用户归还证明代币获取对应的质押资金。

通过交易分析我们可以得知,攻击者成功的第三步主要是由于多次运转depositFor方法造成,首先来分析该方法,通读depositFor方法流程,主要是判断用户将资金质押转入合约后,计算合约余额差值,随后将差值进行计算后发送给用户相应的质押证明代币。乍一看貌似没有安全问题,但细心的同学会发现,这里的token地址并没有做固定限制,该token地址是由用户传入,由于depositFor方法中会用到token合约地址中的safeTransferFrom方法,token合约地址为用户可控后,safeTransferFrom方法随之可控。

现在可明确攻击者的攻击路径,首先创建Token合约,并在合约中的safeTransferFrom方法中写入重新调用GrimBoostVault.depositFor方法的逻辑,在进行多次重入后最后传入一笔正常的Token代币质押,之后虽然会进入到正常流程,但是由于之前的多次重入,导致获取合约余额的前后差值过大,最终铸造了大量的证明代币。

例如:攻击者进行了6次重入,最后一次传入资金为100,那么最终得到的差值就是100*6,铸币时的计算值也是600。

重入成功后,攻击者调用withdrawAll方法归还重入获取的大量证明代币获取对应的质押资金,完成获利。

目前,GrimFinance官方已暂停所有金库,并提醒用户尽快提取自身所有资金,暂未声明合约修改方案和补偿方案。

0x5总结

通过此次攻击事件来看,攻击者主要利用GrimBoostVault合约depositFor方法未进行Token地址检查,通过多次重入造成巨大的合约余额差值,铸造大量资金,随后通过withdrawAll方法取走获利的资金,DeFi项目中类似的攻击事件居多,为何还会频频发生,对于DeFi项目而言,合约代码的安全,代币价格的相对稳定,方法传参的可控性,旧版本的及时更新都是保证项目安全极其重要的部分,任何细节的马虎都可能导致项目及用户资金受到损失。对于此类闪电贷攻击事件,零时科技安全团队给出以下建议。

0x6安全建议

对于合约代码安全,可找多家安全审计公司进行审计。对于涉及资金转账的方法,应进行严格的权限控制。对敏感性较强的代码,要做到及时更新完善。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-5:636ms