Christian Seiler: Sessions und Sicherheit

Beitrag lesen

Hallo,

habe ich da jetzt was nicht verstanden ?
session_variablen werden doch auf dem lokalen rechner des users 'gespeichert' - und das ist alles andere als serverseitig oder etwa nicht ?

Um mal Thomas J.S. zu zitieren: "Soviel Halbwissen wie in diesem Thread habe ich schon lange nicht mehr gesehen."

1. Sessions funktionieren so: Der Server speichert sich die Daten unter einer ID ab und übermittelt _nur_ die ID an den User.

2. Session-Cookies sind normalerweise so eingestellt, dass sie bei Beenden des Browsers automatisch gelöscht werden sollen. Wenn die Session-ID aber über die URL mitgeliefert wird, dann steht sie noch in der History. Wenn der User sich nicht ausloggt und den Browser nicht beendet, dann ist ihm wirklich nicht mehr zu helfen.

3. Sessions verfallen nach einer Zeit serverseitig. D.h. selbst mit ex-gültiger ID sind die Session-Daten nach einer Zeit weg.

4. Diese Einstellungen findest Du in der php.ini. Ich würde Sie aber in einer zentralen Datei im Script immer selbst setzen (ini_set(), session_name() vor session_start()), damit man sich sicher sein kann, egal auf welcher Installation man ist.

5. session_destroy() löscht _nur_ die serverseitigen Daten, nicht den Cookie oder das aktuell geladene Session-Array.

6. Dass jemand die Session-ID vielleicht errät, ist extrem unwarscheinlich, aber nicht unmöglich. Im Archiv gibts dazu einige Diskussionen.

Sind jetzt noch Fragen offen?

Grüße,

Christian