“黑客拿着房主证明找物业拿钥匙,证明是假的,却从物业那里拿到了真的钥匙”
事件回顾
2021年8月10日,PolyNetwork遭受了跨链攻击,被转移了6亿美金的加密资产。攻击者在多条公链上进行了攻击交易,并通过跨链管理合约和中继器组件完成了攻击。
用上面物业的例子来解释的话,黑客用假房主证明,从物业那里拿到了真的钥匙(AllianceChain上经过签名的Merkle证明)。
Espresso Sequencer测试网版本Doppio已对公众开放:8月5日消息,Espresso Sequencer测试网版本Doppio已对公众开放,本次公开发布主要包括两方面内容:将Espresso Sequencer demo版本与Polygon zkEVM的分支公开发布,用户可以向在去中心化的Espresso Sequencer上运行的Polygon zkEVM分支提交交易。;发布Doppio测试网的基准测试结果。[2023/8/5 16:20:10]
攻击解析
一、黑客在源链上初始化了一个本应是无效的攻击交易。
二、攻击交易在没有被充分检查的情况下被写入源链,之后被中继器纳入了AllianceChain的Merkletree并签字,然后发布到AllianceChain区块中。
DeFi协议Balancer宣布与WSBDApp集成:金色财经报道,自动化做市商Balancer今天宣布与区块链交易平台WSBDApp建立战略合作伙伴关系。此次合作将使 WSBDApp的去中心化交易所交易投资组合 (ETP) 在 Balancer V2 上推出,进一步扩大 DeFi 的可能性并增加对加密原生投资者和传统投资者的加密风险敞口。[2021/9/8 23:10:24]
三、黑客在目标链上用步骤二的有效Merkle证明,调用PolyNetwork的ECCM合约,将keepers改成黑客控制的公钥。
四、获得keepers权限后,黑客就可以在多条公链上任意解锁资产了。
这里值得注意的是,PolyNetwork在有些链上的中继器没有通过攻击交易,所以即使智能合约相似,某些目标链上资产并未受影响。
Balancer完成2425万美元融资:金色财经报道,Balancer完成了2425万美元的融资,由Blockchain Capital、Fintech Collective、LongHash Ventures、Fenbushi Capital、Continent Capital和DeFi协议Synthetix的创始人Kain Warwick领投。这些资金将用于加强Balancer作为DeFi市场的核心基础设施提供商的地位。[2021/5/28 22:51:25]
细节分析
一、黑客于北京时间2021年8月10日17:32:32在源链发起了一笔攻击交易。
CertiK基金会宣布Kylin Network护盾池已开放:3月3日消息,CertiK基金会发推称,Kylin Network保护池已开放,CTK持有者和Kylin Network社区成员可以购买护盾(Shield),以获得额外的数字资产保护。[2021/3/3 18:11:23]
https://explorer.ont.io/tx/F771BA610625D5A37B67D30BF2F8829703540C86AD76542802567CAAFFFF280C#
我们对交易进行了解码,得到了以下参数映射。
声音 | 分析师Larry Cermak:“币安停止对美国用户提供服务”证明了监管机构正打击非美国交易所:The Block分析师Larry Cermak 6月14日发推称:在过去的6个月里,币安网站估计有近1.85亿的访客,其中至少有3000万来自美国。这(币安停止对美国用户提供服务)是一个令人震惊的声明,也证明了监管机构正在打击非美国交易所。此外,现在请记住这条消息是在Bittrex和Poloniex开始屏蔽美国客户访问数十种不同的山寨币之后不久发布的。所有的这些都是有关联的,对于美国客户来说,交易带有不确定注册状态的山寨币将变得困难得多。[2019/6/14]
二、此攻击交易调用了一个method"66313231333138303933",其对应的签名等于0x41973cd9。这笔交易应该是无效交易,可是却被写入源链并被中继器纳入了AllianceChain的Merkletree并签字,然后发布到AllianceChain区块中。Merkletree是用来证明交易是否真实存在的。其产生的跨链交易如下:
https://explorer.poly.network/tx/1a72a0cf65e4c08bb8aab2c20da0085d7aee3dc69369651e2e08eb798497cc80
三、跨链交易在目标链上调用了PolyNetwork合约的EthCrossChainManager.verifyHeaderAndExecuteTx(),第一个参数包含了Merkle证明,解析如下:
四、这个函数解析了Merkle证明,发现证明是有效的,此攻击交易确实存在于已被签名的Merkletree中。之后调用了EthCrossChainManager._executeCrossChainTx()函数去执行此交易,即调用toContract指向合约(0xcf2afe102057ba5c16f899271045a0a37fcb10f2)中的method(0x6631313231333138303933),传入参数args(010000000000000014a87fb85a93ca072cd4e5f0d4f178bc831df8a00b)。而这个method指向putCurEpochConPubKeyBytes(bytes),因为其函数签名与步骤二中提到的method签名相同(均为0x41973cd9,此处为哈希碰撞),所以被顺利执行,将keepers的公钥改成了黑客的公钥。以太坊上的交易如下:
https://etherscan.io/tx/0xb1f70464bd95b774c6ce60fc706eb5f9e35cb5f06e6cfe7c17dcda46ffd59581
五、黑客改变公钥后,即可以随意解锁资产。
事件总结
此次攻击是由一连串交易构成的,其攻击根源分析如下:
一、攻击交易在没有充分检查的情况下被写入源链。
二、中继器会接收任意含有"makeFromOntProof"事件的交易。
三、中继器将步骤一中的交易发布到了AllianceChain上。
四、在步骤二中,此攻击交易被纳入到AllianceChain的Merkletree上,产生了有效的Merkle证明。
五、原链上的ECCM合约通过步骤二产生的Merkle证明,验证了该交易在源链上“确实存在”,原始数据并未被破坏、未被修改。不过需要强调的是,在构建将被发送到目标链的Merkle证明之前,应该对交易进行全面验证。正如设计文档中所示。
“ThemanagementcontractfetchestheblockheadersfromchainA,verifieswhetherornotthecrosschainparametersandtheproofarevalid,andthentransmitsthenecessaryinformationtochainBintheformofanevent;”
"管理合约从A链获取区块头,验证跨链参数和证明是否有效,然后将必要的信息以事件的形式传送给B链;"
因此,目标链应使用Merkle证明来验证所收到的信息是未被破坏和未被改变的,而交易信息应在发送至目标链之前进行全面验证。
附:Merkletree定义如下:哈希树可以用来验证计算机中和计算机之间存储、处理和传输的任何种类的数据。它们可以帮助确保从点对点网络中的其他对等体收到的数据块是未被破坏和未被改变的,甚至可以检查其他节点是否撒谎和发送假块。
标签:NCEAINMERCERHeco YearnFinanceChain Relay Networkshibmerican币最新价格Influencers of the Metaverse
Cointelegraph中文联合KAKANFTWORLD举办的《NFT浪潮下最具魅力的独立女性》于7月30日投票圆满结束.
1900/1/1 0:00:00跨链NeonEVM解决方案为以太坊dApp开发者提供了一个工具包,从而能够在Solana区块链低成本和高速运行应用 开曼群岛,乔治城—2021年7月20日—NeonLabs.
1900/1/1 0:00:00最近,币安智能链迎来了一场可拓展性上的压力测试。浏览器数据显示,在7月29日当天,币安智能链上总共发生1300多万笔交易,超过以太坊网络的10倍,创下历史新高.
1900/1/1 0:00:00链集市·让区块链落地更简单 《区块链行业观察》专栏·第40篇作者丨SaniAbdul-Jabbar图片丨来源于网络编者注:原报告来自SaniAbdul-Jabbar福布斯委员会成员.
1900/1/1 0:00:006月27日18:00,安迪·沃霍尔的《三幅自画像》NFT作品在BinanceNFT以280万美元的价格成交,这也是安迪·沃霍尔作品的全球首次NFT拍卖.
1900/1/1 0:00:00撰文:诗文仔细观察你周边的环境、你使用的物品、你的穿着以及交流时使用的文字,其实都是不同的符号在流动.
1900/1/1 0:00:00