Skip to main content

ソース: Сointеlеgrаph

イーサリアム マージ後のプルーフ オブ ワーク (PoW) チェーン ETHW は、週末にオンチェーン リプレイ攻撃を受けたという主張を鎮圧するために動きました。

スマート コントラクトの監査会社である BlockSec は、9 月 16 日に発生したリプレイ攻撃であると報告しました。この攻撃では、攻撃者は、分岐したイーサリアム PoW チェーンでイーサリアムのプルーフ オブ ステーク (PoS) チェーンの呼び出しデータをリプレイすることで ETHW トークンを取得しました。

BlockSec によると、エクスプロイトの根本的な原因は、ETHW チェーンの Omni クロスチェーン ブリッジが古い chainID を使用し、クロスチェーン メッセージの正しい chainID を正しく検証していなかったという事実によるものでした。

イーサリアムのメインネットとテスト ネットワークは、ネットワーク ID とチェーン ID (chainID) の 2 つの識別子を異なる用途に使用します。 ノード間のピアツーピア メッセージはネットワーク ID を利用し、トランザクション署名は chainID を利用します。 EIP-155 は、ETH と Ethereum Classic (ETC) ブロックチェーン間のリプレイ攻撃を防ぐ手段として chainID を導入しました。

BlockSec は、リプレイ攻撃にフラグを立てた最初の分析サービスであり、ETHW に通知しました。ETHW は、リプレイ攻撃がチェーン上で実行されたという最初の主張をすぐに却下しました。 ETHW は、コントラクト レベルでのエクスプロイトを Omni Bridge に通知しようとしました。

攻撃を分析した結果、攻撃者はまず、Gnosis チェーンの Omni ブリッジを介して 200 WETH を転送した後、PoW チェーンで同じメッセージを再生し、追加の 200ETHW を獲得したことが明らかになりました。 これにより、PoW チェーンに展開されたチェーン コントラクトの残高が枯渇しました。

関連: 十字線のクロスチェーン: ハッキングはより良い防御メカニズムを要求する

BlockSec がオムニ ブリッジ ソース コードを分析したところ、chainID を検証するロジックが存在することが示されましたが、コントラクトで使用されている検証済みの chainID は、unitStorage という名前のストレージに格納されている値から取得されたものでした。

チームは、これは EIP-1344 によって提案され、イーサリアム マージ後のフォークによって悪化した、CHAINID オペコードを通じて収集された正しい chainID ではないと説明しました。

「これはおそらく、コードがかなり古いためです (Solidity 0.4.24 を使用)。 コードは、PoW チェーンのフォークまで常に正常に動作します。」

これにより、攻撃者は ETHW や、PoW チェーンのブリッジが所有する可能性のある他のトークンを収集し、関連するトークンをリストする市場でこれらを取引することができました。 は、エクスプロイト中に抽出された値を確認するために BlockSec に連絡を取りました。

スマート コントラクト ブロックチェーンが PoW から PoS に移行した Ethereum の Merge イベントが成功した後、マイナーのグループは、ハード フォークを通じて PoW チェーンを継続することを決定しました。


ソース: Сointеlеgrаph

Leave a Reply