クロスチェーンプロトコルのチェーンフリップ(Chainflip)において、トロン(TRON)上のUSDT処理を悪用したセキュリティインシデントが発生し、73万6,442.17 USDTが不正に流出しました。同プロトコルの開発チームが9月13日に報告した分析によると、攻撃者は署名済みトランザクションのメモを改変する手法で不正な二重払いを発生させました。チェーンフリップのボールト(資金保管庫)から資金が失われた初の重大なセキュリティ事象となりましたが、同チームは修正策を策定しており、ネットワーク再稼働後に影響を受けたユーザーへの補償を実施する方針を示しています。
株式会社Pacific Metaが運営する編集チームです。ステーブルコイン、RWA(リアルワールドアセット)、セキュリティトークン、NFTなどのトークン活用や、オンチェーン金融、AI×ブロックチェーン領域の事業開発・実装、暗号資産の基礎知識と国内取引所の使い方まで、ブロックチェーン事業の支援で得た知見をもとに記事の企画・執筆・監修を行っています。編集部や運営会社の詳細は公式サイトと編集方針をご覧ください。
被害の全容とユーザー資金への影響
今回のインシデントでは、計6件の不正な払い出しにより、合計73万6,442.17 USDTがプロトコルから流出しました。ただし、被害を受けた範囲はチェーンフリップにおけるトロン上のUSDT処理に限定されており、その他のチェーンや資産には影響が及んでおらず、安全な状態が保たれていると報告されています。
また、一般ユーザーによる11万5,654.41 USDTのスワップ(暗号資産の交換)1件が未払いの状態となっていますが、この資金はチェーンフリップのボールト内に残存しています。そのため、ネットワークが再稼働した後に正常に処理される見込みです。開発チームは流出資金に関係者を通じて通知し一部回収を試みているほか、ネットワークの安全な再稼働手順を進めた上で、影響を受けたユーザーに対して損失を補償する方針を表明しています。
トロン特有の仕様を狙った二重払いの手口
インシデントの原因となったのは、チェーンフリップがトロン上のトランザクションを処理する特殊な設計にありました。同プロトコルが対応する多くのブロックチェーンでは専用のコントラクト関数を用いてスワップ指示を処理していますが、トロンではトランザクションに付加される追加情報であるメモ(memo)から指示を読み取る仕様を採用していました。
攻撃者は、ネットワークの署名などを担う参加者であるバリデータがすでに署名したトランザクションに対し、独自のメモを付加できる脆弱性を発見しました。チェーンフリップのシステムがこの改変されたメモを別のスワップ指示として認識し、指示が失敗したものとして返金処理を実行した結果、同一の入金に対して2度の払い出しが行われる二重払いが発生しました。攻撃者は約90分間にわたりこの手法を計8回試行し、少額での成功を確認した後に各回の金額をおおむね倍増させていたことが判明しています。開発チームはUSDTの払い出し失敗を契機に異常を検知し、すでに修正方法の策定を終え、安全な再稼働に向けた手順を進めています。
ポイント
- チェーンフリップにおいてトロン上のUSDT処理を標的とした攻撃が発生し、6件の不正払い出しにより73万6,442.17 USDTが流出しました。
- トロンのトランザクションメモを利用した処理仕様が悪用され、署名済みトランザクションにメモを付加することで返金処理を誘発し、二重払いが行われました。
- 不具合はトロンUSDT処理に限定されており、他の資金は安全であるほか、未払いとなっている一般ユーザーの約11.5万USDTもボールト内に保全されています。
- プロトコルのボールトから資金が失われた初の重大インシデントとなりましたが、開発チームが修正策の策定とネットワーク再稼働後のユーザー補償方針を迅速に公表した点で注目されます。
