Poly Networkがハッカーの攻撃を受け、スマートコントラクトの脆弱性により大量の資金が損失しました。

Poly Networkが重大なハッカー攻撃を受ける:セキュリティの脆弱性が多額の資金損失を引き起こす

最近、クロスチェーン相互運用プロトコルのPoly Networkが深刻なハッカー攻撃事件に遭遇し、業界で広く注目を集めています。セキュリティ専門家チームはこの事件について詳細な分析を行い、攻撃者がスマートコントラクトの脆弱性を利用して制御権を取得する具体的な手法を明らかにしました。

攻撃の核心は、EthCrossChainManagerコントラクト内のverifyHeaderAndExecuteTx関数に存在するセキュリティホールです。この関数は内部の_executeCrossChainTx関数を通じて、ユーザー指定のクロスチェーン取引を実行することができます。攻撃者は巧妙に構築されたデータを使用して、この脆弱性を利用し、EthCrossChainDataコントラクト内のkeeper役割のアドレスを変更しました。

EthCrossChainData コントラクトの所有者は EthCrossChainManager コントラクトであるため、後者は前者の putCurEpochConPubKeyBytes 関数を呼び出してキーパーを変更する権利を持っています。 攻撃者はこれを悪用して、特別に細工されたデータをverifyHeaderAndExecuteTx関数を介して渡し、_executeCrossChainTx関数がEthCrossChainDataコントラクトへのputCurEpochConPubKeyBytes関数呼び出しを実行するようにし、キーパーの役割を攻撃者が制御するアドレスに変更しました。

keeperの役割のアドレス置き換えが完了すると、攻撃者は自由にトランザクションを構築し、コントラクトから任意の量の資金を引き出すことができます。この攻撃手法はBSCとイーサリアムネットワークの両方で使用されています。

BSCネットワークでは、攻撃者が最初に取引を通じてkeeperを変更し、その後複数の攻撃取引を発起して資金を引き出しました。これにより、他のユーザーの通常の取引が拒否されました。イーサリアムネットワークでの攻撃プロセスもこれに似ており、攻撃者は同様に先にkeeperを変更し、その後攻撃を実施して資金を引き出します。

専門家は、今回の攻撃はkeeperの秘密鍵の漏洩によるものではなく、スマートコントラクトの設計上の欠陥に起因していると強調しています。EthCrossChainDataコントラクトのkeeperはEthCrossChainManagerコントラクトによって変更可能であり、後者はユーザーが渡したデータを実行することを許可します。この組み合わせが攻撃者にチャンスを与えました。

この事件は再びスマートコントラクトのセキュリティ監査の重要性を浮き彫りにしました。開発チームはクロスチェーン相互運用プロトコルを設計する際に、各コンポーネント間の相互作用をより慎重に考慮し、重要な機能に対して厳格な権限管理を行う必要があります。また、継続的なセキュリティ監視と迅速な脆弱性修正はユーザー資産を保護するために欠かせません。

!

原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • 6
  • リポスト
  • 共有
コメント
0/400
NeverPresentvip
· 07-26 09:38
スマートコントラクトもあまりサトシではないですね
原文表示返信0
NFTArtisanHQvip
· 07-23 15:38
ポストデジタルパラダイムにおける別の警鐘の物語... スマートコントラクトは、その設計者と同じくらい賢いだけです、正直なところ。
原文表示返信0
AirdropNinjavip
· 07-23 15:30
対決の後、私たちはコインを推測するためにここにいます
原文表示返信0
SolidityStrugglervip
· 07-23 15:18
この時代にまだこんな脆弱性があるとは
原文表示返信0
SybilSlayervip
· 07-23 15:15
本当にひどい、また盗まれた。
原文表示返信0
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)