Fehlende Zugriffskontrolle auf Funktionsebene

Die meisten Webanwendungen überprüfen die Zugriffsrechte auf Funktionsebene, bevor sie dem Benutzer diese Funktionalität zugänglich machen. Wenn jedoch nicht dieselben Zugriffskontrollprüfungen auf dem Server durchgeführt werden, können Hacker ohne entsprechende Berechtigung in die Anwendung eindringen.

Lassen Sie uns anhand eines einfachen Diagramms die Bedrohungsagenten, Angriffsmethoden, Sicherheitsschwächen, technischen Auswirkungen und geschäftlichen Auswirkungen dieses Fehlers verstehen.

Beispiel

Hier ist ein klassisches Beispiel für die Zugriffskontrolle auf fehlender Funktionsebene:

Der Hacker erzwingt einfach Ziel-URLs. Normalerweise erfordert der Administratorzugriff eine Authentifizierung. Wenn der Anwendungszugriff jedoch nicht überprüft wird, kann ein nicht authentifizierter Benutzer auf die Administrationsseite zugreifen.

' 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

Hände an

Step 1 - Melden Sie sich als Account Manager an, indem Sie zuerst die Liste der Benutzer und ihrer Zugriffsrechte durchgehen.

Step 2 - Wenn wir verschiedene Kombinationen ausprobieren, können wir feststellen, dass Larry Zugriff auf den Ressourcen-Account-Manager hat.

Vorbeugende Mechanismen

  • Der Authentifizierungsmechanismus sollte standardmäßig jeglichen Zugriff verweigern und für jede Funktion Zugriff auf bestimmte Rollen gewähren.

  • Überprüfen Sie in einer Workflow-basierten Anwendung den Status der Benutzer, bevor Sie ihnen den Zugriff auf Ressourcen ermöglichen.