📗
owasp-smart-contract-top-10-ja
  • OWASP Smart Contract Top 10 ja
  • OWASP スマートコントラクト Top 10 日本語版
    • リーダー
  • OWASP スマートコントラクト Top 10 2025 日本語版
    • OWASP スマートコントラクト Top 10 2025
    • SC01:2025 - 不適切なアクセス制御 (Improper Access Control)
    • SC02:2025 - 価格オラクル操作 (Price Oracle Manipulation)
    • SC03:2025 - ロジックエラー (Logic Errors)
    • SC04:2025 - 入力バリデーションの欠如 (Lack of Input Validation)
    • SC05:2025 - 再入可能性 (Reentrancy)
    • SC06:2025 - チェックされていない外部呼び出し (Unchecked External Calls)
    • SC07:2025 - フラッシュローン攻撃 (Flash Loan Attacks)
    • SC08:2025 - 整数オーバーフローとアンダーフロー (Integer Overflow and Underflow)
    • SC09:2025 - 安全でないランダム性 (Insecure Randomness)
    • SC10:2025 - サービス拒否 (Denial Of Service)
  • OWASP スマートコントラクト Top 10 2023 日本語版
    • OWASP スマートコントラクト Top 10 2023
    • SC01:2023 - 再入攻撃 (Reentrancy Attacks)
    • SC02:2023 - 整数オーバーフローとアンダーフロー (Integer Overflow and Underflow)
    • SC03:2023 - タイムスタンプの依存性 (Timestamp Dependence)
    • SC04:2023 - アクセス制御の脆弱性 (Access Control Vulnerabilities)
    • SC05:2023 - フロントランニング攻撃 (Front-running Attacks)
    • SC06:2023 - サービス拒否攻撃 (Denial of Service (DoS) Attacks)
    • SC07:2023 - ロジックエラー (Logic Errors)
    • SC08:2023 - 安全でないランダム性 (Insecure Randomness)
    • SC09:2023 - ガス制限の脆弱性 (Gas Limit Vulnerabilities)
    • SC10:2023 - チェックされていない外部呼び出し (Unchecked External Calls)
Powered by GitBook
On this page
  • 説明:
  • 事例 (HospoWise ハック):
  • 影響:
  • 対策:
  • 不適切なアクセス制御攻撃の被害を受けたスマートコントラクトの事例:
  1. OWASP スマートコントラクト Top 10 2023 日本語版

SC04:2023 - アクセス制御の脆弱性 (Access Control Vulnerabilities)

説明:

アクセス制御の脆弱性とは、認可されていないユーザーがコントラクトのデータや機能にアクセスしたり変更できるセキュリティ上の欠陥です。これらの脆弱性は、コントラクトのコードがユーザーのパーミッションレベルに基づいてアクセスを適切に制限できない場合に発生します。スマートコントラクトのアクセス制御は、トークンの生成、プロポーザルの採択、資金の引き出し、コントラクトの一時停止とアップグレード、所有権の変更など、ガバナンスや重要なロジックに関連することがあります。

事例 (HospoWise ハック):

function burn(address account, uint256 amount) public { //No proper access control is implemented for the burn function
        _burn(account, amount);
    }
}

影響:

  • 攻撃者はコントラクト内の重要な機能やデータへの認可されていないアクセスを獲得して、その完全性とセキュリティを危険にさらす可能性があります。

  • 脆弱性は、コントラクトによって管理されている資金や資産の窃取につながり、ユーザーや利害関係者に重大な金銭的損害を引き起こす可能性があります。

対策:

  • 初期化関数は認可されたエンティティによってのみ一度だけ排他的に呼び出されるようにします。

  • コントラクトに Ownable や RBAC (Role-Based Access Control) などの確立されたアクセス制御パターンを使用してパーミッションを管理し、認可されたユーザーだけが特定の機能にアクセスできるようにします。これは機密性の高い機能に onlyOwner やカスタムロールなどの適切なアクセス制御修飾子を追加することで実現できます。

不適切なアクセス制御攻撃の被害を受けたスマートコントラクトの事例:

PreviousSC03:2023 - タイムスタンプの依存性 (Timestamp Dependence)NextSC05:2023 - フロントランニング攻撃 (Front-running Attacks)

Last updated 1 year ago

: 包括的な

: 包括的な

HospoWise ハック
ハック分析
LAND NFT ハック
ハック分析