IDG:首发:十天内三起“炸桥案” V神指出跨链桥安全风险或将摧毁多链未来

本文由Certik中文社区原创,授权金色财经首发,转载请注明出处

随着区块链技术的发展及各类新增长的出现,加密货币生态系统随之产生了更多的安全风险及复杂性。

在2021年的基础上,2022年的攻击赛道又出现了一位“强力选手”。

跨链桥作为新的攻击载体,安全性方面的发展尚未成熟。因此,跨链桥也是所有项目以及开发人员应该提高警惕的领域之一。

2022年的春节假期尚未结束时,跨链桥即发生了两起重大攻击,算上春节前的另一起同类事件,短短10天内的三起攻击事件使得黑客在跨链桥方面取得了“傲人”成绩。

在对这几起事件进行了解之前,我们需要先知道什么是跨链桥(cross-chain bridge)以及它的原理。

Gate.io首发项目FRA 开盘18小时涨幅达800%:据Gate.io芝麻开门行情显示,截至今日14:30,首发项目FRA 开盘18小时最高涨幅800%,当前涨幅299.66%,开盘18小时最高报价0.27美元,当前报价0.1199美元,开盘18小时现货交易量达1074.19万美元。近期行情波动较大,请注意控制风险。[2021/4/6 19:49:43]

用一个相对简单的描述:bridge可将资产从一个区块链转移到另一个区块链。

跨链交易的步骤如下:

1.用户将代币“存入”一条链上的“bridge合约”,并生成一个证明,指定所需的跨链信息(例如,要提取的代币数量及接收者地址)。

2.bridge合约验证该证明,随后在目标链上用户可以从bridge合约中 "提取 "代币。

Gate.io首发上线A5T交易 开盘14H内涨幅达330.72%:据官方公告,Gate.io 已于昨日(3月1日)20:00上线Alpha5(A5T)交易,截止今日9:35,开盘14H内最高涨幅达330.72%,现报价2.52美元,最高报价3.23美元,约为Startup 认购价0.75美元的4.3倍。近期行情波动较大,请注意控制风险。[2021/3/2 18:06:02]

在最近的三起事件中,攻击者注入性数据,绕过验证,将目标链上的相应代币提取到指定地址。

Bridges上的常见攻击媒介

攻击者伪造数据绕过bridge合约的数据真实性检查,在没有提供任何加密货币的情况下使bridge合约产生了攻击者已存款的虚假时间证明。

BKEX Global将于9月21日17:00首发上线TKNT:据BKEX Global公告,BKEX Global将于2020年9月21日17:00(UTC+8)首发上线TKNT,开放交易对:TKNT/USDT。

TKNT是一个新概念项目,将Bet-Mining和Defi稍加混合,从而可以通过平台游戏进行固定挖矿,构建可以在基于ERC20的所有DApp中实现游戏参与和应用内支付的系统,并结合各种金融服务。[2020/9/20]

其根本原因在于ETH和ERC-20的存款共享相同的事件证明。这允许攻击者调用该函数利用不存在的ERC20存款事实生成虚假的ETH存款事件证明,并以此在另一条链上提取ETH。

在这种情况下合约中的漏洞被触发——当代币地址是EOA(如address(0))时,“safeTransferFrom”函数不会回退。因此,攻击者在没有向合约发送任何代币的情况下获取了证明。

币信、KKEX全球首发BQT:BQT今日上线币信钱包及币信战略合作交易所KKEX,币信已开通BQT零手续费场外交易担保支付等功能,KKEX也将开放零手续费BQT/BTC交易对。据悉,币信钱包与KKEX交易所已打通转账渠道,互转零手续费秒到账。

上线前就备受各方瞩目的BQT是BQI生态的社区权益证明(Community Proof Of Stake),BQI生态致力于区块链以及虚拟货币行情大数据,以开放的形式给区块链行业提供标准的数据输出,并通过BQT传递社区价值,连接生态社区的所有用户及成员。[2018/5/30]

该漏洞与Qubit bridge漏洞很相似——攻击者避过bridge合约向bridge提供不存在的代币证明从而跳过了验证过程,从而可以在另一个链上提取代币。

Bridge合约提供了两个方法:deposit和 depositETH。然而,这两个方法产生了相同的存款事件证明,并且deposit函数并没有阻止WETH/WBNB的存款交易,也没有销毁或锁定WETH/WBNB。

黑客通过使用deposit,在没有任何真实存款的情况下使bridge合约产生了虚假的WETH/WBNB存款事件证明。

Solana虫洞的漏洞事件中,攻击者通过向指令注入一个恶意的“sysvar account”来绕过“verify signature”,并伪造了一个铸造Wormhole-wrapped Ether的消息。

这个漏洞的根本原因是在验证签名过程(“verify_signatures”)中,程序使用了一个在Solana更新至1.8.0时即被废弃的“load_current_index”函数。该函数不会验证输入的“sysvar account”是否真的是“system sysvar”,从而攻击者可以趁机伪造这个关键帐户。

此后,攻击者利用此伪造的账户生成了虚假的铸币信息,然后根据得到的铸币在目标链上提取了相应真实代币。

Qubit以及Meter.io的bridge代码未能处理临界情况,也就是说,合约的ERC20存款功能可以用来生成虚假的ETH/BNB存款事件证明,而后者成为了目标链上提取真实ETH/BNB的凭证。

Wormhole bridge则是其合约未验证调用者注入的“sysvar account”,从而产生了虚假的铸币信息。

总而言之,上述三起事件都是由于验证过程的缺陷而造成的。

在上述攻击中,我们可以吸取到一些关键教训:

1.对于不同的功能,比如ERC20的存款和ETH/BNB的存款,合约应产生不同的事件证明。

2.始终记得验证用户注入的输入。

3.密切关注近期漏洞事件,并检查其他项目是否存在类似情况。

4.需要对每个bridge的核心合约进行相应审计。

除此之外,当该漏洞发生后,我们应该:

1.停止中继消息层并暂停代币传输,bridge合约也应暂停所有充提币功能。

2.立即通知社区、交易所和平台合作伙伴,监控资金流向。

3.建立与权威安全专家们的沟通渠道,进行有效的讨论和信息共享。

4.识别、验证和修复漏洞。及时测试以确保现有的漏洞得到解决以及未产生新的漏洞,同时对bridge合约进行升级。

5.评估损失,并与社区就被利用的资产数量、可追回的资产以及补偿计划进行坦诚地沟通

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

UNI300:上市数字人民币技术服务商发展报告

随着北京冬奥会的开幕,数字人民币也进入了新的发展阶段,试点场景进一步拓展,试点规模进一步扩大。作为数字经济时代的金融基础设施,数字人民币的推进为产业链上的商业银行、支付机构、场景方以及技术服务商.

[0:31ms0-0:940ms