Training / Berechtigungen
Angemeldet heißt nicht berechtigt.
Du siehst den Unterschied zwischen Anmeldung und Zugriffskontrolle.
← Alle sechs Übungen4 Min. · Beispieldaten · Lokal im Browser
ACCESS CONTROL · LOKALE SIMULATION
4 Min. zum AusprobierenAngemeldet. Aber auch berechtigt?
Eine Shop-Anwendung kennt deine Identität. Reicht das, um jede Rechnungsnummer zu öffnen?
Die Anfrage
GET /rechnungen/1001Session: alice
Start: Als Alice Rechnung 1002 anfragen. Dann die Objektprüfung einschalten und dieselbe Anfrage wiederholen.
Die Antwort
Noch keine Anfrage. Links Konto und Rechnungsnummer auswählen.
Entscheidung im Modell
angemeldet // Besitzer nicht geprüftLetzte Versuche
- Noch keine Einträge.
Eine andere ID ist keine andere Berechtigung.
Der Fehler liegt in der fehlenden Zugriffsprüfung auf das konkrete Objekt. Schwer erratbare IDs können Raten erschweren, ersetzen diese Prüfung aber nicht. Jede relevante Anfrage muss die passende Berechtigung durchsetzen.
Alle Rechnungen und Konten sind erfundene Beispieldaten im Browser. Es wird keine echte Shop-API aufgerufen.
Vertiefen: PortSwigger · Insecure Direct Object References ↗