Zum Inhalt springen

PHP Sicherheit: Sessions

Gehe hier kurz stichpunktartig auf einige grundsätzliche Dinge ein, die bei den Sessions zu beachten sind. Sowohl Konfiguration als auch ggf. selbst einzubauende Erweiterungen.

  • Login: Nur SSL verschlüsselt (sollte selbstverständlich sein); neue Session ID vergeben (session_regnerate_id())
  • Fortführen einer Session: Ggf. zugehörige IP / MAC – Adresse zur Session ID Speichern und bei der Wiederaufnahme einer Session vergleichen
  • Keine SessionIDs in den URLs verwenden, ausschließlich Cookies. -> session.use_cookies=On und session.use_only_cookies=On
  • session.use_strict_mode=On: Unterbindet das verwenden von nicht initialisierten Session IDs (z.B. vom User gelieferte)
  • session.cookie_httponly=On: Den JavaScript Zugriff auf den Session Cookie unterbinden
  • session.cookie_lifetime=0: Definiert, ob die Session erneut verwendet werden kann. Wenn 0, wird dem Browser mitgeteilt, den Cookie beim Löschen des Browsers zu entfernen. Wenn ein Autologin Feature benötigt wird, das bitte selbst implementieren oder Frameworklösung benutzen, nicht (alleine) die ID verwenden.

Praktisch wäre hier generell die Nutzung einer Framework Funktionalität oder entsprechend ergänzenden Implementierung anzuraten. Dazu kommt nochmal bei Zeiten ein Beitrag.. 🙂

Kommentare sind geschlossen, aber Trackbacks und Pingbacks sind möglich.