[TYPO3-german] Extbase - Manipulation von Daten
Michael Kasten
home at m-kasten.de
Sat Jan 21 11:13:14 CET 2017
Hallo Stephan,
Am 20.01.2017 um 19:10 schrieb Stephan Schuler:
> Ich bin mir fast sicher, dass in der konkreten Implementierung nicht zwischen 1, 2, 3 und 6 unterschieden wird sondern der Zugriff auf ein Objekt mit irgendeiner Aufgabe. Hier kann ich mir durchaus vorstellen, dass es Situationen gibt in denen der Benutzer einfach nicht den kompletten Wertebereich lesen können soll.
Wenn ich solch eine Unterscheidung anhand von durch den User eingegebenen Parametern treffe sind
diese immer möglicher Manipulation unterworfen.
> Was mach ich in einem Onlineshop wenn der Kunde den POST-Request der einen Artikel in den Warenkorb legt manipuliert? Möglicherweise hab ich Produkte deren Kaufberechtigung an Regeln gebunden sind, Altersbeschränkung bei Alkohol zum Beispiel oder Gebindegrößen nur für Geschäftskunden.
Dann ist dieser Onlineshop oder dessen Berechtigungslogik schlichtweg kaputt, egal ob Onlineshop
oder Informationen generell, sind diese nicht öffentlich muss die Prüfung auf Zugriff anhand von
User-, Gruppenberechtigungen getroffen werden.
> Wenn es dann in den Checkout geht und der Kunde einen Warenkorb bestellen möchte kann ich Payment-Types für Paypal, Nachnahme und Vorkassenzahlung haben, und für Kunden die bereits eine erfolgreiche bezahlte Bestellung über mindestens 25€ abgeschlossen haben erlaube ich auch den Payment-Type der Zahlung per Rechnung.
Üblicherweise gibt es in Onlineshops entsprechende Kundengruppen, wenn ich nicht der Gruppe angehöre
aber durch Manipulation von Parametern die Gruppenberechtigung ändern kann ist dieses
Berechtigungssystem Kaputt.
> Nicht mal wenn es sich nur um GET-Requests handelt und RealURL samt cHash sicherstellen, dass der Benutzer den ID-Parameter verändert bin ich sicher. Ich kann mir News vorstellen die in Gruppen sortiert sind und News bestimmter Gruppen sind nur für angemeldete Benutzer bestimmter Gruppen gedacht. Was hindert einen angemeldeten Benutzer daran, einen gültigen Link auf eine News-Seite an eine fremde Person weiterzuleiten?
Du schreibst ja selber "News bestimmter Gruppen nur für angemeldete Besucher" wenn jemand also einen
Link auf so eine (interne) News weiterleitet, wird bei korrekter Implementierung, derjenige der
diesen Link aufruft nichts zu sehen bekommen, da diese ja nicht eingeloggt ist, wenn sich jemand
einen Login verschafft, und sich anschließend durch Manipulation der Url sich News anzeigen lassen
kann die nicht für Ihn bestimmt ist, ist die Gruppenberechtigung kaputt. (Da man in diesem Fall
hoffentlich nicht nur nach eingeloggt und nicht eingeloggt unterscheidet)
> Grundsätzlich ist „der Benutzer kann den Link oder die ID nicht kennen“ keine sinnvolles Berechtigungskonzept.
Das hat imho niemand behauptet, und kennen muss man überhaupt nichts, dafür gibt es genug Bots :)
Die Berechtigung anhand von Eingaben zu unterscheiden ist und bleibt ein architektonischer Fehler.
my2cent
--
Michael Kasten | http://m-kasten.de
Im wirklichen Leben gibt es kein [Strg]+[Z]
More information about the TYPO3-german
mailing list