Broken Object Level Authorization
Auch bekannt als:BOLA · Fehlende Objektberechtigung
Broken Object Level Authorization: Fehlende Prüfung, ob der Aufrufer auf das konkret angeforderte Objekt zugreifen darf. BOLA ist die API-Ausprägung der unsicheren direkten ObjektreferenzInsecure Direct Object ReferenceZugriffskontrollfehler, bei dem Objektkennungen unbefugten Zugriff ermöglichen. und führt die OWASP-API-Top-10 an.
Funktionsweise und Einordnung
Die Anwendung authentifiziert den Aufrufer korrekt, prüft aber nicht, ob die angefragte Objekt-ID zu ihm gehört. Ein gültiges Token genügt dann, um durch fremde Datensätze zu iterieren. Entscheidend ist, dass die Lücke pro Endpunkt und pro Methode besteht: Ein sauber abgesicherter Lesepfad sagt nichts über PUT, PATCH oder DELETE aus. Auch Nebenwirkungen zählen — eine Schreiboperation, die das Rohobjekt in der Antwort zurückspiegelt, kann Daten preisgeben, die der Lesepfad maskiert.
Bedeutung in der Praxis
Wirksam ist nur eine zentrale, objektbezogene Prüfung unmittelbar vor jedem Zugriff, abgeleitet aus der Identität der Sitzung statt aus Parametern der Anfrage. Schwer erratbare Bezeichner erhöhen den Aufwand, ersetzen die Prüfung aber nicht. Weil sich BOLA schlecht durch Signaturen erkennen lässt, gehören automatisierte Tests mit zwei getrennten Testkonten in die Pipeline: Was Konto A sieht, muss Konto B verweigert werden.
Verwandte Begriffe
- Insecure Direct Object ReferenceInsecure Direct Object ReferenceZugriffskontrollfehler, bei dem Objektkennungen unbefugten Zugriff ermöglichen.: Zugriffskontrollfehler, bei dem Objektkennungen unbefugten Zugriff ermöglichen.
- AuthorizationAuthorizationEntscheidung, welche Aktionen eine authentifizierte Identität ausführen darf.: Entscheidung, welche Aktionen eine authentifizierte Identität ausführen darf.
- API SecurityAPI SecuritySchützt APIs vor Missbrauch, unautorisierten Zugriffen und datenbezogenen Angriffen.: Schützt APIs vor Missbrauch, unautorisierten Zugriffen und datenbezogenen Angriffen.
- Access ControlAccess ControlRegelt, wer auf welche Systeme, Daten oder Funktionen zugreifen darf.: Regelt, wer auf welche Systeme, Daten oder Funktionen zugreifen darf.