日前 Sui 上最大去中心化交易所 Cetus 被骇 2.2 亿美元,其中约 6000 万美元已被跨链转移至以太坊。Amber Group 的安全研究员在推特上分享问题出自 Cetus 协议的漏洞,与 MOVE 语言引以为傲的安全性没有太大关系。此外 Mysten Labs 的产品长 Adeniyi 也表示已从验证者端软禁骇客的 1.6 亿美元。本文带你从事件始末到去中心化的辩证,一次了解。
漏洞出在 Cetus 本身的编码问题
Amber Group 的安全研究员 @neeksec 在推特上表示已找出 Cetus 出事的主因,他指出:「该漏洞的根本原因,源自于 get_amount_by_liquidity 函数中从 u256 到 u64 的型别转换。」不过随后他修正,表示真正的问题应出在「get_delta_a 函数的溢出检查失效」。
get_delta_a 函数的作用是计算在某个价格范围内增加指定数量的流动性时所需的代币 A 数量。以 Uniswap v3 的计算为例,流动性首先乘以价格范围 delta。所得乘积需要左移 64 位元。但如果流动性太大,乘积超过 192 位,则高 64 位会溢出并被截断。为了防止这种情况,checked_shlw 在执行移位之前执行溢出检查。
该案例中关键问题是 checked_shlw 函数的溢出检查有编码错误,未能阻止无效的大流动性值。攻击者精心设计了一个流动性值,导致 checked_shlw 传回一个较小的值。在随后的 div_round 运算利用向上取整数的机制,div_round 回传了 1,最终所需的代币 A 数量只有 1。
笔者补充:
换句话说,攻击者先声称要提供大量流动性,这笔流动在函数中的所得乘积超过系统设定,就像计算机只能显示前十位数,但最后乘出来的数字到十一位数一样。一般来说这种超过设定的数值会溢出并被截断,在执行移位前要先进行溢出检查。但就是在溢出检查的部分出现错误,攻击者利用该漏洞,仅需极少的代币,就能提出巨额资金。因此该问题与 suiMOVE 语言声称的物件导向安全性没有关联性。
Sui 如何冻结资金?是否代表中心化?
事发之后,Mysten Labs 产品长 Adeniyi 马上在直播中表示被盗的 2.2 亿美元中已有 1.6 亿美元被冻结。对 Cetus 来说可能算是个好消息,但也令人质疑,此举是否违反去中心化的原则?不过要先厘清的是,去中心化不是一个非黑即白的二元问题。以太坊初期也曾有约 14% 供应量被骇,因而投票通过硬分岔提案追回代币的纪录。这也是 ETC 以太坊经典的由来。
独立研究员 Haotian 指出事发当下,骇客将 USDC 部分资产跨链到以太坊。但大部分资产仍在 Sui 链上,至于是怎么冻结的,其实就是网路验证者集体装瞎。只要黑名单地址提出交易,验证者就会直接忽略。因此网路纪录上骇客仍持有这些资产,但形同软禁,无法将交易打包上链。对此 Bucket 协议的 Damien 也表示这种方式虽然较为中心化,但至少是写在规则内的。
余弦也表示骇客如果想一条路走到黑,应该还在想要怎么绕过这种冻结机制。就像是你有张提款卡,但 ATM 都拒绝为你提供服务。
比较值得关注的是 Sui 官方宣称要将冻结的资金还给流动性池,这可能是比较具争议的部分。毕竟物件导向的公链若可以直接转移物件的所有权,这会是非常大的争议。不过 Typus 协议的 Kyrie 也在留言区表示直接转移应该是不可能的,要骇客愿意归还。做为参考,Cetus 目前正与骇客协商,若骇客返还被盗资产,可以保留约六百万美元的以太币,Cetus 不会另外追究。
去中心化是目标,而非起点
至于去中心化与否的议题,Damien 表示去中心化金融是相对的,DeFi 的价值不在于「绝对去中心化」,而是创造了一个开放、无许可的金融实验场。相比传统金融,它让更多平凡背景的人有参与的机会,无论是用户还是开发者。这才是它真正吸引我们的地方。适当的中心化能保障用户、开发者与投资人的安全。他也指出如果你在意的只是黑钱能不能转出去,那你的动机令人存疑。
去中心化是目标,而非起点。未来如果希望有更多机构进场,他们要的是资金安全,而不是看着两亿美金被洗走还无计可施。说到底,去中心化不是拿来自毁长城的。
同样关于去中心化与否的议题,Raccoon 认为 Sui 并非以太坊,其底层基因来自 Meta 的 Libra,因此对去中心化程度的要求本就不同。他指出,此类协调行为与中心化资料库「回滚」仍有差异,只要处理得当、公关跟进、程序透明,仍能被社群理解与接受。Sui 必须比 BNB Chain 更去中心化,但不需达到完全「世界电脑」等级的信仰型目标。
本文链接地址:https://www.wwsww.cn/hqfx/32273.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。