Suiステーク90.9%の決断:攻撃者の署名なしで認めた2件のCetus資金回収
2025年5月22日、整数オーバーフロー検査の欠陥によりSui最大のDEXであるCetusから推定2億2300万ドルが流出しました。Suiのバリデーター群は攻撃者のトランザクションを無視して約1億6200万ドルを即座に凍結し、5月29日に早期終了したステーク加重投票で90.9%が賛成。ハッカーの署名なしに特定2件のトランザクションを通じて資金を4-of-6マルチシグ信託へ移動するプロトコル改修を承認しました。

要点
- 2025年5月22日、攻撃者がMove言語の共有数学ライブラリにおける整数オーバーフロー検証の不具合を突き、Sui最大のDEXであるCetusから推定2億2300万ドルを不正流出させ、うち6000万ドル以上がEthereumへブリッジされました。
- 5月27日に開始されたオンチェーンのステーク加重投票は、5月29日にステークの90.9%を代表するバリデーターの賛成で早期終了し、ハッカーの署名なしに凍結資金約1億6200万ドルを4-of-6マルチシグ信託へ移送するプロトコル改修を承認しました。
- Mysten Labsは5月30日、あらかじめ指定された2件の復旧トランザクションのみに限定されたアドレスエイリアス機能をマージし、バリデーターの連携が安全網か中央集権化の兆候かを巡る業界全体の議論を再燃させました。
出来事のタイムライン
Sui最大のDEXであるCetusがオーバーフロー検査の不具合を突かれ、セキュリティ分析による推定で約2億2300万ドルが流出しました。
バリデーター群が攻撃者の2アドレスを特定してトランザクションを無視し、大半を封鎖しましたが6000万ドル超がEthereumへ渡りました。
攻撃者に約600万ドルを報奨金として保持させる返還提案を行うも無回答に終わり、Cetusは500万ドルの懸賞金を発表しました。
ステーク加重のバリデーター投票が5月27日に開始され、5月29日に賛成90.9%、棄権1.5%、不参加7.2%で早期終了しました。
MystenLabs/sui PR #22237がマージされました。コードは、攻撃者の署名なしに指定された復旧トランザクション2件だけにアドレスエイリアスを認めるものです。マージの記録自体はメインネットでの有効化や実行の証拠ではありません。
1. たった1つの定数ミスがSui最大のDEXを破壊した
2025年5月22日、Sui最大のDEXであるCetusが整数オーバーフロー検査の欠陥を突かれハッキングを受けました。Cetusは2億2000万ドル超の盗難を報告し、Halbornは被害額を2億2300万ドルと試算しました。事件直後、焦点は流出経路からチェーン内の残余資金をどれだけ捕捉・凍結できるかへと移りました。[3][6]
攻撃は極めて簡潔でした。攻撃者は56,700 SUIのフラッシュローンを実行後、[300000, 300200]というわずか200ティックの範囲に単一のSCAトークンで流動性ポジションを開設しました。[3][4]
欠陥は64ビット左シフトのオーバーフローを検査するchecked_shlw関数にありました。Halbornによると、コードは本来の0x1 << 192ではなく0xFFFFFFFFFFFFFFFF << 192と比較していました。不合格となるべき値が通過し、預入された1トークンが天文学的流動性として処理されました。[3]
攻撃者は架空ポジションでプールから資金を引出しました。rektは流動性が約10³⁴単位に達し全AMMプールが被弾したと報じました。Moveはシフト演算のオーバーフローを許容するため手動検査が必須でした。不具合は共有のinteger-mateライブラリにあり、Zellicは2025年4月の監査対象外だったとし、Verichainsは他プロトコルにも同一コードを確認しました。[4]
2. 議論を巻き起こした緊急資産凍結
対応は事件当日に即座に始まりました。Suiのバリデーター群は攻撃者アドレスを特定して処理を停止し、Cetusは約1億6200万ドルの資金を凍結したと発表しました。初期の流出を止めたのは後の投票ではなくこの緊急連携でした。[6][1]
“多数のバリデーターが盗難資金を保持するアドレスを特定し、追って通知があるまでそれらのアドレスのトランザクションを無視しています”[6]— Sui Foundation、2025年5月22日声明
全額の封鎖はできませんでした。分析では6000万ドル超がWormholeブリッジ経由でEthereumへ渡り、約20,000 ETHが新規ウォレットへ移送されました。HackenのExtractorツールはブリッジ総額を約6300万ドルと試算しました。[4][6]
CetusとInca Digitalは攻撃者に約600万ドル(2,324 ETH)の報奨金を提示するオンチェーンメッセージを送るも無回答に終わり、Cetusは500万ドルの懸賞金を懸けました。一方、投票なき資産凍結はSui上の所有権の定義を巡る批判を招きました。[4][8]
3. 投票に付されたプロトコル改修
ハッキング5日後の2025年5月27日午後1時(PST)、Suiはオンチェーン投票を開始しました。スマートコントラクトを通じてステーク加重で賛成・反対・棄権が投じられ、投じられた票は確定とされました。中立性確保のためSui Foundationのステークは除外されました。[1][5]
可決要件は明確でした。棄権を除く総ステークの50%超が参加し賛成が反対を上回る必要がありました。期間は最長7日でしたが、数学的確定により2日後に早期終了可能でした。一般保有者は委任バリデーターを通じて意思を反映しました。[1]
投票は5月29日に早期終了しました。Cointelegraphの報道によるとFoundation分を除く投票対象の総ステークの90.9%を代表するバリデーターが賛成し、棄権1.5%、不参加7.2%でした。可決されたのは無制限の権限ではなく、2件の特定復旧トランザクションの承認でした。[7][1]
“ステークの90.9%を代表するバリデーターがオンチェーンコミュニティ投票で『賛成』を表明し、投票は早期終了しました”[1]— Sui Foundation、投票終了アップデート
4. 攻撃者の署名なしで行う2件:アドレスエイリアス
コード改修も並行しました。5月27日、開発者mystenmarkはPR #22237「盗難資金回収のためのプロトコル更新」を公開し、9コミットを経て5月30日にrecover-via-address-aliasブランチがマージされました。[2]
“ProtocolConfigは、アドレスAからの署名が送信者アドレスBとして機能することを可能にするアドレスエイリアスを指定できます”[2]— mystenmark、PR #22237説明文
マージされたコードはハッカーアドレス、エイリアスアドレス、正確なTransactionDigestのタプル2組を定義し、各アドレスにつき1件の復旧のみを許可しました。拒否リストのバイパスもこの2件だけに限られ、提案文とPRは作成済みトランザクションを改修前に公開して点検可能にするとしていました。[1][2]
“このメカニズムは2件の復旧トランザクションに特化しており、他のいかなる目的にも使用できません”[1]— Sui Foundation、プロトコル改修技術詳細
回収予定資産の保管先は4-of-6マルチシグ信託ウォレットとされました。鍵はCetusが2本、Sui Foundationが2本、FoundationがSuiコミュニティで信頼される監査企業と説明したOtterSecが2本を保持します。Cetusが復旧トランザクションを提案・署名し、OtterSecが公開計画との一致を確認し、Foundationは他の署名者が対応できない場合にのみ署名します。[1]
5. 承認後の回収計画
可決後、Sui Foundationは凍結資産をマルチシグ信託へ移し、Cetusの自己資金とFoundation融資を含む復旧計画に沿って分配する予定だと説明しました。Cetusは約1週間での完全復旧と再開を目指し、専用補償コントラクトは開発中で、配備前に監査を受ける予定だと表明しました。[1][7]
事態は非中央集権を巡る議論へと発展しました。CointelegraphのFinance Redefinedによると、非中央集権支持派はバリデーターの凍結能力を中央集権的と批判した一方、他の関係者は迅速な保護対応を評価しました。[8]
記録には、事前投票なしに行われたバリデーターの凍結と、その後の投票で承認された2件限定の回収計画があります。Foundationの投票終了案内は資金を今後移すと説明しており、コードのマージと取引の実行を示す証拠は区別する必要があります。この決定は、ステーク投票が保有者の署名なしに特定の資金移動を承認できることを示しています。[1][2][8]
これが今回の投票が残したパラドックスです。Cetusの要請、ステーク90.9%を代表するバリデーターの賛成、コード上の限定、OtterSecによる公開計画との照合という枠組みを経ても、特定アドレスを例外扱いする事実は残ります。Foundationが強調したようにガバナンスは主体的参加で成立し、Suiではその参加が約1億6200万ドルの凍結資産をどう回収するかを承認しました。[1]
この事件から学ぶ重要教訓(Key Takeaways)
共有数学ライブラリの厳格な監査
Cetusのバグは共有のinteger-mateライブラリ内のchecked_shlw関数にあり、最新の監査範囲から除外されていました。共有依存関係はリスクを集中させるため、オーバーフロー検査や低水準演算は、それを流用するすべてのプロトコルで基本契約と同等の精査が必要です。
緊急対応力もチェーンの資産特性
バリデーターによる凍結と投票は損失結果を実質的に変え、推定2億2300万ドルのうち約1億6200万ドルを封じ込めてユーザーへの返還ルートを開きました。チェーンを評価する投資家は、バリデーターの集中度や改修速度など、非常時の介入能力も織り込む必要があります。
ガバナンスは所有者の署名なしにコインを移動できる
Suiの回収計画はCetusの要請を受け、対象を2件に限定し、Foundation分を除く投票対象の総ステークの90.9%を代表するバリデーターが承認しました。保管先には3者で鍵を分担するマルチシグ信託が予定されました。承認は資金移動の実行確認とは別ですが、保有者の署名なしで特定の移動を認める決定です。これを安全網と見るか前例と見るかは、分散型ネットワークが向き合う課題です。
続けて読みたいストーリー
同じテーマを、別の事例や背景から考えてみましょう。
出典・参考文献
- [1]出典 1: Cetus事件への対応 — オンチェーンのコミュニティ投票Sui Foundation · 2025-05-27確認 2026-08-23
- [2]出典 2: 盗難資金の回収を認めるプロトコルのコード変更(PR #22237)MystenLabs/sui (GitHub) · 2025-05-27確認 2026-08-23
- [3]出典 3: Cetusハッキングの分析(2025年5月)Halborn · 2025-05-27確認 2026-08-23
- [4]出典 4: Cetusハッキング — Rektの分析Rekt News · 2025-05-23確認 2026-08-23
- [5]出典 5: sui-foundation/recovery-vote:Cetus資金回収の投票コントラクトSui Foundation (GitHub)確認 2026-08-23
- [6]出典 6: Suiバリデーター、2億2000万ドルのCetus被害資金の大部分を凍結Cointelegraph · 2025-05-22確認 2026-08-23
- [7]出典 7: Sui、Cetusの凍結資金1億6200万ドルの回収案を可決Cointelegraph · 2025-05-30確認 2026-08-23
- [8]出典 8: Cetus資金1億6200万ドルを巡るSui投票が分散性の議論を喚起Cointelegraph (Finance Redefined) · 2025-05-30確認 2026-08-23


