为什么黑客如此“钟爱”跨链桥

1. 背景介绍

随着区块链及链上程序的增长,多链资金转换需求迫切,跨链桥业务随之增加,有业务的地方就会有安全问题,跨链桥为用户提供便利的同时,可能也为黑客提供了另一扇大门,Poly Network攻击事件发生后,跨链桥安全问题也随之显露出来。

2. 什么是跨链桥?

区块链桥,也称为跨链桥,连接两条区块链,允许用户将加密货币从一条链发送到另一条链。

跨链桥通过在两个独立平台之间启用代币转移、智能合约和数据交换以及其他反馈和指令来进行资金跨链操作。

普通跨链桥运行如下:

  • 用户将资产 A 发送到原始链上的一个存款地址并支付过桥费;
  • 资产 A 被随机选择的智能合约中的验证者锁定或受信任的托管人;
  • 在目标链上发行等量的资产A1,并将资产 A1 被发送到目标链上的用户地址;

貌似并不复杂的跨链资金转移操作,但在多个跨链桥项目中,不同步骤均发生过安全漏洞。

3. 跨链桥发生过哪些漏洞

4. 跨链桥常见漏洞分析

(1) ChainSwap 攻击事件

2021年7月,跨链资产桥梁项目ChainSwap遭到攻击,该跨链桥上的二十多个项目遭到攻击,损失了近 800 万美元资产,并使十多个项目暴跌 99%。

该攻击事件主要由于协议未对signatures合法性进行严格检查,导致攻击者使用自己生成的签名可进行签名交易。

(2) Factory合约

上图receive方法主要功能是将用户跨链之后的资金转移给目标链用户地址,需要验证发送链的签名。当前需要验证的签名个数为1。

由于receive方法逻辑及调用的ecrecover,_decreaseAuthQuota方法未对调用的signatures做严格检查,攻击者传入了自己生成的签名,后续合约逻辑对signatures的映射值及其他计算时,也并未有严格判断,导致攻击者成功执行receive方法为自己转移资金签名。

(3) Poly Network 攻击事件

2021年8月,跨链互操作协议 Poly Network 突遭黑客攻击,使用该协议的 O3 Swap 损失惨重,在以太坊、币安智能链、Polygon 三条网络上的资产几乎被洗劫一空,黑客在不到1小时时间内,分别盗走了 2.5 亿、2.7 亿、8500 万美元的加密资产,损失总额高达 6.1 亿美元。

该攻击事件主要由于中继链验证人公钥被替换。也就是跨链的中间验证人被攻击者替换为自己可控。

协议内部关系:

  • 中继链验证人的公钥存在 EthCrossChainData 合约;
  • EthCrossChainData 合约存在putCurEpochConPubKeyBytes 方法可以直接修改中继链验证人公钥;
  • EthCrossChainData 合约 owner 为 EthCrossChainManager 合约;
  • EthCrossChainData 合约的 putCurEpochConPubKeyBytes 方法可修改中继链验证人角色。

EthCrossChainManager合约

上图中,_executeCrossChainTx 方法未对传入参数做严格限制,导致攻击者传入toContract,method参数均由攻击者可控,由于协议内部关系,攻击者传入经过hash碰撞与putCurEpochConPubKeyBytes方法相同方法签名,成功调用EthCrossChainData 合约的 putCurEpochConPubKeyBytes 方法直接修改中继链验证人公钥为自己可控,之后利用该验证人签名恶意的资金转移,获取大量资金。

(4) Multichain(AnySwap) 攻击事件

2022年1月,Multichain官方声明协议跨链桥存在安全风险,部分代币存在被黑的风险,督促用户尽快取消授权。

事件核心原因:协议调用的底层代币合约没有实现 permit 方法,但包含回退功能,所以调用 permit 方法合约正常运行。

左AnyswapV4Router合约,右WETH9合约

上图中anySwapOutUnderlyingWithPermit方法中,前三个参数均由调用者传入,也就是from,token等参数均由攻击者可控,当参数可控后,攻击者部署攻击合约,将受影响的代币合约地址设置为底层代币参数。核心问题是,由于WETH9不存在permit 方法,但会调用WETH9的fallback方法进行deposit操作,故调用不会发生错误(交易不会回滚),所以当用户将资金授权给协议后,攻击者会迅速将用户资金转移。

(5) Qubit Bridge 攻击事件

2022 年 1 月,Qubit Finance 跨链桥Ethereum-Binance 被黑客入侵,损失超过 8000 万美元。

核心问题:deposit方法中资金地址为address(0)时而safeTransferFrom未发生错误,导致存款功能正常执行。

QBridge合约

上图中,deposit为正常存款方法,调用该方法中的IQBridgeHandler(handler).deposit时,当用户传入的resourceID映射tokenAddress地址为0地址时,后续的tokenAddress.safeTransferFrom(depositer, address(this), amount);转账会正常执行,导致方法及事件运行正常,调用者可以成功存款。

这里比较重要的是官方 tokenAddress的ETH为零地址是官方所为(官方已声明deposit功能为忽略的遗弃功能)。

(6) Meter Bridge 攻击事件

2022 年 2 月 ,Meter.io 跨链协议遭到攻击,合约并没有阻止封装的 ERC20 代币与原生 gas 代币的直接交互,损失约 430 万美元。

事件核心问题:deposit方法进行存款时未验证WBNB存款情况,导致攻击者绕过判断条件不进行任何存款而正常获取资金。

Bridge合约

上图中,deposit和depositETH方法均为存款方法,而deposit方法存款时,未验证存款为原生代币的情况。攻击者利用deposit存款时,传入WBNB地址,由于该方法未验证WBNB存款的情况,未进行资金存储转移,之后调用depositHandler.deposit方法成功绕过判断条件,最后攻击者利用该缺陷,成功获取大量资金。

(7) Wormhole 攻击事件

2022 年 2 月 ,Ethereum和Solana两大区块链的重要桥接“虫洞”(Wormhole)遭黑客攻击,损失超过3.2亿美元。

漏洞核心原因:verify_signatures调用的load_instruction_at方法中未验证instruction合法性,导致攻击者可伪造,从而利用验证签名获取资金。

verify_signature.rs 接口合约

上图中verify_signatures方法是跨链验证时所调用的签名方法,由于verify_signatures方法调用了load_instruction_at方法,load_instruction_at方法为协议更新后的废弃方法,该方法中未对传入的instruction做严格检查,导致攻击者传入了自己可控的值,攻击者利用该签名方法对自己的跨链请求进行签名,获取大量资金。

(8) Li Finance 攻击事件

2022 年3 月,以太坊上分布式跨链协议Li.Finance 受到了攻击,攻击者执行了 37 次 call 注入,获取了多个钱包中约 60 万美元的资产(204 个 ETH)。

该攻击事件的核心问题是未对传入的外部数据进行严格限制,导致攻击者传入了自己可控call调用逻辑。

CBridgeFacet合约

上图swapAndStartBridgeTokensViaCBridge 方法中,对传入的_swapData参数未进行严格限制,同样的LibSwap.swap调用中,也未对该值进行严格限制,导致swap方法中,_swapData可成功调用call方法进行恶意操作,攻击者利用该缺陷,进行多次call调用获取资金。

(9) Ronin Network 攻击事件

2022 年 3 月, Axie Infinity侧链Ronin验证器节点和 Axie DAO 验证器节点遭到破坏,导致在两笔交易中从 Ronin 桥接了 173,600 个以太坊和 2550 万美元的 USDC。

攻击发生原因:

Sky Mavis 的 Ronin 链目前由 9 个验证节点组成。为了识别存款事件或取款事件,需要九个验证者签名中的五个。攻击者控制了 Sky Mavis 的四个 Ronin 验证器和一个由 Axie DAO 运行的第三方验证器。( 2021 年11月 – 12 月,Axie DAO 允许 Sky Mavis 代表其签署各种交易,该事件停止后未撤销许可名单访问权限,攻击者获得了 Sky Mavis 系统的访问权限,并使用无Gas RPC 从 Axie DAO 验证器获取签名)。

5. 总结及建议

通过上述跨链桥攻击事件可以发现,从去年两个重要的跨链桥攻击到今年目前为止已发生多个跨链桥攻击事件,跨链桥攻击明显增多,被盗资金也颇为庞大,貌似黑客已经盯上了跨链桥这块肥肉。从表格总结来看,攻击主要发生在跨链之前和签名处,普遍均为合约漏洞,也存在官方马虎大意造成的被盗事件。

对于越来越多的跨链项目及项目合约安全,可遵循以下安全建议:

  • 项目上线前对合约进行安全审计
  • 合约调用接口需要严格排查其适配性
  • 版本更新时需要对相关接口及签名安全进行重新评估
  • 需要对跨链签名者进行严格审查以保证签名不被恶意人员控制

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/304233.html<

(0)
运维的头像运维
上一篇2025-05-25 15:18
下一篇 2025-05-25 15:19

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注