慢雾安全团队分析Grim Finance被攻击经过和原因_RIM:DEPO

Fantom链上复合收益平台GrimFinance遭遇闪电贷攻击,涉及损失资金超3000万美金。慢雾安全团队进行分析了攻击经过如下:

1.攻击者通过闪电贷借出WFTM与BTC代币,并在SpiritSwap中添加流动性获得SPIRIT-LP流动性凭证。

2.随后攻击者通过GrimFinance的GrimBoostVault合约中的depositFor函数进行流动性抵押操作,而depositFor允许用户指定转入的token并通过safeTransferFrom将用户指定的代币转入GrimBoostVault中,depositFor会根据用户转账前后本合约与策略池预期接收代币(预期接收want代币,本次攻击中应为SPIRIT-LP)的差值为用户铸造抵押凭证。

慢雾安全:Quiuixotic 出现严重漏洞,请相关用户尽快取消授权:据慢雾安全团队情报,2022年7月1日,Optimism生态最大NFT平台Quiuixotic出现严重漏洞,大量用户资产被盗,请在该市场上进行过交易的用户尽快取消授权。

在市场合约的fillSell Order函数中仅对卖单进行了检查,并未对buyer的买单做检查。故攻击者首先创建了任意的NFT合约,调用fillSellOrder函数生成卖单,将buyer参数传为受害者地址、payment ERC20参数传为需要盗取的代币地址,即可将对该市场合约有授权的用户的代币转走获利。[2022/7/1 1:44:30]

3.但由于depositFor函数并未检查用户指定转入的token的合法性,攻击者在调用depositFor函数时传入了由攻击者恶意创建的代币合约地址。当GrimBoostVault通过safeTransferFrom函数调用恶意合约的transferFrom函数时,恶意合约再次重入调用了depositFor函数。攻击者进行了多次重入并在最后一次转入真正的SPIRIT-LP流动性凭证进行抵押,此操作确保了在重入前后GrimBoostVault预期接收代币的差值存在。随后depositFor函数根据此差值计算并为攻击者铸造对应的抵押凭证。

慢雾安全提醒:Discord,Telegram频道公告权限设置提醒:据慢雾安全情报,近期存在项目因 Discord 管理账户权限设置问题而造成管理账户被接管,并通过公告频道发布钓鱼链接,导致社区用户遭受损失的事件。在此提醒各位注意添加频道权限设置,管理公告发布,预防仿冒官方人员名称发布公告及网络链接钓鱼问题。[2021/12/24 8:00:42]

4.由于攻击者对GrimBoostVault合约重入了多次,因此GrimBoostVault合约为攻击者铸造了远多于预期的抵押凭证。攻击者使用此凭证在GrimBoostVault合约中取出了远多于之前抵押的SPIRIT-LP流动性凭证。随后攻击者使用此SPIRIT-LP流动性凭证移除流动性获得WFTM与BTC代币并归还闪电贷完成获利。

声音 | 慢雾安全团队:门罗币不小心创造了一个网络和平世界:据火讯财经报道,慢雾安全团队表示:“门罗币不小心创造了一个网络和平世界,因为其CPU/GPU算力友好,对抗职业矿机(比如ASIC芯片),且门罗是最早的一批,算是匿名币的龙头,地下黑客入侵大量服务器,以前是勒索、窃取机密,现在大规模做CPU挖矿,所发布的典型蠕虫病修补了相关漏洞入口,杀掉了蠕虫对手,安全加固了相关机制,然后它仅挖矿,不少企业入侵事件的发现不是因为发现蠕虫,而是发现服务器或主机卡了,这些蠕虫挖的主要就是门罗。”[2018/7/3]

此次攻击是由于GrimBoostVault合约的depositFor函数未对用户传入的token的合法性进行检查且无防重入锁,导致恶意用户可以传入恶意代币地址对depositFor进行重入获得远多于预期的抵押凭证。

慢雾安全团队建议:对于用户传入的参数应检查其是否符合预期,对于函数中的外部调用应控制好外部调用带来的重入攻击等风险。

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

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

金宝趣谈

[0:15ms0-4:30ms