Skip to main content

Ronin跨链桥被盗逾6亿美元的启示

前些年一度流行过一个词叫做“灰犀牛”。与另一个形容意外之事的词“黑天鹅”不同,灰犀牛则是指人人都能看得到的危险,但是没有人知道危险什么时候会突然向自己迎面冲来,顶自己一个人仰马翻,于是人人都装作对此视而不见,直至危机发生的那一天。

早在今年也就是2022年1月8号,以太坊创始人Vitalik表示“对跨链应用持悲观态度”。他说了这么一段话:“51% 攻击即使是单独的一条链也是困难和代价高昂的。然而,跨链桥接器和应用程序的使用越多,问题就越严重。没有人会对以太坊进行 51% 攻击只是为了窃取 100 个 Solana-WETHx。但是如果桥中有 1000 万个 ETH 或 SOL,那么进行攻击的动机就会变得更高,并且大型矿池可能会很好地协调以进行攻击。因此,跨链活动具有反网络效应:虽然发生的次数不多,但相当安全,但发生的次数越多,风险就越大。”

去年火爆全网的链游代表作Axie Infinity(精灵无限)为了解决使用以太坊主链费用高昂的问题,自行开发了侧链Ronin。

所谓侧链(sidechain),与二层(layer-2)不同。侧链其实就是一条独立的链,自己保证自己的安全性。而二层的资产安全性则由一层主链来保证。

但是最大的安全隐患不是在于侧链本身,而是在于连接侧链与主链之间的“跨链桥”(bridge)。跨链桥,顾名思义,就是为了让用户把资产从主链转移到侧链,或者从侧链转移到主链。

比如,用户在以太坊网络上有10个ETH,那么他可以通过Ronin跨链桥把10个ETH跨链到Ronin侧链。但是请注意,真正的——我说真正的——ETH真的被转移到了侧链上去了吗?其实并没有。它们仍然滞留在以太坊网络上,被锁定在了Ronin跨链桥的以太坊一端。

大概示意一下就是这样:

跨链前:10 ETH ---以太坊网络--- ( )===跨链桥===( ) ---侧链---

跨链后:( ) ---以太坊网络--- (10 ETH)===跨链桥===(10 xETH) ---侧链---

所谓的跨链,其实并不是把真正的资产“跨”到桥的对面去,而是在桥的一端锁定真实资产,而在桥的另一端凭空生成一个“白条”,面额和被锁定的真实资产相同。

通常,这个“白条”会在真实资产的名字前面加一个前缀,以示区分,就像上面示意图中叫做xETH那样。当然,也有很多侧链和二层不喜欢加前缀,于是把“白条“仍然叫做ETH,这样的目的可能在于通过混淆而让用户感觉好像ETH真的被跨过去了似的。

但是真正的ETH并没有被跨过去。持有10个”白条“xETH只代表一份债权,意思是跨链桥欠你10个ETH。你随时可以拿10个xETH找桥换回以太坊上的10个ETH。

如果跨链桥被攻击、被盗窃了呢?那么它就有可能偿还不了你那10个ETH了。你手上的“白条”xETH就一夜归零了。

要命的是,一个跨链应用越是火爆,使用的人越多,跨链的资金越大,跨链桥中锁定的真实资产也就越多,对黑客也就有越强烈的吸引力!

一个无人问津的跨链桥,里面只锁定了10个ETH,没有几个黑客有兴趣费劲儿去搞。但是像Axie Infinity和Roin这样火爆的应用就完全不同了,跨链桥里锁定着数亿美元的资产,尤其是硬通货ETH和USDC。

这简直就是把黄金放在露天广场外面罩个玻璃罩子整天展出,生怕没有江洋大盗知道此地有黄金万两。

更要命的是,还只从9个轮值保安中派了5个保安巡逻监守。

就在隔夜3月29号,Axie Infinity侧链Ronin表示验证者节点遭入侵,17.36万枚ETH和2550万枚USDC被盗,总金额逾6亿美元。

目前,Ronin上的ETH和USDC存款已从桥接合约中耗尽。至于他们说AXS和SLP还是安全的,那没啥意义,都是他们自家发的币,黑客看不上眼。黑客要的,是ETH、USDC这样的硬通货。

Ronin有9个验证节点,5个签名就可以从桥里提款。Axie Infinity和Ronin的开发团队Sky Mavis自己运行了不少节点,结果这次它自己的4个节点被黑客攻破了。另外就是Axie DAO运行了一个第三方节点也被攻破。4 + 1 = 5。黑客凑齐了取款密码,卷走了所有的钱。

你说是因为Sky Mavis没有把节点更分散、更去中心化吗?交给别人运行,也未必见得就更安全。第三方的安全意识和保障能力也未必多强。

这在根子上还是在于超级节点这类偏中心化架构的先天缺陷。数量太少,通常也就是几个、十几个;安全要求高,没有算力保护,只能靠传统的密钥保护措施;一旦失陷,黑客权力很大,几乎为所欲为。

对比一下比特币的PoW机制。靠算力保护网络,而不是少数几个节点机器的密钥、签名以及它们的安全性。即使黑客攻破了一两个矿工节点,甚至是控制了超过半数的算力,他也只能审查和阻止特定交易而已,却不能窃取别人的比特币,也不能肆意超发比特币。攻击成本高,攻击收益小。

侧链跨链桥恰恰相反,攻击成本低,攻击收益大。

你说黑客怎么选?

跨链桥的安全,就是一头黑犀牛。你永远不知道它什么时候暴雷,但是你知道,只要你一直在,它早晚要爆给你看。

就像墨菲定律说的,如果坏事有可能发生,那么它就一定会发生。

人生就像一盒彩色巧克力,你永远不知道下一颗是什么颜色。但可以肯定的是,早晚有一天,巧克力会被吃光。

(公众号:刘教链Pro。知识星球:公众号回复“星球”) (免责声明:本文内容均不构成任何投资建议。加密货币为极高风险品种,有随时归零的风险,请谨慎参与,自我负责。)