值得信赖的区块链资讯!
慢雾:Cetus 被盗 2.3 亿美金事件分析
来源:慢雾科技
原文链接:https://mp.weixin.qq.com/s/w4xkia029ZMKNjrXnT506g
5 月 22 日,据社区消息,SUI 生态上的流动性提供商 Cetus 疑似遭攻击,流动性池深度大幅下降,Cetus 上多个代币交易对出现下跌,预计损失金额超过 2.3 亿美元。随后,Cetus 发布公告称:“我们协议中检测到了一起事件,安全起见,智能合约已暂时暂停。目前,团队正在对该事件展开调查。我们很快会发布进一步的调查声明。”
事件发生后,慢雾安全团队第一时间介入分析,并发布安全提醒。以下是对攻击手法及资金转移情况的详细解析。
(https://x.com/CetusProtocol/status/1925515662346404024)
相关信息
其中一笔攻击交易:
https://suiscan.xyz/mainnet/tx/DVMG3B2kocLEnVMDuQzTYRgjwuuFSfciawPvXXheB3x
攻击者地址:
0xe28b50cef1d633ea43d3296a3f6b67ff0312a5f1a99f0af753c85b8b5de8ff06
被攻击的池子地址:
0x871d8a227114f375170f149f7e9d45be822dd003eba225e83c05ac80828596bc
涉及代币:
haSUI / SUI
攻击分析
此次事件的核心是攻击者通过精心构造参数,使溢出发生但又能绕过检测,最终用极小的 Token 金额即可换取巨额流动性资产,以下为具体步骤解析:
(攻击时序图)
1. 攻击者首先通过闪电贷借出了 10,024,321.28 个 haSUI,导致池子价格从 18,956,530,795,606,879,104 暴跌至 18,425,720,184762886,价格下跌幅度达到 99.90%。
2. 攻击者精心选择了一个极窄的价格区间开立流动性头寸:
-
Tick 下限:300000(价格:60,257,519,765,924,248,467,716,150)
-
Tick 上限:300200 (价格:60,863,087,478,126,617,965,993,239)
-
价格区间宽度:仅 1.00496621%
3. 接着就是此次攻击的核心,攻击者声明要添加 10,365,647,984,364,446,732,462,244,378,333,008 单位的巨大流动性,但由于存在漏洞,系统只收取了 1 个代币 A。
我们来分析一下攻击者为什么能够用 1 个 Token 兑换出巨额流动性。其核心原因在于 get_delta_a 函数中的 checked_shlw 存在溢出检测绕过漏洞。攻击者正是利用了这一点,使得系统在计算实际需要添加多少 haSUI 时出现了严重偏差。由于溢出未被检测,系统误判了所需 haSUI 的数量,导致攻击者仅需极少的 Token,就能兑换出大量的流动性资产,从而实现了攻击。
当系统计算添加如此巨大流动性需要多少 haSUI 时:
public fun get_delta_a( sqrt_price_0: u128, sqrt_price_1: u128, liquidity: u128, round_up: bool): u64 { let sqrt_price_diff = if (sqrt_price_0 > sqrt_price_1) { sqrt_price_0 - sqrt_price_1 } else { sqrt_price_1 - sqrt_price_0 }; if (sqrt_price_diff == 0 || liquidity == 0) { return 0 }; let (numberator, overflowing) = math_u256::checked_shlw( full_math_u128::full_mul(liquidity, sqrt_price_diff) ); if (overflowing) { abort EMULTIPLICATION_OVERFLOW }; let denominator = full_math_u128::full_mul(sqrt_price_0, sqrt_price_1); let quotient = math_u256::div_round(numberator, denominator, round_up); (quotient as u64)}
这里的关键在于 checked_shlw 函数的实现存在严重缺陷。实际上,任何小于0xffffffffffffffff << 192 的输入值都会绕过溢出检测。然而,当这些值被左移 64 位时,结果会超出 u256 的表示范围,此时高位数据被截断,导致得到的结果远小于理论值。这样一来,系统在后续计算中就会低估所需的 haSUI 数量。
public fun checked_shlw(n: u256): (u256, bool) { let mask = 0xffffffffffffffff << 192; // ❌ 错误的掩码 if (n > mask) { // ❌ 错误的判断条件 (0, true) } else { ((n << 64), false) //⚠️ n 左移 64 位已经溢出。返回值转换为 u256 时,高位被截断,实际数值变小。 }}
-
错误掩码:0xffffffffffffffff << 192 = 非常大的数值(约2^256-2^192)
-
几乎所有输入都小于这个掩码,绕过溢出检测
-
真正的问题:当n >= 2^192 时,n << 64 会超出 u256 范围并被截断
攻击者构造的中间值 liquidity * sqrt_price_diff = 6277101735386680763835789423207666908085499738337898853712:
-
小于错误掩码,绕过溢出检测
-
但在左移 64 位后会超出 u256 最大值,从而导致超出的部分被截断
-
导致最终计算结果约小于 1,但由于是向上取整,quotient 算出来就等于 1
let quotient = math_u256::div_round(numberator, denominator, round_up);(quotient as u64) // 这里面分子小于分母,导致结果等于 1
4. 最后攻击者移除流动性,获得巨额代币收益:
-
第一次移除:获得 10,024,321.28 个 haSUI
-
第二次移除:获得 1 个 haSUI
-
第三次移除:获得 10,024,321.28 个 haSUI
5. 攻击者归还闪电贷,净获利约 10,024,321.28 个 haSUI 和 5,765,124.79 个 SUI,攻击完成。
项目方修复情况
攻击发生后,Cetus 发布了修复补丁。具体修复代码可参考:https://github.com/CetusProtocol/integer-mate/pull/7/files#diff-c04eb6ebebbabb80342cd953bc63925e1c1cdc7ae1fb572f4aad240288a69409。
修复后的 checked_shlw 函数如下:
public fun checked_shlw(n: u256): (u256, bool) { let mask = 1 << 192; // ✅ 修正为正确的阈值:2^192 if (n >= mask) { // ✅ 修正判断条件,正确检测溢出 (0, true) } else { ((n << 64), false) }}
修复说明:
-
将错误的掩码 0xffffffffffffffff << 192 修正为正确的阈值 1 << 192
-
将判断条件从 n > mask 修正为 n >= mask
-
确保当左移 64 位可能导致溢出时,能正确检测并返回溢出标志
MistTrack 分析
据分析,攻击者 0xe28b50cef1d633ea43d3296a3f6b67ff0312a5f1a99f0af753c85b8b5de8ff06 获利约 2.3 亿美元,包括 SUI、vSUI、USDC 等多种资产。
我们发现攻击者在两天前就准备好了 Gas Fee,然后在攻击之前进行了一次尝试,但失败了:
获利后,攻击者将部分资金如 USDC、SOL、suiETH 通过跨链桥如 Sui Bridge、Circle、Wormhole、Mayan 跨链到 EVM 地址 0x89012a55cd6b88e407c9d4ae9b3425f55924919b:
其中,5.2341 WBNB 跨链到了 BSC 地址 0x89012a55cd6b88e407c9d4ae9b3425f55924919b:
接着,攻击者将价值 1,000 万美元的资产存入 Suilend:
攻击者还将 24,022,896 SUI 转入新地址 0xcd8962dad278d8b50fa0f9eb0186bfa4cbdecc6d59377214c88d0286a0ac9562,目前暂未转出:
幸运的是,据 Cetus 称,在 SUI 基金会及其他生态系统成员合作下,目前已成功冻结了在 SUI 上的 1.62 亿美元的被盗资金。
(https://x.com/CetusProtocol/status/1925567348586815622)
接下来,我们使用链上反洗钱与追踪工具 MistTrack 分析 EVM 上接收跨链资金的地址 0x89012a55cd6b88e407c9d4ae9b3425f55924919b。
该地址在 BSC 上收到 5.2319 BNB,暂未转出:
该地址在 Ethereum 上收到 3,000 个 USDT、4,088 万个 USDC、1,771 个 SOL 和 8,130.4 个 ETH。
其中,USDT、USDC 和 SOL 通过 CoW Swap、ParaSwap 等兑换为 ETH:
接着,该地址将 20,000 ETH 转入地址 0x0251536bfcf144b88e1afa8fe60184ffdb4caf16,暂未转出:
目前该地址在 Ethereum 上的余额为 3,244 ETH:
MistTrack 已将以上相关地址加入恶意地址库,同时,我们将对持续对地址余额进行监控。
总结
本次攻击展示了数学溢出漏洞的威力。攻击者通过精确计算选择特定参数,利用 checked_shlw 函数的缺陷,以 1 个代币的成本获得价值数十亿的流动性。这是一次极其精密的数学攻击,慢雾安全团队建议开发人员在智能合约开发中严格验证所有数学函数的边界条件。
比推快讯
更多 >>- 道琼斯指数收盘上涨 260.31 点,标普 500 和纳斯达克下跌
- 谷歌美股盘后跌超 6%
- 美CFTC推翻拜登政府时期的“事件合约”规则提案,为预测市场“松绑”
- 数据:600 万枚 wM 从 GSR Markets 转出,价值约 600 万美元
- 数据:50 万枚 TRUMP 从 Bitgo Custody 转入 Binance,价值约 208.5 万美元
- 数据:过去 1 小时 Binance 净流入 1.83 亿 USDT
- 数据:1115.86 万枚 wM 从 GSR Markets 转出,价值约 1115.86 万美元
- 数据:209.72 万枚 MORPHO 转入 Coinbase Prime,价值约 268 万美元
- SpaceX据悉已开始向非美国银行发出IPO推介邀请
- 特朗普:利率将会下调,几乎毫无疑问
- 特朗普:沃什明白我想要降低利率
- CME Group CEO:该集团正考虑推出自己的“CME币”
- 贝森特:外资持续流入美国国债和股市
- SOL 下行触及 90 美元
- 美国股市延续跌势,纳指跌超 2%,特斯拉跌幅扩大至 5%
- 网络状况监测网站DownDetector:OpenAI在美国的使用出现问题
- BTC跌破73000 USDT,24H跌幅4.09%
- 美劳工局将 1 月非农报告推迟至 2 月 11 日发布
- 现货黄金加速回落,跌破 4850 美元/盎司,日内跌 1.96%
- DOOD 短时涨近 9%,市值升至 3300 万美元
- 疑似 Multicoin Capital 正在大规模将 ETH 换仓至 HYPE
- Trend Research 疑似再次抛售 1 万枚 ETH,此前从 CEX 提出 3000 万枚 USDT 用于偿还借款
- Tether 于波场网络增发 10 亿枚 USDT
- 麻吉连遭 262 次清算后,再次充值做多 ETH 和 HYPE,ETH 爆仓价 1,933.21 美元
- 麻吉大哥遭 262 次清算后再次向 Hyperliquid 存入 249950 枚 USDC 做多 ETH 和 HYPE
- 某巨鲸割肉高位买入的 9,485 枚 ETH,亏损高达 2,427 万美元
- 某鲸鱼将 5 个月前买入的 9485 枚 ETH 全部出售,亏损 2427 万美元
- 数据:5923.47 枚 PAXG 转入 Paxos,价值约 2928 万美元
- Bitmine 以太坊持仓浮亏扩大至 73.57 亿美元,创历史新高
- 分析:比特币回落至 7.4 万美元,AI 股抛压拖累加密市场
- AI 担忧冲击科技股,加密市场和矿企集体承压
- 彭博分析师:比特币 ETF 投资者坚守信念,资产实际流出占比仅约 6%
- AMD 跌幅扩大至 16%,创下自 2018 年以来最大跌幅
- 美国共和党参议员敦促财政部购买比特币
- 比特币再次跌破 7.4 万美元
- 白宫官员:特朗普将于 4 月前签署加密市场结构法案
- 富达美元稳定币 FIDD 已上线,可供散户和机构投资者使用
- 特朗普:美方愿与中方加强合作,推动两国关系取得新发展
- 西班牙银行巨头 BBVA 加入欧盟银行稳定币项目,挑战美元主导地位
- 纳指短线拉升,日内跌幅缩小至 0.6%
- 以太坊充币恢复,过去 24 小时 CEX 净流入 8.38 万枚 ETH
- 分析师:市场看跌气氛开始具象化,ETH 或将测试 2000 美元整数关口
- 美参议院民主党人拟于晚些时候重启关于加密市场结构法案的讨论
- 比特币充币情绪延续,过去 24 小时 CEX 净流入 4,069.98 枚 BTC
- 比特币 8 分钟反弹 1.57%,回升突破 7.5 万美元
- 灰度向 Coinbase 转入约 1187 枚 ETH 和 1183 枚 BTC
- 数据:2615.53 万枚 ENA 从 Revolut 转出,价值约 356.86 万美元
- 纳指跳水超 1%,英伟达跌 2%,亚马逊跌 1.6%
- Vitalik 提议将预测市场与 DAO 引入创作者代币生态,弱化名人效应、强化内在价值
- K33 报告:比特币下跌重现四年周期担忧,但深度熊市或难重演
比推专栏
更多 >>- 围猎以太坊多头:「巨鲸」们暴亏 70 亿美元,正被集体围观
- Challenge,risk And chances|0130 Asian
- Meta 豪赌 AI:砸钱 1350 亿美元,2026 的扎克伯格,值得相信么?
- Variables: Terrible snowstorm|0128 Asian
- 英特尔「生死线」时刻:在 ICU 门前,陈立武如何清算遗产并开启自救?
- 從1月13號到今天,提前到5100|0126Asian
- You Should work HARDER in 2026|0120 Asian
- 硅谷最聪明那群人的「终极推演」:2026,我们应该「All-In」什么?
- Notice us dollar index|0116 in us
- 我们用大模型,给 2026 年的代币化/Web3「算了一卦」
观点
比推热门文章
- 美CFTC推翻拜登政府时期的“事件合约”规则提案,为预测市场“松绑”
- 数据:600 万枚 wM 从 GSR Markets 转出,价值约 600 万美元
- 数据:50 万枚 TRUMP 从 Bitgo Custody 转入 Binance,价值约 208.5 万美元
- 数据:过去 1 小时 Binance 净流入 1.83 亿 USDT
- 数据:1115.86 万枚 wM 从 GSR Markets 转出,价值约 1115.86 万美元
- 数据:209.72 万枚 MORPHO 转入 Coinbase Prime,价值约 268 万美元
- SpaceX据悉已开始向非美国银行发出IPO推介邀请
- Tiger Research:下一轮牛市,等风来
- 特朗普:利率将会下调,几乎毫无疑问
- 特朗普:沃什明白我想要降低利率
比推 APP



