木星链 木星链
Ctrl+D收藏木星链

ETH:假币的换脸戏法:技术拆解 THORChain 跨链系统“假充值”漏洞

作者:

时间:1900/1/1 0:00:00

据慢雾区消息,2021年6月29日,去中心化跨链交易协议THORChain发推称发现一个针对THORChain的恶意攻击,THORChain节点已作出反应并进行隔离和防御。慢雾安全团队第一时间介入分析,经分析发现,这是一起针对跨链系统的“假充值”攻击,结果分享如下:

什么是“假充值”?

当我们在谈论“假充值”攻击时,我们通常谈的是攻击者利用公链的某些特性,绕过交易所的充值入账程序,进行虚假充值,并真实入账。

CoinWind声明:请用户警惕PancakeSwap上的CowMoon假币:近日,CoinWind发现市场上已有打着CoinWind旗号在PancakeSwap上发行的假币CowMoon。在此,CoinWind郑重声明,CoinWind平台Token为COW,请广大用户注意防范风险,保护自身财产安全,并对打着ConinWind旗号发行代币的非法行为予以抵制。官方信息,请关注CoinWind官网及Twitter。[2021/6/7 23:17:10]

随着RenVM、THORChain等跨链服务的兴起,跨链节点充当起了交易所的角色,通过扫描另一条公链的资产转移情况,在本地公链上生成资产映射。THORChain正是通过这种机制,将以太坊上的代币转移到其它公链。

漏洞分析

我们从业务逻辑入口去追踪分析此漏洞的成因。

首先看到在处理跨链充值事件时,调用了getAssetFromTokenAddress?方法去获取代币信息,并传入了资产合约地址作为参数:

俄罗斯VTB银行董事长:比特币是假币,数字货币出现不可避免:俄罗斯第二大银行VTB董事长兼总裁Andrey Kostin表示,他不喜欢比特币。他认为比特币是假币,并将加密挖矿技术比作中世纪罪犯伪造货币的方式。然而,他承认CBDC的推出是重要的,俄罗斯将很快开始数字卢布试验。Kostin也承认世界正在走向数字化,数字货币的出现是不可避免的。然而,他坚持认为,这些应由央行控制。(U.Today)[2021/6/4 23:12:32]

-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go

?

FTX创始人:警惕Uniswap上的SRM假币:8月6日消息,加密衍生品交易所FTX的创始人Sam Bankman-Fried发推提醒用户警惕Uniswap上的SRM假币。他表示,目前SRM还不能交易,如果你在Uniswap等平台上看到SRM,那么这是假币。[2020/8/6]

在getAssetFromTokenAddress方法里,我们看到它调用了getTokenMeta?去获取代币元数据,此时也传入了资产合约地址作为参数,但在此处有一个定义引起我们的警觉,在初始化代币时,默认赋予了代币符号为ETH,这就是漏洞的关键点之一:asset:=common.ETHAsset,如果传入合约地址对应的代币符号为ETH,那么此处关于symbol的验证将被绕过。

-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go

声音 | 火币CEO七爷:火币动用假币砸盘是谣言:近日有传闻称,火币內部资金出现问题,并动用假币砸盘。对此火币CEO七爷刚刚在微信朋友圈表示这类消息是谣言,并称:组织传谣的痕迹还是太明显了。[2019/7/19]

继续验证我们的猜测,我们看到当代币地址在系统中不存在时,会从以太坊主链上去获取合约信息,并以获取到的symbol构建出新的代币,此时所有的漏洞成因都已经显现:

-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go

日本1.9亿假币比特币案,4人遭到起诉:据日经新闻报道,东京地方检察厅调查了四名企业高层,包括Kentaro Yagihashi,因用假币比特币遭到欺诈指控。警察因欺诈行为共逮捕了12人,并对包括自营职业者在内的8人作出不起诉处理,对4人作出起诉处理。但地区检察官没有披露处理的原因。此前,据TBS报道,前后有12人因假币比特币被日本逮捕,涉案金额高达1.9亿日元。[2018/5/2]

-?bifrost/pkg/chainclients/ethereum/tokens_db.go

-?bifrost/pkg/chainclients/ethereum/ethereum_block_scanner.go

总结一下,首先是由于错误的定义,如果跨链充值的ERC20代币符号为ETH,那么将会出现逻辑错误,导致充值的代币被识别为真正的以太币ETH。

还原攻击真相

我们来看一笔攻击交易的执行过程,可以提取出充值的代币合约地址:

我们在Etherscan上查看这个代币合约地址:

发现这个地址对应的合约的代币符号正是ETH,攻击者正是通过部署了假币合约,完成了这次跨链假充值。

漏洞修复

漏洞补丁:

项目方在发现攻击后快速对代码进行了修复,删除了默认的代币类型,使用common.EmptyAsset进行空代币定义,并在后续逻辑中使用asset.IsEmpty()进行判断,过滤了没有进行赋值的假充值代币。

总结

幸运的是项目方及时发现了本次攻击,未造成巨额财产损失,但作为跨链系统,未来可能聚集巨额的多链资金,安全性不容忽视,因此慢雾安全团队建议在进行跨链系统设计时应充分考虑不同公链不同代币的特性,充分进行“假充值”测试,做好状态监控和预警,必要时可联系专业安全公司进行安全审计。

标签:ETHChainHAIETHE1个ETH值多少人民币hxchainblockchain安卓Compound Ether

火币网下载官方app热门资讯
ETH:ETH:全球最具资本效率的资产

撰文:DavidHoffman来源:Bankless当以太坊推出时,与ETH毫无关系。但后来DeFi诞生了。MakerDAO在2018年推出,允许ETH持有者用他们的ETH作为抵押品进行贷款.

1900/1/1 0:00:00
区块链:区块链技术如何提高选举透明度和新闻筛选能力?

区块链技术的潜在影响非常广泛,而这也是该行业的特点之一,使得它对我个人具有极大的吸引力,某些行业会比其他行业更早的被改变.

1900/1/1 0:00:00
比特币:比特币的诞生 真的改变了世界吗?

比特币的历史2008年10月,在全球经济衰退导致政府出面救助银行系统的情况下,某人以中本聪(SatoshiNakamoto)为化名发布了一份名为《比特币:点对点电子现金系统》的白皮书.

1900/1/1 0:00:00
EFI:头部借贷协议进军机构市场 DeFi 之夏会再次开启吗?

就目前DeFi的基建水平、法律法规等方面来看,机构大规模采用DeFi协议还为时过早。原文标题:《CeDeFi?机构入场DeFi还有较长的路要走》炎炎夏日,DeFi蓝筹纷纷触底反弹.

1900/1/1 0:00:00
EFI:「农具」迭代 DeFi 挖矿工具新图鉴

"Blocklike从链上分析、数据模拟、APY查询、区块查询、综合平台、可视化浏览器等几个维度,整理了一些当下DeFi参与者实用的挖矿工具,以供分析.

1900/1/1 0:00:00
GAS:Vitalik:存储的定价应该独立于执行吗?

特别感谢@barnabe在早些时候提出了类似的想法。正如我关于资源定价的旧文章里详细讨论的那样,以太坊的gas实际上是为三种不同的资源付费.

1900/1/1 0:00:00