您好,欢迎来到标准下载网!

慢雾 Cetus 被盗 2.3 亿美金事件分析

时间:2025-05-28 12:51:49 来源:标准下载网 类别:软件攻略

这是一次极其精密的数学攻击,攻击者通过精确计算选择特定引数,利用 checked_shlw 函式的缺陷,以 1 个代币的成本获得价值数十亿的流动性。
(前情提要:Cetus遭骇受害者怎么想?Sui团队要求承诺「完全还款」,含两个关键条件
(背景补充:Cetus被骇案「悬赏500万美元」,链上侦探ZachXBT:赏金太少了,哪个高手想做?

本文目录

  • 背景
  • 相关资讯
  • 攻击分析
  • 专案方修复情况
  • MistTrack 分析
  • 总结

 

背景

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 时:

这里的关键在于 checked_shlw 函式的实现存在严重缺陷。实际上,任何小于 0xffffffffffffffff << 192 的输入值都会绕过溢位检测。然而,当这些值被左移 64 位时,结果会超出 u256 的表示範围,此时高位资料被截断,导致得到的结果远小于理论值。这样一来,系统在后续计算中就会低估所需的 haSUI 数量。

  • 错误掩码:0xffffffffffffffff << 192 = 非常大的数值(约 2^256-2^192)
  • 几乎所有输入都小于这个掩码,绕过溢位检测
  • 真正的问题:当 n >= 2^192 时,n << 64 会超出 u256 範围并被截断

攻击者构造的中间值 liquidity * sqrt_price_diff = 6277101735386680763835789423207666908085499738337898853712:

  • 小于错误掩码,绕过溢位检测
  • 但在左移 64 位后会超出 u256 最大值,从而导致超出的部分被截断
  • 导致最终计算结果约小于 1,但由于是向上取整,quotient 算出来就等于 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 函式如下:

修复说明:

将错误的掩码 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 个代币的成本获得价值数十亿的流动性。这是一次极其精密的数学攻击,慢雾安全团队建议开发人员在智慧合约开发中严格验证所有数学函式的边界条件。

科技快讯 更多+
  • \u300cBTC OG\u5185\u5e55\u5de8\u9cb8\u300d\u603b\u4ed3\u4f4d\u6d6e\u4e8f\u6269\u5927\u81f31926\u4e07\u7f8e\u5143

    2025-12-14 19:59
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Hyperinsight \u76d1\u6d4b\uff0c\u300cBTC OG \u5185\u5e55\u5de8\u9cb8\u300d\u5730\u5740\u5185\u6301\u6709\u7684\u4ed3\u4f4d\u6d6e\u4e8f\u6269\u5927\u81f3 1926 \u4e07\u7f8e\u5143\uff0c\u5176\u4e2d\uff1a \u00b7 5 \u500d\u505a\u591a 175,994 \u679a ETH\uff0c\u5f00\u4ed3\u4ef7\u683c 3173.34 \u7f8e\u5143\uff0c\u6e05\u7b97\u4ef7\u683c 1954.9 \u7f8e\u5143\uff0c\u6d6e\u4e8f 1553 \u4e07\u7f8e\u5143\uff1b \u00b7 5 \u500d\u505a\u591a 1000 \u679a BTC\uff0c\u5f00\u4ed3\u4ef7\u683c 91,506.7 \u7f8e\u5143\uff0c\u6d6e\u4e8f 221 \u4e07\u7f8e\u5143\uff1b \u00b7 20 \u500d\u505a\u591a 25,000 \u679a SOL\uff0c\u5f00\u4ed3\u4ef7\u683c 137.53 \u7f8e\u5143\uff0c\u6d6e\u4e8f 152 \u4e07\u7f8e\u5143\u3002
  • \u300c\u9ebb\u5409\u300d\u51cf\u4ed325\u500dETH\u591a\u5355\uff0c\u76ee\u524d\u6e05\u7b97\u4ef7\u4e3a3042.74\u7f8e\u5143

    2025-12-14 19:54
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e \u76d1\u6d4b\uff0c\u300c\u9ebb\u5409\u5927\u54e5\u300d\u9ec4\u7acb\u6210\u51cf\u4ed3 786 \u679a ETH\uff0c\u76ee\u524d\u6301\u6709 3144 \u679a ETH\uff08969 \u4e07\u7f8e\u5143\uff09\uff0c\u76ee\u524d\u6e05\u7b97\u4ef7\u4e3a 3042.74 \u7f8e\u5143\u3002
  • \u8fc7\u53bb1\u5c0f\u65f6\u5168\u7f51\u7206\u4ed35571\u4e07\u7f8e\u5143\uff0c\u4e3b\u7206\u591a\u5355

    2025-12-14 19:47
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Coinglass \u6570\u636e\uff0c\u8fc7\u53bb 1 \u5c0f\u65f6\u5168\u7f51\u7206\u4ed3 5571 \u4e07\u7f8e\u5143\uff0c\u5176\u4e2d\u591a\u5355\u7206\u4ed3 5503 \u4e07\u7f8e\u5143\uff0c\u7a7a\u5355\u7206\u4ed3 67 \u4e07\u7f8e\u5143\u3002
  • \u6bd4\u7279\u5e01\u8dcc\u783489,000\u7f8e\u5143

    2025-12-14 19:45
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e HTX \u884c\u60c5\u6570\u636e\uff0c\u6bd4\u7279\u5e01\u8dcc\u7834 89,000 \u7f8e\u5143\uff0c24 \u5c0f\u65f6\u8dcc\u5e45 1.62%\u3002
  • \u67d0\u9cb8\u9c7c\u51fa\u552e1654\u679aETH\u5e76\u9ad8\u6760\u6746\u505a\u591aETH\uff0c\u7d2f\u8ba1\u4e8f\u635f\u8d85330\u4e07\u7f8e\u5143

    2025-12-14 19:38
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Lookonchain \u76d1\u6d4b\uff0c4 \u5929\u524d\uff0c\u9cb8\u9c7c 0x76AB \u5728\u73b0\u8d27\u5e02\u573a\u51fa\u552e\u4e86 1,654 \u679a ETH\uff08\u4ef7\u503c 549 \u4e07\u7f8e\u5143\uff09\uff0c\u5e76\u8f6c\u800c\u6301\u6709\u9ad8\u6760\u6746 ETH \u591a\u5934\u5934\u5bf8\u3002 \u4ed6\u8fdb\u884c\u4e86 3 \u7b14\u4ea4\u6613\uff0c\u5176\u4e2d 2 \u7b14\u4e8f\u635f\uff0c\u5728\u77ed\u77ed 4 \u5929\u5185\u7d2f\u8ba1\u4e8f\u635f\u8d85\u8fc7 330 \u4e07\u7f8e\u5143\u3002
  • \u67d0\u806a\u660e\u94b1\u591a\u8f6c\u7a7a\uff0c3\u500d\u6760\u6746\u505a\u7a7a1000\u679aBTC

    2025-12-14 19:32
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Lookonchain \u76d1\u6d4b\uff0c\u67d0\u806a\u660e\u94b1\u300cpension-usdt.eth\u300d\u5df2\u4ece\u505a\u591a\u8f6c\u4e3a\u505a\u7a7a\uff0c3 \u500d\u6760\u6746\u505a\u7a7a 1000 \u679a BTC\uff0c\u4ed3\u4f4d\u4ef7\u503c\u7ea6 8,960 \u4e07\u7f8e\u5143\u3002 \u8be5\u4ea4\u6613\u5458\u76ee\u524d\u5df2\u53d6\u5f97\u8fde\u7eed 7 \u7b14\u4ea4\u6613\u5168\u80dc\uff0c\u7d2f\u8ba1\u76c8\u5229\u8d85\u8fc7 2,200 \u4e07\u7f8e\u5143\u3002
  • 10x Research\uff1a\u6bd4\u7279\u5e01\u56db\u5e74\u5468\u671f\u4f9d\u7136\u5b58\u5728\uff0c\u4f46\u9a71\u52a8\u529b\u5df2\u4ece\u51cf\u534a\u8f6c\u5411\u653f\u6c

    2025-12-14 19:11
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Cointelegraph \u62a5\u9053\uff0c10x Research \u7814\u7a76\u4e3b\u7ba1 Markus Thielen \u8868\u793a\uff0c\u6bd4\u7279\u5e01\u7684\u56db\u5e74\u5468\u671f\u4f9d\u7136\u5b58\u5728\uff0c\u4f46\u5176\u4e3b\u8981\u9a71\u52a8\u56e0\u7d20\u5df2\u4e0d\u518d\u662f\u51cf\u534a\uff0c\u800c\u662f\u653f\u6cbb\u56e0\u7d20\u3001\u6d41\u52a8\u6027\u73af\u5883\u4ee5\u53ca\u9009\u4e3e\u5468\u671f\u3002 Thielen \u6307\u51fa\uff0c2013 \u5e74\u30012017 \u5e74\u548c 2021 \u5e74\u7684\u5e02\u573a\u9ad8\u70b9\u5747\u51fa\u73b0\u5728\u7b2c\u56db\u5b63\u5ea6\u3002\u4ed6\u8868\u793a\uff0c\u8fd9\u4e9b\u9ad8\u70b9\u4e0e\u603b\u7edf\u9009\u4e3e\u5468\u671f\u53ca\u66f4\u5e7f\u6cdb\u7684\u653f\u6cbb\u4e0d\u786e\u5b9a\u6027\u7684\u76f8\u5173\u6027\u66f4\u9ad8\uff0c\u800c\u4e0e\u6bd4\u7279\u5e01\u51cf\u534a\u7684\u65f6\u95f4\u70b9\u5173\u7cfb\u5e76\u4e0d\u7d27\u5bc6\uff0c\u56e0\u4e3a\u51cf\u534a\u4e8b\u4ef6\u5728\u5386\u5e74\u4e2d\u4e8e\u65e5\u5386\u4e0a\u7684\u65f6\u95f4\u4e0d\u65ad\u53d8\u5316\u3002 \u4eca\u5e74\u5728\u7f8e\u8054\u50a8\u8fd1\u671f\u964d\u606f\u80cc\u666f\u4e0b\u6bd4\u7279\u5e01\u5e76\u672a\u91cd\u62fe\u5f3a\u52b2\u6da8\u52bf\uff0c\u539f\u56e0\u5728\u4e8e\u673a\u6784\u6295\u8d44\u8005\u5df2\u6210\u4e3a\u52a0\u5bc6\u5e02\u573a\u7684\u4e3b\u5bfc\u529b\u91cf\u4f46\u51b3\u7b56\u66f4\u52a0\u8c28\u614e\uff0c\u5728\u7f8e\u8054\u50a8\u653f\u7b56\u4fe1\u53f7\u4ecd\u7136\u6447\u6446\u3001\u6574\u4f53\u6d41\u52a8\u6027\u8d8b\u7d27\u7684\u60c5\u51b5\u4e0b\uff0c\u8d44\u91d1\u5165\u573a\u8282\u594f\u660e\u663e\u653e\u7f13\uff0c\u524a\u5f31\u4e86\u4ef7\u683c\u5f62\u6210\u6301\u7eed\u7a81\u7834\u6240\u9700\u7684\u52a8\u80fd\u3002\u5728\u6d41\u52a8\u6027\u672a\u663e\u8457\u6539\u5584\u4e4b\u524d\uff0c\u6bd4\u7279\u5e01\u66f4\u53ef\u80fd\u7ef4\u6301\u533a\u95f4\u9707\u8361\u4e0e\u6a2a\u76d8\u6574\u7406\uff0c\u800c\u975e\u5feb\u901f\u8fdb\u5165\u65b0\u4e00\u8f6e\u629b\u7269\u7ebf\u5f0f\u4e0a\u6da8\u884c\u60c5\u3002
  • 10x Research\uff1a\u6bd4\u7279\u5e01\u56db\u5e74\u5468\u671f\u4f9d\u7136\u5b58\u5728\uff0c\u4f46\u9a71\u52a8\u529b\u5df2\u4ece\u51cf\u534a\u8f6c\u5411\u653f\u6c

    2025-12-14 19:11
    BlockBeats \u6d88\u606f\uff0c12 \u6708 14 \u65e5\uff0c\u636e Cointelegraph \u62a5\u9053\uff0c10x Research \u7814\u7a76\u4e3b\u7ba1 Markus Thielen \u8868\u793a\uff0c\u6bd4\u7279\u5e01\u7684\u56db\u5e74\u5468\u671f\u4f9d\u7136\u5b58\u5728\uff0c\u4f46\u5176\u4e3b\u8981\u9a71\u52a8\u56e0\u7d20\u5df2\u4e0d\u518d\u662f\u51cf\u534a\uff0c\u800c\u662f\u653f\u6cbb\u56e0\u7d20\u3001\u6d41\u52a8\u6027\u73af\u5883\u4ee5\u53ca\u9009\u4e3e\u5468\u671f\u3002 Thielen \u6307\u51fa\uff0c2013 \u5e74\u30012017 \u5e74\u548c 2021 \u5e74\u7684\u5e02\u573a\u9ad8\u70b9\u5747\u51fa\u73b0\u5728\u7b2c\u56db\u5b63\u5ea6\u3002\u4ed6\u8868\u793a\uff0c\u8fd9\u4e9b\u9ad8\u70b9\u4e0e\u603b\u7edf\u9009\u4e3e\u5468\u671f\u53ca\u66f4\u5e7f\u6cdb\u7684\u653f\u6cbb\u4e0d\u786e\u5b9a\u6027\u7684\u76f8\u5173\u6027\u66f4\u9ad8\uff0c\u800c\u4e0e\u6bd4\u7279\u5e01\u51cf\u534a\u7684\u65f6\u95f4\u70b9\u5173\u7cfb\u5e76\u4e0d\u7d27\u5bc6\uff0c\u56e0\u4e3a\u51cf\u534a\u4e8b\u4ef6\u5728\u5386\u5e74\u4e2d\u4e8e\u65e5\u5386\u4e0a\u7684\u65f6\u95f4\u4e0d\u65ad\u53d8\u5316\u3002 \u4eca\u5e74\u5728\u7f8e\u8054\u50a8\u8fd1\u671f\u964d\u606f\u80cc\u666f\u4e0b\u6bd4\u7279\u5e01\u5e76\u672a\u91cd\u62fe\u5f3a\u52b2\u6da8\u52bf\uff0c\u539f\u56e0\u5728\u4e8e\u673a\u6784\u6295\u8d44\u8005\u5df2\u6210\u4e3a\u52a0\u5bc6\u5e02\u573a\u7684\u4e3b\u5bfc\u529b\u91cf\u4f46\u51b3\u7b56\u66f4\u52a0\u8c28\u614e\uff0c\u5728\u7f8e\u8054\u50a8\u653f\u7b56\u4fe1\u53f7\u4ecd\u7136\u6447\u6446\u3001\u6574\u4f53\u6d41\u52a8\u6027\u8d8b\u7d27\u7684\u60c5\u51b5\u4e0b\uff0c\u8d44\u91d1\u5165\u573a\u8282\u594f\u660e\u663e\u653e\u7f13\uff0c\u524a\u5f31\u4e86\u4ef7\u683c\u5f62\u6210\u6301\u7eed\u7a81\u7834\u6240\u9700\u7684\u52a8\u80fd\u3002\u5728\u6d41\u52a8\u6027\u672a\u663e\u8457\u6539\u5584\u4e4b\u524d\uff0c\u6bd4\u7279\u5e01\u66f4\u53ef\u80fd\u7ef4\u6301\u533a\u95f4\u9707\u8361\u4e0e\u6a2a\u76d8\u6574\u7406\uff0c\u800c\u975e\u5feb\u901f\u8fdb\u5165\u65b0\u4e00\u8f6e\u629b\u7269\u7ebf\u5f0f\u4e0a\u6da8\u884c\u60c5\u3002
  • 查看更多

CopyRight 2025 www.bzxz.net All Rights Reserved 湘ICP备2025141790号-2

本网站所展示的内容均由用户自行上传发布,本站仅提供信息存储服务。若您认为其中内容侵犯了您的合法权益,请及时联系我们处理,我们将在核实后尽快删除相关内容。