Contrôle d'accès au niveau de fonction manquant

La plupart des applications Web vérifient les droits d'accès au niveau de la fonction avant de rendre cette fonctionnalité accessible à l'utilisateur. Cependant, si les mêmes contrôles de contrôle d'accès ne sont pas effectués sur le serveur, les pirates peuvent pénétrer dans l'application sans autorisation appropriée.

Comprenons les agents de menace, les vecteurs d'attaque, la faiblesse de la sécurité, l'impact technique et les impacts commerciaux de cette faille à l'aide d'un diagramme simple.

Exemple

Voici un exemple classique de contrôle d'accès au niveau de fonction manquant -

Le hacker force simplement les URL cibles. L'accès administrateur nécessite généralement une authentification, cependant, si l'accès à l'application n'est pas vérifié, un utilisateur non authentifié peut accéder à la page d'administration.

' 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

Mains allumées

Step 1 - Laissez-nous vous connecter en tant que gestionnaire de compte en parcourant d'abord la liste des utilisateurs et leurs privilèges d'accès.

Step 2 - En essayant diverses combinaisons, nous pouvons découvrir que Larry a accès au gestionnaire de compte de ressources.

Mécanismes préventifs

  • Le mécanisme d'authentification doit refuser tous les accès par défaut et fournir l'accès à des rôles spécifiques pour chaque fonction.

  • Dans une application basée sur un flux de travail, vérifiez l'état des utilisateurs avant de leur permettre d'accéder à des ressources.