0x1 事件背景
零时科技区块链安全情报平台监控到消息,北京时间 2022年5月18日 Binance 链上 Feminist Metaverse 智能合约遭到智能合约攻击imtoken。损失资金价值超过55万美元,零时科技安全团队及时对此安全事件进行分析。
0x2 攻击者信息
攻击者钱包:
0xaaA1634D669dd8aa275BAD6FdF19c7E3B2f1eF50
攻击者合约:
0x0b8d752252694623766dfb161e1944f233bca10f
攻击交易:
0xecde3c3742615852abdbd6ec5d75ae982b5c29f810e140e5cd822667d6f7b848
FmToken合约:
0x843528746F073638C9e18253ee6078613C0df0f1
0x3 攻击分析
通过分析攻击者在BNB Chain链上攻击交易imtoken,攻击者主要的交易流程如下:
展开全文
跟进主要攻击交易第四步:
交易流程
交易详情
以上交易细节中只存在两种操作:第一种是攻击者合约调用 Fmtoken 合约中 transfer 方法给攻击者钱包转移FM代币,每次转移 0.0000000000001 枚 FM,一共转移500次;第二种是攻击者钱包地址调用 SakeSwapPair 合约中 skim 方法给自己转移 7593 万枚 FMimtoken。
通过对所有交易进行分析,攻击者共进行了16笔成功的攻击交易,8000 次调用 Fmtoken 合约中 transfer 方法转移资金,从 skim 方法转移超过 11 亿枚 FMimtoken。
0x4 漏洞细节
通过上述流程分析可以发现imtoken,攻击者成功获利的主要操作是攻击者合约调用 Fmtoken 合约中 transfer 方法给攻击者钱包转移FM代币,随后获取了大量资金,这里跟进 Fmtoken.transfer 方法:
关键代码展示
通过该图可以明确,攻击者最终通过transfer方法转移资金imtoken。由于numTokensSellToAddToLiquidity和swapAndLiquifyEnabled变量已确定,所以在transfer方法的if判断的三个条件中,swapAndLiquifyEnabled已满足,由于攻击者调用所以from != uniswapV2Pair条件也满足,当该合约地址资金不小于numTokensSellToAddToLiquidity变量值时,可满足判断条件,所以攻击者可以执行更新uniswapV2Pair地址余额和address(this)的操作。
由于这里的资金添加给uniswapV2Pair时,并不是通过添加流动性的方式转移资金,而是直接将资金添加给uniswapV2Pairimtoken。当攻击者执行多次转账后,也就是攻击者将合约的资金多次转移给了uniswapV2Pair。
之后
skim方法,任何人都可以调用该方法转移合约中额外的资产imtoken。
攻击者调用 SakeSwapPair 合约中 skim 方法将资金转移,成功获利imtoken。
0x5 资金来源及去向
攻击者资金来源均来自 Tornado.Cash 混币平台,数量为1 枚 BNBimtoken。目前攻击者获利资金已全部兑换为 1838.3 枚BNB转移至 Tornado.Cash 混币平台。
0x6 总结
通过此次攻击事件来看,Fmtoken._transfer方法中未对添加给 SakeSwapPair合约的资金进行正确操作,导致攻击者在一笔交易中可以通过多次循环转账,转移合约中原有的资金至 SakeSwapPair合约,从而通过 skim方法取走资金imtoken。对于 Fmtoken 合约资金转移的正确性校验,在合约代码开发完成后,完全可以通过代码安全审计避免。
0x7 安全建议
对于合约资金转移逻辑应进行严格检查;
智能合约上线前应进行完整细致的测试imtoken,保证合约逻辑正常;
智能合约上线前应进行全面安全审计,对智能合约风险进行全面排查imtoken。
CFTC:10月2日当周比特币期货净空头头寸增加58手 美国商品期货交易委员会(CFTC)比特币期货持仓周报:至10月2日当周,投机者所持CBOE比特币期货净空头头寸增加58手合约,,,至1297手合约;9月11日当周,以1239手合约创2017年12月份上线交易比特币期货合约以来的单周最低...
环境准备 已有Kubernetes环境(简称K8),本实践基于自建Kubernetesv1.23.1,观测云Datakit版本1.2.13,Nginx1.17imtoken。Datakit已经部署好,Datakit配置文件container.conf通过ConfigMap方式管理。 注:(阿里云容器...
AAAA AAAA即认证、授权、审计、账号(Authentication、Authorization、Audit、Account)imtoken。在安全领域我们绕不开的两个问题: 授权过程可靠:让第三方程序能够访问所需资源又不泄露用户数据imtoken,常用的多方授权协议主要有 OAuth2 和 S...
泰达股份5月20日公告,根据经营发展需要,公司的二级子公司扬州泰达环保有限公司(简称“扬州泰达环保”)向中铁建金融租赁有限公司申请融资1.8亿元,期限5年,由上市公司提供连带责任保证泰达币。公司2022年度为扬州泰达环保提供担保的额度为6.8亿元,本次担保前公司为扬州泰达环保提供担保的余额为4.9亿...
5月22号,新华网报道了中共中央、国务院印发《关于推进实施国家文化数字化战略的意见》并发出通知,要求各地区各部门结合实际认真贯彻落实元宇宙。《意见》明确到2035年,建成国家文化大数据体系,中华文化全景呈现,中华文化数字化成果全民共享。这个意见发布之后,各行各业都非常振奋,中共中央给了实体经济,传统...
我们现在都知道元宇宙就是一个和现实世界相平行的虚拟世界元宇宙,在那个虚拟世界中我们可以玩游戏结交朋友,但是随着技术的发展,虚拟世界好像并没有什么神奇的,游戏、动漫这些都是虚拟世界,可以说我们现在每天都在虚拟世界中,那么元宇宙又有什么特别的呢?元宇宙是怎样的呢? 其实可以将元宇宙想象成最古老的地球,只...