Security-testing-missing-function-level-access-control

提供:Dev Guides
移動先:案内検索

機能レベルのアクセス制御がありません

ほとんどのWebアプリケーションは、ユーザーがその機能にアクセスできるようにする前に、機能レベルのアクセス権を確認します。 ただし、サーバー上で同じアクセス制御チェックが実行されない場合、ハッカーは適切な許可なしにアプリケーションに侵入することができます。

単純な図を使用して、この欠陥の脅威エージェント、攻撃ベクトル、セキュリティの弱さ、技術的影響、ビジネスへの影響を理解しましょう。

missing_fn_level_access_control

これは、不足している機能レベルのアクセス制御の典型的な例です-

ハッカーは単にターゲットURLを強制します。 通常、管理者アクセスには認証が必要ですが、アプリケーションアクセスが検証されない場合、認証されていないユーザーは管理者ページにアクセスできます。

' Below URL might be accessible to an authenticated user
http://website.com/app/standarduserpage

' A NON Admin user is able to access admin page without authorization.
http://website.com/app/admin_page

ハンズオン

  • ステップ1 *-最初にユーザーのリストとそのアクセス権限を確認して、アカウントマネージャーとしてログインします。

missing_fn_level_access_control1

  • ステップ2 *-さまざまな組み合わせを試してみると、Larryがリソースアカウントマネージャーにアクセスできることがわかります。

missing_fn_level_access_control1

予防メカニズム

  • 認証メカニズムは、デフォルトですべてのアクセスを拒否し、すべての機能の特定のロールへのアクセスを提供する必要があります。
  • ワークフローベースのアプリケーションでは、リソースへのアクセスを許可する前にユーザーの状態を確認します。