CertiK:Poly Network 千万ドル損失攻撃事件分析
著者:CertiK
2023年7月1日、攻撃者はPoly Networkの脆弱性を利用して、複数のチェーンで420億ドルの資産を不正に発行しました。発行された資産の量は膨大ですが、流動性が低く、一部のプロジェクトのトークンが凍結されているため、攻撃者は5つの外部アカウントから1000万ドル以上の資産を取得することができませんでした。
これは今年発生した最初のクロスチェーンブリッジ攻撃事件であり、Poly Networkに対する2回目の攻撃でもあります。昨年の攻撃事件の総損失額は370億ドルに達し、そのうちクロスチェーンブリッジ攻撃による損失は35%を占めています。今回の事件は、史上最大の金額が関与した脆弱性攻撃のように見えますが、ハッカーの実際の利益ははるかに少ないです。
事件の概要
2023年7月1日、北京時間14:47、悪意のある行為者が複数のクロスチェーンブリッジ取引を開始し、Poly NetworkのLock Proxy契約から攻撃者のアドレスに資産を移しました。表面的には、攻撃者は10のチェーンから420億ドル相当の資産を得たように見えます。
画像:Poly Network 攻撃者のウォレットアドレス。出典:Debank
しかし、この数字は誤解を招く可能性があります。例えば、攻撃者はMetisブロックチェーン上で340億ドル以上のPoly-pegged BNBとBUSDを保有していますが、これらのトークンは流動性が不足しているため売却できません。その後、Metisもツイートで確認しましたが、新たに発行されたBNBとBUSDには利用可能な流動性がないため、無価値です。
同様に、大量の残りのトークンも無価値になりました。この事件と攻撃者が発行したトークンについて聞いた後、いくつかのプロジェクトはトークンの投げ売りや価格崩壊を防ぐために流動性を削除する措置を迅速に講じました。例えば、OpenOcean、StackOS、Revomon、NESTは、攻撃者が売却するのを防ぐためにプロジェクトの流動性を取り消しました。
Revomonのツイート
420億ドルという数字は今回の事件による損失を正確に反映しているわけではありませんが、CertiKは少なくとも1000万ドルの資産が5つのイーサリアムウォレットに保管されていることを確認しています。
クロスチェーンブリッジの脆弱性
2022年、クロスチェーンブリッジに影響を与えるセキュリティ事件が13億ドルの経済的損失を引き起こしましたが、この13億ドルはわずか5件の事件によるものです。したがって、クロスチェーンブリッジのセキュリティ脆弱性の破壊力は明らかです。クロスチェーンブリッジを保護することは難しく、巨大な価値とさまざまな攻撃経路が利用可能であるため、これらのインフラは悪意のある行為者の主要なターゲットとなることが多いです。クロスチェーンブリッジは、管理者、発行者、オラクルなどのさまざまな部分で構成されています。ブリッジにロックされている資金の量が膨大であるため、誤った設定、脆弱性、または悪用が重大な損失を引き起こす可能性があります。
攻撃の流れ
Poly Networkは「ロック」(Lock)と「アンロック」(Unlock)関数を使用して、異なるネットワーク間で資産をブリッジします。ユーザーは、ターゲットチェーンで「アンロック」する前に、ソースチェーンでトークンを「ロック」する必要があります。
以下の例は、BSCからETHへのクロスチェーン転送に基づいています。
①攻撃者はまずBSCネットワーク上でLock関数を呼び出し、少量の8PAYトークンのクロスチェーン転送を開始します。
画像:攻撃者が少量の8PAYトークンを使用してクロスチェーン転送を開始。出典:Etherscan
この取引では、データが「0x4a14feea0bdd3d07eb6fe305938878c0cadbfa16904214e0afadad1d93704761c8550f21a53de3468ba599e80300000000000000000000000000」で始まるように指定されています。「0x4a」の4バイトはデータの長さを示しています。
②攻撃者はEthCrossChainManager.verifyHeaderAndExecuteTx()関数を呼び出し、対応するUnlockEvent「アンロック」関数をトリガーしました。データの長さを示す最初の4バイトから、現在の取引データが変更されていることがわかります。
"0x14feea0bdd3d07eb6fe305938878c0cadbfa16904214e0afadad1d93704761c8550f21a53de3468ba59900e00fc80b54905e35ca0d000000000000000000000000000000000000000000"
この取引では、8payトークンの数量が著しく増加しています。
③攻撃者は上記の手順を繰り返しました。これには57種類のトークンが関与し、11の異なるブロックチェーンに分散しています。攻撃者は、そこから約420億ドルの資産を得ました(帳簿価値に基づく)。
画像:Poly Network攻撃者がイーサリアムでアンロックしたトークン。出典: Etherscan
資産の追跡
イーサリアムネットワーク上で、攻撃者は一部のトークンをETHに変換することに成功しました。プロセスは以下の通りです:
攻撃中、攻撃者は取引を通じて1592枚のETH(約305万ドル)を移転し、2240枚のETHをそれぞれ3つのEOA外部アカウントに送金しました。さらに、攻撃者は約301万枚のUSDCと265万枚のUSDTを取得し、それぞれ1557枚と1371枚のETHに交換しました。
攻撃者は残りのトークン資産を新しいEOAアドレスに移転し、各アドレスに1枚のETHを送金しました。(彼らは現在これらのトークンを換金していないにもかかわらず)。プロジェクトの所有者は投げ売りを防ぐためにトークンから流動性を削除したため、一部のトークンは無価値になりました。現時点で、攻撃者はこの事件から約1000万ドルの資金しか得られないようです。
画像:Poly Network攻撃者が資産と数量1のETHを新しいEOAアドレスに転送
最後に
2022年、Web3.0エコシステムはクロスチェーンブリッジ攻撃の壊滅的な影響を受け、Ronin Bridge、Wormhole、Nomadなどのプロジェクトがセキュリティ事件の影響を受けました。Poly Network事件の初期検出結果は、Webエコシステムがこれまでに直面した最大のセキュリティ事件であることを示していますが、新たに発行されたトークンは流動性のサポートが不足しているため、損失はこの記事執筆時点で約1000万ドルに抑えられています。攻撃者がPoly Networkをどのように利用したかについての正確な合意はまだありません。しかし、初期の兆候は、チェーン上の機能が正常に動作しているため、プライベートキーの漏洩またはオフチェーンの脆弱性が原因である可能性が高いことを示しています。