宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > 非小号 > 正文

DoDo Research:从合约层面解析跨链桥机制设计弱点

作者:

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

近期BNB跨链桥受攻击,导致近$570M损失。这一事件再次把跨链桥的安全性问题推上热议。根据Messari8月的研报数据,过去一年内共有8起跨链桥攻击事件,构成将近$2B美金的资产损失。

Dr.DODO今天通过深度分析PolyNetwork,Multichain及BNB桥事件,从合约层面展示跨链桥机制设计弱点。

首先,让我们简要回顾跨链桥的基本概念,以及设计机制分类。

不同的公链如同孤立的无需许可的计算机,具有不同的共识机制,相互之间无法直接通讯。跨链桥的存在就是为了使信息能够不被篡改地从一个计算机传递到另一个计算机上。

跨链桥的核心是解决一个共识问题:跨链桥如何确定源链上的状态已发生改变,进而在目标链上铸造等量的资产?

不同的跨链桥对这个共识问题有不同解决方案,如采用中心化的桥,委员会,PoS机制,轻客户端等。而不同的解决方案在信息传递的安全性,成本,延迟性上有所取舍。

富达进军元宇宙:商标申请涵盖NFT、投资服务等:金色财经报道,在成功地将加密货币投资世界引入其客户群之后,富达现在正在元宇宙中探索更多可能性。据商标代理人Mike Kondoudis称,该公司刚刚提交了一系列商标申请,涵盖NFT、NFT市场、元宇宙投资服务、虚拟房地产投资,甚至加密货币交易。[2022/12/27 22:09:14]

详细分析可以参考此前文章《跨链漫谈:深度解析16个跨链方案权衡》:

接下来,我们进一步的把跨链流程进行拆解,了解跨链具体涉及到哪些步骤,这样在讨论不同攻击的时候,我们可以更好的理解出错的点在哪里。

跨链流程:

1.当源链用户发起一个状态改变,如一笔交易;此事件将由源链验证者进行验证出块。

2.此时跨链桥去监听此跨链事件,下载并对进行验证、签名。

3.接下来被验证签署后的事件被传输至目标链。

4.由目标链上的验证者进行验证出块。

5.由此,源链上发起的状态改变得以在目标链被执行。

讲述跨链桥机制分类的文章已经很多,我们在此按验证方法把跨链桥分为:

-外部性验证:PoS

-乐观性验证

-本地验证:轻客户端

FTX现任CEO:确保FTX所有资产安全将需要数周或数月时间:金色财经报道,FTX现任首席执行官John Ray预计,确保该公司所有资产的安全将需要数周或数月时间。SBF从公司获得了大量贷款。前FTX首席执行官SBF曾作为一笔贷款的发放者和接受者签字。FTX的银行状况本应是客户的一个危险信号。安永正在审查FTX是否合理地报税。Ray认同需要对加密货币进行更多的控制和监管。

此前报道,FTX现任CEO称,还在调查Alameda向SBF提供10亿美元贷款的去向。[2022/12/14 21:43:03]

按资产转移方式把跨链桥分为:

-燃烧+铸造

-锁定+铸造

-在源链/目标链部署流动性池

PolyNetwork攻击案例分析

简单来说,PolyNetwork的工作机制是作为中间链去接收发送链的区块头,相当于所有它连接的链的轻客户端。

PSR官员:英国监管机构正在加强其加密监管方式:金色财经报道,英国支付系统监管机构(PSR)官员Nick Davey在接受采访时表示,英国支付系统监管机构正在探索如何监管加密行业,首先是研究分布式账本技术。虽然我们不希望在不久的将来看到数字货币取代传统货币,但重要的是,支付领域的创新和竞争与强有力的保障措施相平衡,以确保人们在支付时受到保护。

然而,监管机构已经在监管该行业方面抢先一步。财政部将Fnality International置于其监管之下,这是一个仍在测试中的使用分布式账本技术的支付系统。这将是第一个使用中央银行货币和 24/7 全天候运行的去中心化网络的批发支付系统。该公司已有 17 家主要机构作为股东,并将与其中一些机构合作。[2022/12/8 21:30:06]

比如,当Ontology上发起一笔交易,区块头会被送到PolyNetwork上。区块头含有stateroothash,当交易与证明到达PolyNetwork,这上面的keepers就可以进行验证。若合法,PolyNetwork会自己发送一个event,目标链的relayer听到后,会转发到目标链的EthCrossChainManager合约上。

在知名品牌的NFT项目总收入排名中Nike占据第一:8月24日消息,Dune Analytics对以太坊区块链上前10个知名生活品牌的NFT项目进行了业绩分析,前三名包括Nike、Dolce Gabbana以及Tiffany。其中Nike的收入包括CloneX的销售和收购前的版税,这样更准确地反映了整体业绩。

此前报道,Nike的NFT项目二级市场交易量达12.9亿美元,为其带来1.85亿的总收入。[2022/8/24 12:45:50]

在了解PolyNetwork工作机制之后,我们来看受攻击的合约。

首先,LockProxy是控制资产的合约。其次,EthCrossChainManager(CCM)的优越性有两点:

1)只有它能调用LockProxy进行unlock或者burn资产。

2)CCM掌管着CrosschainData,合约保存着PolyNetwork的keeper公钥名单。

墨西哥比特币交易所 Tauros 与 IBEX Mercado 合作,集成闪电网络:5月6日消息,墨西哥比特币交易所 Tauros 已集成闪电网络,闪电网络功能通过与比特币基础设施公司 IBEX Mercado 合作实现,Tauros 用户将能够直接从钱包与支持闪电网络的 POS 系统进行交互,即时结算且低费用。[2022/5/6 2:55:16]

也就是说,当跨链交易的数据发到CCM之后,合约可以从这个数据中恢复出一些签名的地址。

然后它会拿这些地址和它自己存的keeper名单做对比,看看是不是有2/3的keeper在这些地址里面。如果有,就认为发送过来的数据是合法的。

黑客通过bruteforce撞出了CCM中特定的“SolidityfunctionID”,从而得以调用EthCrossChainData的合约,并把其中存的keeper名单里的公钥匙换成自己的,这样他就可以任意的给CCM发信息,自己去进行签署,从而操作lockproxy。

所以上述攻击出现的问题有两点:

1)任意的用户可以进行的远程调用合约。在这个事件之后,项目方加入了白名单机制,只有指定方可以调用这个非常特别的合约。

2)合约之间的从属关系,导致关键的合约容易被篡改。

Multichain攻击案例分析

Multichain是可实现跨链路由的桥,通过封装资产“anyToken”,Multichain可实现任意资产的任意跨链。首先,当用户把DAI放到池子里,等量的anyDAI就会被铸造出来,然后由网络中的验证人确定这一事件,在B链铸造出等量的anyDAI,然后燃烧掉A链的anyDAI。

受攻击的合约中,关注下图标记的1,2,3行:首先,从anyDAI?这个合约拿到它底层资产合约的地址,即DAI。其次,permit()?使用户通过签名来允许路由器从用户地址中提款。最后,safetransferfrom是一个真正的提款动作。

注:签名了的交易被表示为(v,r,s)

可以看到黑客恶意部署的代币地址,和无效的签名。

回顾8.1中的三行代码,黑客重新部署了anyDAI导致底下OUTPUT的底层资产解析出来是WETH的地址。在此,Multichain在这里的失误就是它应该检验代币地址是不是来自Multichain的代币。

第二个微妙的问题就是permit是erc20的一个扩展协议,但是由于比weth出来的时间晚,所以weth没有支持这个特性。那么如果去调用一个合约的一个不存在的方法,EVM会自动去调用这个合约的fallback方法;然而,fallback方法在这个情况下也没报错,所以,permit功能也被成功执行。

而第三行之所以可以执行,我们可以认定因为Multichain之前请求了WETH无限的花费上线,黑客通过滥用了这个approval把WETH从受害者的账户转出。但值得注意的是很多的协议都会使用,以帮助用户节省gas费用。

BNB桥攻击案例简述

Binance事件的黑客用RangeProof伪造Merkleproof证明某些数据存在Merkletree。

Proof理论上难伪造。

BNB桥涉及数据结构IAVL:可理解为等价于以太坊的Merklepatriciatrie,是一种custommerklizedbalancebinarysearchtree,InnerNode分为Left和Right两个字段。

在这里IAVL的RangeProof存在的重要问题就是它允许Left和Right两个字段可以同时被填充。而当Left与Right都存在的情况下会忽略Right进行RootHash计算。

击者基本上通过将信息粘贴到Right字段中的优势,而这些信息从未得到验证,也从未影响哈希计算,以使验证者相信某些Leaf是Tree的一部分。从而,成功地伪造了MerkleProof。

关于BNB桥攻击中更复杂的合约调用逻辑可以阅读:

https://mp.weixin.qq.com/s/y9jiMKrGThN8J4agFnFpJw

标签:AINCHAChainHAIHINT ChainSmart Block Chain CityPEPECHAINPikcioChain

非小号热门资讯
三分钟读懂Solana上的DeFi/NFT收益聚合器Dappio

什么是Dappio Dappio试图通过组合创新的方式打造一个Solana上最好的一站式DeFi/NFT收益聚合器。除了包含传统的代币兑换、收益挖矿、借贷、策略杠杆等Defi功能外,Dappio还支持针对NFT的一系列质押收益操作.

1900/1/1 0:00:00
金色Web3.0日报 | 欧洲AML规则可能涉及DeFi、DAO和NFT

DeFi数据 1.DeFi代币总市值:443.35亿美元 DeFi总市值数据来源:coingecko2.过去24小时去中心化交易所的交易量34.

1900/1/1 0:00:00
为什么说 SBF 提出的加密行业标准可能扼杀创新?

加密世界“狂野西部”的日子似乎快要结束了。2021年的牛市让加密货币发展到了让监管机构无法忽视的地步。他们现在争先恐后地来占领地盘,并在这个行业站稳脚跟。看来加密监管是不可避免的.

1900/1/1 0:00:00
Skip x Osmosis:将 MEV 捕获为链上收入

概括 少数MEV搜索者通过Osmosis套利获得了数百万美元,而无需按照利润的比例向网络支付费用。Skip推出了MEV-satellite(satellite.skip.money)来宣传这项活动.

1900/1/1 0:00:00
MarsBit日报 | SEC对Yuga Labs是否违规展开调查;Mango被攻击损失约1.16亿美元;谷歌现支持搜索显示以太坊钱包余额

MarsBitCryptoDaily2022年10月12日 一、今日要闻 SEC正针对YugaLabs发布部分NFT以及ApeCoin是否违规的问题展开调查美国证券交易委员会正针对YugaLabs发布的部分NFT是否更类似股票.

1900/1/1 0:00:00
MarsBit日报 | zkSync上部署Uniswap V3的提案已通过;Justin Sun增持HT并称HT是Huobi成功的核心;Uniswap Labs融资1.65亿美元

MarsBitCryptoDaily2022年10月14日 一、今日要闻 在zkSync上部署UniswapV3的提案获得通过据相关页面信息显示,在zkSync上部署UniswapV3的提案已结束.

1900/1/1 0:00:00