Hallo Martin,
Und das lässt sich in der Tat auch nicht so ohne weiteres fixen (zumindest nicht, ohne eine schöne Sicherheitslücke aufzureissen).
Sicherheit? Die potentielle Sicherheitslücke sehe ich hier nicht.
Naja, doch: potentiell andere Redirects unterschieben. In dem Fall kommt ja die URL von der Client-Seite, und das ist immer problematisch dann darauf umzuleiten; so funktionieren ja die CSRF-Attacken. Man schiebt dem User eine URL unter, so dass er darauf zugreift ohne es zu merken.
Aber ich hätte das Konzept auch anders aufgezogen: Ich hätte das Login-Formular im Kopfbereich jeder Seite eingebettet, solange der Nutzer nicht eingeloggt ist (als Block, der nur bei :hover oder :focus auf volle Größe ausfährt). Dann würde ein Login-Vorgang ohne Änderung der URL ablaufen.
Das allerdings ist eine gute Idee.
Den Referer auszuwerten ist zwar auch umstritten, würde aber in diesem Fall vermutlich weniger Verwirrung stiften.
Der Referer würde hier gar nichts helfen.
Nein? Beim Aufruf des Login-Formulars den Referer in ein hidden-Feld stecken, […]
Siehe oben. URLs vom User entgegen nehmen und dahin umleiten halte ich immer für einen potentiellen Angriffspunkt.
LG,
CK