巨大なセキュリティ侵害が今日のDeFi界を揺るがしました。Balancerとそのフォークプロジェクトのいくつかが巧妙なエクスプロイトの被害を受けたのです。BlockSecのPhalconチームがX (旧Twitter)で示した詳細分析によれば、攻撃者は複数のブロックチェーンで合計1.2億ドル以上を流出させました。これは単なるハッキング事件ではなく、分散型金融プロトコルの数値精度を突いた高度な手口の見本です。
ここでは手順をわかりやすく分解して説明します。Balancerはカスタマイズ可能なウェイトで流動性プールを作成できる人気のAMMです。その柔軟性で知られる一方、価格やinvariant(プールのバランスを保つ基礎となる数学)を計算する仕組みの複雑さが脆弱性の入り口になることがあります。
根本原因:invariantの操作と丸め誤差
このエクスプロイトは、Balancerのステーブルプールにおける「invariant」の操作を中心に回っています。invariantはCurveのStableSwapモデルに基づくプール全体の「価値」を表す定数のようなもので、Balancer Pool Tokens(BPT)の価格算出に使われます。式は単純で、BPT価格 = Invariant (D) / 総供給量です。
攻撃者は一連のスワップを通じてこのBPT価格を人工的に下げ、その低下した価格で買い戻して利益を得る方法を見つけました。これらは単一の「batch swap」で実行され、複数の取引がまとめて処理されます。以下はArbitrum上のあるトランザクションを例にした流れです。
セットアップ:攻撃者はまずBPTを基軸資産にスワップし、あるトークン(この例ではcbETH)のバランスを微調整して「丸めの境界」に正確に到達させます。9単位のようなごく小さな量を狙い、次のステップで精度の問題を生じさせるように仕込みます。
主要操作:次に、別の資産(wstETH)とcbETH間で慎重に選んだ量(8単位)をスワップします。Balancerは桁を扱う際に切り捨てでスケーリングするため、あるトークンの変化量(Δx)が本来よりわずかに小さくなります。これが他方のトークンの変化量(Δy)を過小評価させ、結果的にinvariantが縮小します。これによりBPT価格が急落します。
上のコードログに見られるように、スケーリング係数の影響で量が約8.918から8へ切り捨てられ、この歪みが生じています。
- キャッシングアウト:最後に攻撃者はスワップを逆向きに行い、資産をプールに戻して、現在下落した価格でBPTをミントします。バランスは元に戻しますが、その過程で余分なトークンを手に入れ、それを売却して利益を得ます。
この精密な手法は、スマートコントラクトが大きな数値や小数点をどのように扱うかの弱点を突いています。ブロックチェーンではトークンが18小数点などを使うことが多いため、わずかな丸め誤差でも大きなプールでは拡大されてしまいます。
影響:複数チェーンへの被害
攻撃は1つのネットワークに止まりませんでした。Phalconの早期アラートは複数チェーンでの被害を示しています:
- Ethereum: Balancerから7000万ドル
- Base: Balancerから390万ドル
- Polygon: Balancerから11.7万ドル
- Sonic: Beethoven X(フォーク)から340万ドル
- Arbitrum: Balancerから590万ドル
- Optimism: Beethoven Xから28.3万ドル
Beethoven Xのようなフォークプロジェクトは、Balancerのコードを継承しているため特に脆弱でした。DeFiに関わるなら、影響を受けるプールから資金を引き揚げるなど自身のエクスポージャーを確認し、BalancerのXアカウントのような公式チャネルで最新情報を追ってください。
ミームトークン愛好家にとっての意味
Balancer自体がミームコイン向けのものではありませんが、多くのミームプロジェクトはこのようなDeFiインフラ上に構築されています。流動性プールはUniswapやRaydiumのようなプラットフォームでトークンを取引するための基盤であり、類似の脆弱性が波及する可能性があります。ミームをローンチしたり取引したりするなら、これらのリスクを理解して安全なプロトコルを見極めることが重要です。さらに、この種のエクスプロイトは市場の下落を誘発することが多く、買い目のチャンスになり得る一方で回避すべき警告にもなります。
教訓と次のステップ
DeFiのパーミッションレスな性質は両刃の剣であり、革新的である一方でリスクも伴います。監査は重要ですが、この事件が示すように、十分に検証されたコードでもエッジケースが残ることがあります。プロジェクト側はより堅牢な丸め保護や緊急停止機能の導入を検討すべきです。ユーザーは分散投資を心がけ、ハードウェアウォレットを使い、BlockSecのようなセキュリティ企業をフォローしてリアルタイムのアラートを受け取りましょう。
このエクスプロイトは、暗号セキュリティにおける継続的な攻防戦を浮き彫りにしています。警戒を怠らず、DeFiでは知識が最良の防御であることを忘れないでください。もしこのハックや類似事例について意見があれば、ぜひ下のコメントで教えてください。