Sabine: Sicherheitsbedenken/Warenkorb/Frameset

Beitrag lesen

Guten Morgen Heizer!

Guten Morgen

Du könntest die Navigation auf deinen Seiten über post-Formulare machen und die PHPSESSID nur akzeptieren, wenn sie in den $HTTP_POST_VARS[] steht. Das würde dann schon einigen Aufwand bedeuten, dies zu "hacken".

Das habe ich mir bereits überlegt, dann schließe ich aber wahrscheinlich wieder eine Zielgruppe aus. Habe z.b Bilder als Links, die ich dann entweder mit javascript:....submit() verschicken müsste oder aber als submit-Button mit Background-Image, was aber wieder nicht von allen Browsern bzw. Versionen angezeigt wird.

Wobei noch die Frage bleibt, was die Gründe für das von dir beschriebene Verhalten eines Users sein könnte:

  1. Zufall: Sehr unwahrscheinlich, daß er eine gerade  gültige PHPSESSID erwischt, ich denke, daß man diesen Fall eigentlich ausschließen kann, das ist aber mit Sicherheit durch oben beschriebene Methode zu verhindern.

Da hast du Recht, dieses Problem wäre damit gelöst. Wenns Zufall war habe ich den Nutzer damit im Griff

  1. Bosheit: Möglich und auch durch nichts zu verhindern, wobei es schwierig sein dürfte, eine gültige PHPSESSID herauszubekommen, wenn man keinen Zugriff auf einen Rechner hat, der eine vom Server bekommen hat; die PHPSESSID ist auch aus einem Cookie auslesbar, und es ist auch möglich, Cookies zu "simulieren", so daß du vor dem gleichen Problem stehst. Die Frage ist hier aber, was es für einen Hacker bringen kann, sich als ein Kunde auszugeben, der gerade etwas bestellen will. Bei Abschluß einer Bestellung sollte doch ohnehin nach Name / Passwort gefragt werden, und auch nocheinmal alle Artikel aufgelistet werden.

Tja, diese Nutzer sind schon eher mein Problem, auch wenn ich über hidden-fields die PHPSESSID weiter gebe ist es doch kein Problem diese Werte über den Quelltext zu sehen ... Zu Name und Passwort - ja, sobald der Besucher bestellt (also im Warenkorb auf Bestellen klickt), gibt er Name/Passwort ein bzw. registriert sich wenn er ein neuer ist und bekommt Name und Passwort.

  1. Browserwechsel: Ich komme z.b. mit Opera immer wieder auf seiten, die nicht richtig angezeigt werden, da bin ich dann sehr froh, wenn alle angaben in der URL stehen, dann kann ich mit einem anderen Browser direkt da weitersurfen. Scheidet aber bei Framesets sowieso aus (leider, leider, leider, vielleicht sollte man doch darüber nachdenken, ob man das nicht ohne Frames machen könnte, auch wenn ich das gar nicht schreiben möchte, weil ich die Antworten a la "ich habe ein Problem mit Frames" - "Dann nimm keine Frames" nicht sehr schätze...)

Ja, mir wäre es auch lieber ohne Frames aus allen hinreichend bekannten Gründen. Ich überlege aber wirklich ob es nicht sinnvoll wäre, jedesmal das gesamte Frameset neu zu laden. Der Besucher ruft dann z.B. die start.php auf, das Frameset wird entweder geladen und z.B. der Seitenname in einer Variable gespeichert und so in <frame src="$variable"... eingesetzt oder direkt das Frameset dynamisch erzeugt ... Darin sehe ich eigentlich nicht so das Problem, aber wie bekomme ich meine Nutzer in Griff ... Über Post wäre sicher gut, wenn es da nicht die Möglichkeit gäbe Javascript zu deaktivieren ...

Danke für deine Anregungen Heizer!

Schöne Grüße
Sabine

Heizer