再入攻撃
状態の更新が完了する前に契約が自身を再呼び出し、資金を流出させる脆弱性。
状態の更新が完了する前に契約が自身を再呼び出し、資金を流出させる脆弱性。
entity.trust_high
2026年9月 · 鮮度スコア: 50%
再入攻撃とは?
状態の更新が完了する前に契約が自身を再呼び出し、資金を流出させる脆弱性。
- Category
- concept
- Type
- Authority Node
- 情報源
- 1
ナレッジグラフ
26 件の関係概要
再入攻撃とは、状態の更新が完了する前にスマートコントラクトが自身を再呼び出し、資金を流出させる攻撃手法です。これは、有名なDAOハッキング事件の攻撃ベクトルでした。この攻撃は、スマートコントラクトの実行における状態変更の順序を悪用するものです。
仕組み
悪意のあるスマートコントラクトが外部関数を呼び出し、被害者のスマートコントラクトが状態を更新する前に、そのスマートコントラクトを再呼び出しします。処理の最後まで残高が更新されないため、呼び出しが繰り返されることで資金が流出します。チェック・エフェクト・インタラクション(CEI)や再入防止ガード(reentrancy guards)によってこれを防ぐことができます。
重要性
再入(Reentrancy)は、スマートコントラクトの脆弱性の中でも最も危険なもののひとつであり、多大な損失を引き起こします。開発者や監査担当者にとって、これを理解することは不可欠です。最新のフレームワークには、組み込みの保護機能が備わっています。
関連する概念
再入攻撃は、スマートコントラクトの脆弱性や監査に関連しています。これらは、コーディングパターンやガードによって防ぐことができます。
よくある質問
What is 再入攻撃?
状態の更新が完了する前に契約が自身を再呼び出し、資金を流出させる脆弱性。
How does 再入攻撃 work?
再入攻撃とは、状態の更新が完了する前にスマートコントラクトが自身を再呼び出し、資金を流出させる攻撃手法です。これは、有名なDAOハッキング事件の攻撃ベクトルでした。この攻撃は、スマートコントラクトの実行における状態変更の順序を悪用するものです。 悪意のあるスマートコントラクトが外部関数を呼び出し、被害者のスマートコントラクトが状態を更新する前に、そのスマートコントラクトを再呼び出しします。処理の最後まで残高が更新されないため、呼び出しが繰り返されることで資金が流出します。チェック・エフェクト・インタラクション(CEI)や再入防止ガード(reentrancy guards)によってこれを防ぐこ
Why does 再入攻撃 matter in Web3?
悪意のあるスマートコントラクトが外部関数を呼び出し、被害者のスマートコントラクトが状態を更新する前に、そのスマートコントラクトを再呼び出しします。処理の最後まで残高が更新されないため、呼び出しが繰り返されることで資金が流出します。チェック・エフェクト・インタラクション(CEI)や再入防止ガード(reentrancy guards)によってこれを防ぐことができます。 再入(Reentrancy)は、スマートコントラクトの脆弱性の中でも最も危険なもののひとつであり、多大な損失を引き起こします。開発者や監査担当者にとって、これを理解することは不可欠です。最新のフレームワークには、組み込みの保護機能