vorige Präsentation: Verlust der Vertraulichkeit sensibler Daten | zurück zum Buch-Kapitel [esc] | Nächste Präsentation Cross-Site Request Forgery (CSRF)
Die OWASP beschreibt dieses Problem allgemein so:
Die meisten betroffenen Anwendungen realisieren Zugriffsberechtigungen nur durch das Anzeigen oder Ausblenden von Funktionen in der Benutzeroberfläche. Allerdings muss auch beim direkten Zugriff auf eine geschützte Funktion eine Prüfung der Zugriffsberechtigung auf dem Server stattfinden, ansonsten können Angreifer durch gezieltes Manipulieren von Anfragen ohne Autorisierung trotzdem auf diese zugreifen.
Bei der Programmierung von Web-Applikationen muss man sich immer bewusst sein, dass Alles was im Client passiert, bzw vom Client geschickt wird, manipuliert werden kann. Meine serverseitigen Programme müssen jeden Input den sie bekommen selbst prüfen, und können sich nicht darauf verlassen dass so eine Prüfung bereits am Client passiert ist.
Gängige Fehleinschätzungen dieser Art sind:
Jede einzelne PHP-Datei die im Webspace liegt kann auch direkt über HTTP aufgerufen werden. Es bietet sich deswegen an in jeder PHP-Datei zuerst die Zugriffsrechte zu prüfen.
<?php include "functions.php"; check_permissions(); // ....
Mit der Funktion check_permissions
haben wir hier eine zentrale
Stelle geschaffen, an der alle Zugriffsrechte konfiguriert werden können.
Die OWASP bietet noch vertiefende Informationen zu diesem Thema an:
vorige Präsentation: Verlust der Vertraulichkeit sensibler Daten | zurück zum Buch-Kapitel [esc] | Nächste Präsentation Cross-Site Request Forgery (CSRF)
/
#