据慢雾区消息,2021年6月29日,去中心化跨链交易协议THORChain发推称发现一个针对THORChain的恶意攻击,THORChain节点已作出反应并进行隔离和防御。慢雾安全团队第一时间介入分析,经分析发现,这是一起针对跨链系统的“假充值”攻击,结果分享如下:
什么是“假充值”?
当我们在谈论“假充值”攻击时,我们通常谈的是攻击者利用公链的某些特性,绕过交易所的充值入账程序,进行虚假充值,并真实入账。
公链项目Taraxa:官方并未释放代币,警惕假币风险:据官方消息,公链项目Taraxa表示,目前并没有释放任何TARA代币,在市场上流通的“TARA”代币均为虚假代币。Taraxa官方目前尚未公布上线计划合作交易所以及其TARA代币合约地址。Taraxa基金会在此提醒广大投资者,谨防被。
此前报道,Taraxa已于今日上午在Tokensoft平台成功完成其本次公开发行,同时在线申购人数约13000人。此外Taraxa计划于近期启动上所计划。[2021/3/12 18:40:13]
随着RenVM、THORChain等跨链服务的兴起,跨链节点充当起了交易所的角色,通过扫描另一条公链的资产转移情况,在本地公链上生成资产映射。THORChain正是通过这种机制,将以太坊上的代币转移到其它公链。
漏洞分析
我们从业务逻辑入口去追踪分析此漏洞的成因。
Yearn核心开发者:发Deriswap假币的者错把全部“收益”转给了AC:12月9日,Yearn核心开发者Banteg发推表示,发Deriswap假币的者通过给AC的地址发送假币来普通用户,但他却错把所得收益也转给了AC。他还表示,计划由社区用户部署一个Merkle Distributor的合约将资金归还给用户。[2020/12/9 14:40:10]
首先看到在处理跨链充值事件时,调用了getAssetFromTokenAddress?方法去获取代币信息,并传入了资产合约地址作为参数:
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
?
孙宇晨就Justswap上线致币圈的公开信:关于解决假币问题:据最新消息显示,波场TRON创始人兼BitTorrent CEO孙宇晨发布了Justswap上线致币圈的公开信,孙宇晨表示:“解决假币问题。Justswap团队将重拳出击整改假币问题,我们将会把下拉列表栏的代币全部审查一遍,确保列表中的代币为真币,与此同时,官方开启假币审核,推出假币举报通道(report/img/20230515195232331714/2.jpg "/>
继续验证我们的猜测,我们看到当代币地址在系统中不存在时,会从以太坊主链上去获取合约信息,并以获取到的symbol构建出新的代币,此时所有的漏洞成因都已经显现:
日本1.9亿假币比特币案,4人遭到起诉:据日经新闻报道,东京地方检察厅调查了四名企业高层,包括Kentaro Yagihashi,因用假币比特币遭到欺诈指控。警察因欺诈行为共逮捕了12人,并对包括自营职业者在内的8人作出不起诉处理,对4人作出起诉处理。但地区检察官没有披露处理的原因。此前,据TBS报道,前后有12人因假币比特币被日本逮捕,涉案金额高达1.9亿日元。[2018/5/2]
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
-?bifrost/pkg/chainclients/ethereum/tokens_db.go
-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go
总结一下,首先是由于错误的定义,如果跨链充值的ERC20代币符号为ETH,那么将会出现逻辑错误,导致充值的代币被识别为真正的以太币ETH。
还原攻击真相
我们来看一笔攻击交易的执行过程,可以提取出充值的代币合约地址:
我们在Etherscan上查看这个代币合约地址:
发现这个地址对应的合约的代币符号正是ETH,攻击者正是通过部署了假币合约,完成了这次跨链假充值。
漏洞修复
漏洞补丁:
项目方在发现攻击后快速对代码进行了修复,删除了默认的代币类型,使用common.EmptyAsset进行空代币定义,并在后续逻辑中使用asset.IsEmpty()进行判断,过滤了没有进行赋值的假充值代币。
总结
幸运的是项目方及时发现了本次攻击,未造成巨额财产损失,但作为跨链系统,未来可能聚集巨额的多链资金,安全性不容忽视,因此慢雾安全团队建议在进行跨链系统设计时应充分考虑不同公链不同代币的特性,充分进行“假充值”测试,做好状态监控和预警,必要时可联系专业安全公司进行安全审计。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。