区块链NFT投资,BTC/USDT/CGPAY,虚拟加密货币交易
技术拆解 THORChain 跨链系统「假充值」漏洞
百款NFT链游免费玩 | 数字货币支付图解教程 | 区块链游戏获利技巧 |
由于错误定义,如果跨链充值的 ERC20 代币符号为 ETH,那么将会出现逻辑错误;攻击者正是通过部署了假币合约,完成了跨链假充值。
据慢雾区消息,2021 年 6 月 29 日,去中心化跨链交易协议 THORChain 发推称发现一个针对 THORChain 的恶意攻击,THORChain 节点已作出反应并进行隔离和防御。慢雾安全团队第一时间介入分析,经分析发现,这是一起针对跨链系统的「假充值」攻击,结果分享如下:
什么是「假充值」?
当我们在谈论「假充值」攻击时,我们通常谈的是攻击者利用公链的某些特性,绕过交易所的充值入账程序,进行虚假充值,并真实入账。
慢雾在早期已经披露过多起「假充值」攻击事件:
- USDT 假充值:
- EOS 假充值:
- 以太坊代币假充值:
- 比特币 RBF 假充值风险:
随着 RenVM、THORChain 等跨链服务的兴起,跨链节点充当起了交易所的角色,通过扫描另一条公链的资产转移情况,在本地公链上生成资产映射。THORChain 正是通过这种机制,将以太坊上的代币转移到其它公链。
漏洞分析
我们从业务逻辑入口去追踪分析此漏洞的成因。
首先看到在处理跨链充值事件时,调用了 **getAssetFromTokenAddress **方法去获取代币信息,并传入了资产合约地址作为参数:
bifrost/pkg/chainclients/ethereum/ethereum
block
scanner.go
在 getAssetFromTokenAddress 方法里,我们看到它调用了 **getTokenMeta **去获取代币元数据,此时也传入了资产合约地址作为参数,但在此处有一个定义引起我们的警觉,在初始化代币时,默认赋予了代币符号为 ETH,这就是漏洞的关键点之一:asset := common.ETHAsset,如果传入合约地址对应的代币符号为 ETH,那么此处关于 symbol 的验证将被绕过。
bifrost/pkg/chainclients/ethereum/ethereum
block
scanner.go
继续验证我们的猜测,我们看到当代币地址在系统中不存在时,会从以太坊主链上去获取合约信息,并以获取到的symbol构建出新的代币,此时所有的漏洞成因都已经显现:
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()进行判断,过滤了没有进行赋值的假充值代币。
总结
幸运的是项目方及时发现了本次攻击,未造成巨额财产损失,但作为跨链系统,未来可能聚集巨额的多链资金,安全性不容忽视,因此慢雾安全团队建议在进行跨链系统设计时应充分考虑不同公链不同代币的特性,充分进行「假充值」测试,做好状态监控和预警,必要时可联系专业安全公司进行安全审计。
百款NFT链游免费玩 | 数字货币支付图解教程 | 区块链游戏获利技巧 |
相关文章
热门推荐
- 数字艺术家 Beeple 在将作品拍卖所得套现后回购了...
- 美国道富银行新成立数字金融部门,专注加密货币、D...
- 向在瑞士的所有私人银行客户开放比特币交易服务
- 流动性挖矿一周年看 DeFi 成长,Paradigm 创始人再...
- 黑客组织 REvil 攻击 200 余家企业,要求使用门罗...
- 自由职业经济崛起,区块链如何革新万亿美元蓝海市场?
- 美国银行成立研究加密货币市场的研究团队
- 简析去中心化预测市场运作机制与应用前景
- 多资产交易平台 eToro 的纳斯达克上市计划推迟至四...
- dYdX 领跑去中心化永续合约赛道,其他竞争者实力如...
- CryptoPunk #6046 所有者拒绝高达 2500 ETH 的报价
- ConsenSys 与 Allfunds 合作提升企业级解决方案 Qu...
- 巴塞罗那足球俱乐部计划与 NFT 平台 Ownix 合作推...
- 速览 NFT 市场的交易聚合器 Genie
- 盘点近期「代币解锁」的 15 个主流项目
- MICA Daily|涨势重燃:比特币冲破 70,000 美元
最新文章
- 说好的商品又变证券?Consensys 怒告 SEC 对以太币...
- 「史诗级稀有聪(Epic Sat)」拍卖:经 35 次竞价...
- OSL 、华赢证券加强合作,推动香港加密币现货 ETF...
- ACE 交易所「卖垃圾币」吸金案:检方起诉潘奕彰、...
- Arkham 统计币圈 Top 10 个人大户:孙宇晨位居榜首...
- OKX 第 18 期 PoR:BTC 、 ETH 、 USDC 和 USDT 储...
- 知情人士:摩根士丹利考虑让 1.5 万经纪人主动推销...
- 消息:预计美国 SEC 将否决以太币现货 ETF 申请,...
- Meson Network 代币 MSN 上线「OKX Jumpstart」新...
- 当年「乱入」与叶伦同框而爆红!「Buy Bitcoin」笔...
- 美国又出手打击混币器,Samourai Wallet 两位创办...
- 香港首批「加密币现货 ETF」名单出炉:4/29 首次发...
- MICA Daily|Glassnode:比特币减半后,投资人应降...
- BitMEX 创办人 Arthur Hayes:印钞将加速,加密货...
- 改口称「以太币现货 ETF 过关渺茫」!渣打仍看好 E...
- 特斯拉今年 Q1 未出售比特币,连续 7 个季度「没卖...