Poly Networkハッカー攻撃分析:契約の脆弱性が原因でクロスチェーン資金が盗まれた

robot
概要作成中

Poly ネットワークに対するハッカーの攻撃の分析

近日、クロスチェーン相互運用プロトコルPoly Networkがハッカーの攻撃を受け、業界の広範な関心を呼び起こしました。セキュリティ専門家チームはこの事件を深く分析し、攻撃者は私鍵の漏洩を通じて攻撃を実施したのではなく、契約の脆弱性を利用して重要なパラメータを変更したと考えています。

攻撃コア

攻撃者はEthCrossChainManagerコントラクトのverifyHeaderAndExecuteTx関数を通じて、精巧に構築されたデータを渡し、成功裏にEthCrossChainDataコントラクトのkeeperアドレスを変更しました。この操作により、攻撃者はコントラクト資金を引き出す権限を獲得しました。

攻撃の詳細

  1. この攻撃の核心は、EthCrossChainManagerコントラクトのverifyHeaderAndExecuteTx関数が、_executeCrossChainTx関数を通じて特定のクロスチェーントランザクションを実行できることです。

  2. EthCrossChainDataコントラクトの所有者はEthCrossChainManagerコントラクトであるため、後者は前者のputCurEpochConPubKeyBytes関数を呼び出してキーパーを変更できます。

  3. 攻撃者は、verifyHeaderAndExecuteTx関数を使用して特別に細工されたデータを渡して、_executeCrossChainTx関数にキーパーアドレスを変更する操作を実行させます。

  4. keeperアドレスの置き換えに成功した後、攻撃者は取引を構築し、契約から任意の量の資金を引き出すことができます。

攻撃プロセス

  1. 攻撃者はまず、EthCrossChainManagerコントラクトのverifyHeaderAndExecuteTx関数を通じてputCurEpochConPubKeyBytes関数を呼び出し、キーパーを変更します。

  2. その後、攻撃者は新しいkeeper権限を利用して、複数の資金引き出し操作を実施しました。

  3. 攻撃が完了した後、keeperが変更されたため、他のユーザーの正常な取引が拒否されて実行されませんでした。

  4. 類似の攻撃パターンがイーサリアムネットワーク上でも再現されています。

!

まとめ

今回の攻撃の核心は、EthCrossChainData契約のkeeperがEthCrossChainManager契約によって変更可能であり、後者のverifyHeaderAndExecuteTx関数がユーザーから渡されたデータを実行できることです。攻撃者はこのメカニズムを利用して、特定のデータを構築することにより、keeperアドレスを成功裏に変更し、契約資金の制御権を獲得しました。

この出来事は、特にクロスチェーン操作などの複雑なシナリオにおいて、スマートコントラクトのセキュリティ監査の重要性を再度浮き彫りにしました。契約の論理を全面的かつ厳格にチェックする必要があり、潜在的なセキュリティリスクを防ぐためです。

原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • 7
  • 共有
コメント
0/400
GmGnSleepervip
· 16時間前
どこにでも欠陥があるなら、寝ていた方がましだ。
原文表示返信0
CryptoAdventurervip
· 16時間前
又一波初心者の交学費人をカモにする完了
原文表示返信0
BearMarketSurvivorvip
· 16時間前
また一つの資金盤が暴落した
原文表示返信0
BlockchainFoodievip
· 16時間前
悪く調理されたスマートコントラクトスープのような味…もっとセキュリティの調味料が必要ですfr
原文表示返信0
EthMaximalistvip
· 16時間前
この鍵 誰が書いたの
原文表示返信0
DataChiefvip
· 16時間前
また契約が暴露されたね、はは
原文表示返信0
Rugman_Walkingvip
· 16時間前
本当に貪欲なこの人たち
原文表示返信0
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)