顺手牵羊?损失约54万美元,Feminist Metaverse被攻击事件分析

Beosin
Beosin 机构得得号

May 19, 2022 Beosin是总部位于新加坡的全球知名区块链安全公司,为区块链生态提供代码安全审计,安全风险监控、预警与阻断,虚拟资产被盗追回,KYT/AML等“一站式”安全产品+服务,已为全球2000多个区块链企业服务,保护客户资产5000多亿美元。

摘要: Feminist Metaverse被攻击事件分析。

2022年5月16日,成都链安链必应-区块链安全态势感知平台舆情监测显示,Feminist Metaverse的FmToken合约遭受黑客攻击,黑客获利约1838 WBNB(约54万美元)。据悉,Feminist Metaverse 是一个基于BSC上的DAO项目,成都链安技术团队第一时间对事件进行了分析,结果如下。 

#1 事件相关信息 

攻击交易(此处只列举出第一笔攻击交易,本次事件中攻击者反复进行了多次操作)

0xfdc90e060004dd902204673831dce466dcf7e8519a79ccf76b90cd6c1c8b320d 

攻击者地址

0xaaA1634D669dd8aa275BAD6FdF19c7E3B2f1eF50 

攻击合约

0x0B8d752252694623766DfB161e1944F233Bca10F 

被攻击合约

0x843528746F073638C9e18253ee6078613C0df0f1

#2 攻击流程

第一步,攻击者地址直接通过SakeSwapPair合约的skim函数领取中未记入流动性池的FM_Token,可能也是在此时意识到FM_Token合约中的漏洞;

第二步,部署攻击合约,用于加快提取FM_Token的速度;

第三步,向攻击合约转入10 FM_Token,为后续攻击做准备;

第四步,调用攻击合约,循环转出FM_Token到攻击者地址,触发将FM_Token合约中FM_Token代币的转移到SakeSwapPair的操作,并最后通过skim函数提取到攻击者地址,细节如下:

(1)多次用创建的攻击合约0x0B8d…a10F给自己的地址转账小额的FM token。

(2)由于FM_Token合约余额已达到向SakeSwapPair转账的标准的15万token,每一次转账会触发920行增加SakeSwapPair的FM token的balance。SakeSwapPair因此出现了token balance和reserve之间的差值。

(3)攻击者随后调用了SakeSwapPair中的skim()函数,将差值的token balance提取到自己的地址。

第五步,用pancakeswap把FM token换成BNB。

最后,重复第4步和第5步,并将最终获利的1838个BNB转入Tornado.Cash

#3 漏洞分析

本次攻击主要利用了直接给SakeSwapPair增加余额,但是没有写入SakeSwapPair的账本,攻击者通过多次转账,将FM_Token合约地址持有的币转移到SakeSwapPair合约中,在整个过程中SakeSwapPair自身的账本中并没有记录转入的代币,导致攻击者直接通过skim把对应的币转移到自己账户下,然后再卖出获利。

#4 资金追踪

截止发文时,截止发文时,被盗资金1838个BNB已经转入Tornado.cash。

#5 总结

针对本次事件,成都链安技术团队建议:

项目开发时,1 不要直接向Pair合约转账;2将非标准代币接入Pair时,应充分考虑代币自定义功能可能对Pair合约产生的影响;3 建议项目上线前选择专业的安全审计公司进行全面的安全审计,规避安全风险。

作者:成都链安;来自链得得内容开放平台“得得号”,本文仅代表作者观点,不代表链得得官方立场凡“得得号”文章,原创性和内容的真实性由投稿人保证,如果稿件因抄袭、作假等行为导致的法律后果,由投稿人本人负责得得号平台发布文章,如有侵权、违规及其他不当言论内容,请广大读者监督,一经证实,平台会立即下线。如遇文章内容问题,请联系微信:chaindd123。

链得得仅提供相关信息展示,不构成任何投资建议
本文系作者 Beosin 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信