随着区块链和链上项目的增长,对多链项目的需求正在变多,跨链桥业务也相应的在增加。哪里有生意,哪里就会有安全问题。跨链桥在为用户提供便利的同时,也为黑客提供了便利,Poly Network被攻击后,跨链桥的安全问题也随之出现。
区块链桥,也称为跨链桥,其连接两个区块链,允许用户从一个链向另一个链发送加密货币。
跨链桥通过两个独立平台之间的代币转账、智能合约和数据交换等其他反馈和指令,实现了资金的跨链操作。
一种常见的跨链桥的操作如下:
用户将资产A发送到原链上的一个存储地址,并支付过桥费;
资产A被智能合约中随机选择的验证者或受信任的托管人锁定;
在目标链上发布相同数量的资产A1,并将资产A1发送到目标链上的用户地址。
ChainSwap攻击事件:
2021年7月,跨链资产桥项目ChainSwap遭到攻击。跨链桥上的二十多个项目受到攻击,损失了近800万美元的资产,导致十多个项目暴跌99%。
这种攻击主要是由于该协议没有严格检查签名的有效性,攻击者可以使用自己生成的签名对交易进行签名。
跨链桥Stargate与Metis集成,首次在LayerZero生态系统外扩展区块链:1月19日消息,跨链桥 Stargate 宣布已与以太坊 Layer 扩展解决方案 Metis 完成集成,这是其首次在 LayerZero 生态系统之外扩展区块链,Metis 用户能在 LayerZero 支持的多个区块链上探索 DeFi 应用,并为探索资金管理和收益策略的项目提供更大灵活性。数据显示,Metis 链上资产规模已经达到约 9500 万美元,仅次于 Arbitrum、Optimism 和 Loopring,是当前第四大 Layer 2 网络。[2023/1/20 11:21:53]
Factory 合约
上图中接收方法的主要功能是将用户跨链后的资金转移到目标链的用户地址,需要验证发送链的签名。当前待验证签名个数为1。
由于接收方法的逻辑和名为ecrecover 和_decreaseAuthQuota方法并不严格检查签名,攻击者使用了自己产生的签名,但后续合约逻辑没有严格判断映射值签名和其他计算。使攻击者成功地执行接收方法,为自己签名转账资金。
2021年8月,跨链互操作协议Poly Network突然遭到黑客攻击。使用该协议的O3 Swap遭受了严重的损失。以太坊、币安智能链、Polygon三大网络上的资产几乎被洗劫一空。1小时内,分别有2.5亿、2.7亿、8500万美元的加密资产被盗,总损失高达6.1亿美元。
NFT市场Quix推出OP Bridgooors NFT,Optimism NFT跨链桥用户可进行申领:11月4日消息,Optimism上NFT市场Quix宣布推出OP Bridgooors NFT,总供应量为10万枚,任何使用Optimism NFT跨链桥的用户都可以进行申领,申领将于2023年1月1日结束。此外,持有OP Bridgooors NFT的钱包在Quix上购买NFT将可以获得2%的OP奖励。[2022/11/4 12:17:19]
这种攻击主要是由于中继链验证者的公钥被替换造成的。即由攻击者代替跨链的中间验证者,由攻击者自己控制。
协议内部关系:
中继链验证者的公钥存在于EthCrossChainData合约中;
EthCrossChainData合约所有者是EthCrossChainManager合约;
EthCrossChainData合约的putCurEpochConPubKeyBytes方法可以修改中继链验证者角色。
EthCrossChainManager合约:
Celer推出的跨链桥cBridge宣布支持Nervos:7月12日消息,由区块链互操作性协议Celer Network推出的跨链桥cBridge宣布支持Nervos。用户现可通过cBridge在以太坊和Nervos EVM兼容层Godwoken之间进行对USDT、USDC、ETH、WBTC和DAI高速安全低成本的跨链转账。
此次桥接遵循此前Celer提出的「开放的原生资产跨链桥标准」,针对同一种原生资产跨链启用多方铸币者(multi-minter)资产合约,以使各协议和链可同时使用多个跨链解决方案,拒绝供应商锁定。此外,Celer表示未来将基于Celer消息跨链(Celer IM)框架支持对Nervos的通用消息跨链。[2022/7/12 2:07:11]
在上面的图中,_executeCrossChainTx方法没有对传入的参数施加严格的限制,这导致攻击者传入toContract,方法参数被攻击者控制。由于协议的内部关系,攻击者在哈希冲突后传入与putCurEpochConPubKeyBytes方法相同的方法签名。成功调用EthCrossChainData合约的putCurEpochConPubKeyBytes方法,直接修改中继链验证者的公钥,使其变得可控,然后利用验证者签署恶意的进行资金转移,获取了大量资金。
2022年1月,Multichain正式声明协议的跨链桥存在安全风险,部分代币存在被黑客攻击的风险,并敦促用户尽快取消授权。
ES Bridge跨链桥宣布新增USDC代币跨链:3月30日消息,ES Bridge于近期新增USDC代币跨链,截止目前已支持USDT、USDC在HECO-HSC、ETH-HSC、BSC-HSC跨链。据数据显示,目前USDC已经超越ETH成为使用最多的跨链代币, USDC稳定币现在是以太坊桥梁中最常用的加密货币。
Equal Sign Bridge是一种跨链桥接服务,旨在提高不同区块链之间的平等互操性。它让任何人都能将其加密资产转换成Hoo Smart Chain资产或从Hoo Smart Chain资产转换回加密资产。这样一来就可以将 BTC、ETH、USDT等数字资产引入Hoo Smart Chain生态系统,同时通过使用Hoo Smart Chain门户网站。[2022/3/30 14:26:56]
事件的核心原因是:协议调用的底层代币合约没有实现permit方法,但包含一个fallback函数,因此调用permit方法的合约正常运行。
左边是AnyswapV4Router合约,右边是WETH9合约。
在上图中的AnySwapOutUnderlyingWithPermit方法中,前三个参数都是由调用者传入的,也就是说代币和其他参数都是攻击者控制的。当参数可控时,攻击者部署攻击合约来转移受影响的代币。合约地址被设置为基础代币参数。
DeFi借贷平台Aave宣布即将推出Aave治理跨链桥工具:8月27日消息,DeFi借贷平台Aave宣布即将推出Aave治理跨链桥工具,用于在以太坊上实现真正跨链治理。Aave已发布跨链代码库,允许任何人构建自己的跨链桥梁,以跨网络执行治理决策。该工具的关键组件包括:主治理合约,允许用户创建提案并允许AAVE持有者对这些提案进行投票;执行人合约,若提案获得通过,将通过时间锁定实施和执行AAVE持有者批准的任何提案,并定义每个特定提案的实施参数。Aave还开源三个存储库,包括Aave UI主前端存储库、UI缓存服务器以及Aave UI工具包。[2021/8/27 22:40:40]
核心问题是由于WETH9没有permit方法,但是会调用WETH9的fallback方法进行充值操作,所以其不会有错误的调用(交易不会回滚),也就是说,当用户授权到协议时,攻击者会很快转移用户资金。
2022年1月,Qubit Finance跨链桥以太坊-币安被黑客攻击,损失超过8000万美元。
核心问题:当deposit方法中的资金地址为address(0)时,不会出现safeTransferFrom错误,导致deposit功能正常执行。
QBridge合约
上图中,存款是一种正常的存款方式。当在此方法中调用IQBridgeHandler(handler).deposit时,当用户传入的resourceID映射tokenAddress地址为0地址时,后续的tokenAddress.safeTransferFrom(depositer, address(this), amount);转账将正常执行,导致方法和事件的正常运行,调用者可以成功进行存款。
这里更重要的是,官方tokenAddress的ETH 0地址是官方所做的(官方已经声明存款功能是一个被忽略的废弃功能)。
在2022年2月,Meter.io跨链协议并未阻止封装的ERC20代币与原生gas代币的直接交互,导致损失约430万美元。
该事件的核心问题是:存款方法在进行存款时不验证WBNB的存款情况,导致攻击者绕过判断条件,不存款也可以正常获取资金。
Bridge合约
在上图中,deposit和depositETH方法都是存款方法,但是当用deposit方法存款时,并没有验证该存款是否为原生代币。当攻击者进行存款时,传入WBNB地址。该方法不验证WBNB存款,之后调用deposthhandler .deposit方法成功绕过判断条件。最后,攻击者利用该漏洞成功获取大量资金。
2022年2月,以太坊和Solana两大区块链的重要桥(Wormhole)被黑客攻击,损失超过3.2亿美元。
该漏洞的核心原因是:verify_signatures调用的load_instruction_at方法没有验证指令的有效性,攻击者可以通过伪造验证签名来获取资金。
verify_signature.rs接口合约
上图中的verify_signatures方法是跨链验证过程中调用的签名方法。由于verify_signatures方法调用load_instruction_at方法,所以在协议更新后,load_instruction_at方法是一个废弃的方法。这种方法对传入的指令没有严格的检查,这就导致攻击者在传入一个可控值后,利用这种签名方式对自己的跨链请求进行签名,获得大量资金。
2022年3月,以太坊上的分布式跨链协议Li.Finance遭到攻击。攻击者进行了37次调用传入,在多个钱包中获得了约60万美元的资产(204 ETH)。
这种攻击的核心问题是对传入的外部数据没有严格的限制,导致攻击者传入自己的可控调用逻辑。
CBridgeFacet合约
上图中的swapAndStartBridgeTokensViaCBridge方法中,传入的_swapData参数没有严格限制。在同一个LibSwap.swap调用中,该值不受严格限制。因此,在swap方法中,_swapData可以成功地调用call方法来执行恶意操作。攻击者利用此漏洞进行多次调用以获取资金。
在2022年3月,Axie Infinity侧链Ronin验证者节点和Axie DAO验证者节点被破坏,导致在两笔交易中从Ronin桥接了173600 ETH和2550万美元的USDC。
攻击原因:
Sky Mavis 的 Ronin 链目前由 9 个验证者组成。为了识别存款事件或取款事件,需要9个验证者中的5个签名。攻击者控制了四个Sky Mavis的Ronin验证者和一个由Axie DAO运行的第三方验证者。(2021年11月至12月,Axie DAO 允许 Sky Mavis 代表其签署各种交易,在事件停止后没有撤销白名单访问权限,攻击者获得了对 Sky Mavis 系统的访问权限,并使用来自 Axie DAO 验证器的 gasless RPC 来获取签名)。
从以上跨链桥攻击事件可以发现,从去年到今年已经发生了几次跨链桥攻击。跨链桥攻击的数量明显在增加,被盗资金也相当多。黑客已经盯上了跨链桥这块肥肉。从总结来看,攻击主要发生在跨链前和签名处,一般都是合约漏洞,也有由于官方疏忽造成的盗窃事件。针对越来越多的跨链项目和项目合约安全,建议如下:
在项目上线前完成合约安全审计
合约调用接口需要严格检查其适配性
版本更新时,需要重新评估相关接口和签名的安全性
需要对跨链签名者进行严格的审查,以确保签名不受恶意人员的控制
Source:https://medium.com/coinmonks/cross-chain-bridge-vulnerability-summary-f16b7747f364
2020年3月,我做了一个决策,把时间和精力全面投入到DeFi里。在大约一年后,就是今年3月份,看到了DeFi币价的高光时刻.
1900/1/1 0:00:00印度国家软件和服务公司协会(Nasscom)发布了一份报告,呼吁应该加强对于加密货币领域的监管。根据该协会的说法,法律透明度的缺失和加密货币银行禁令阻碍了该领域的投资进程,也损害了加密货币交易所的利益.
1900/1/1 0:00:00前言 MEV 是 Miner Extractable Value 的缩写,即矿工可提取价值。2019 年,智能合约研究员菲尔·戴安(Phil Daian)和他的同事们一起撰写了 Flash Boys ?2.0 论文,并创造了"矿工可提.
1900/1/1 0:00:002013年牛市行情,可以发现本轮牛市BTC走二顶形态,年中有一波大幅度的调整,调整幅度高达80%,很多人都以为牛市结束了,后面BTC超跌反弹再回落探底,后面震荡回升完成反转,继续展开新一轮主升浪.
1900/1/1 0:00:00注:原文作者为Owen Fernau?,以下问全文编译。对于那些努力保持与闪电般的DeFi空间同步的人来说,事情并没有变得简单。就在你认为你已经掌握了最新的代币或协议时,新的东西出现了.
1900/1/1 0:00:00写在前面: 目前DeFi领域解决流动性问题的主要方式是通过使用AAVE、Compound之类的借贷(Lending)协议,通常这种借贷行为的期限和利率都是不确定的,这种方式简单有效,但是对于大机构、大资金却是致命的.
1900/1/1 0:00:00