Sebastian Goertz: max. Sicherheit beim Arbeiten von Login mit Sessions (PHP)

Beitrag lesen

Hallo Bademeister,

Wovor willst Du Sicherheit? (Ist ne echte Frage.)

Vor Missbrauch, Hacking und DAU's

MD5 ist unsicher. Schau Dir mal die SHA-2-Hashes an. Ansonsten suche nach dem Stichwort "Salt" im Archiv.

Danke, das ist schonmal ein Punkt :)

Bei jedem weiteren Aufruf einer Seite wird nun erneut Benutzername und Passwort überprüft.
Nein! Dazu müsste der Nutzer jedes Mal wieder die Daten senden.

Der Nutzer übermittels jedes Mal nur seine SessionID. Die Überprüfung findet dann über die gespeicherten Session-Variablen statt.

Ist der letzte Schritt unnötig?
Mehr noch: er ist problematisch. Er erhöht die Sicherheit nicht, und schafft anderesherum evtl. Dritten zusätzliche Möglichkeiten

Also ist die erneute Überprüfung bei jedem Seitenaufruf wohl abgewählt. Vielen Dank genau dort habe ich nach Klarheit gesucht.

1.: Sehr ratsam ist ein automatischer Logout

Check: alle 30min. Bringt außerdem als Begleiterscheinung das nette "* User online"-Feature.

2.: Wenn Dir danach ist, kannst Du aktiv mit einem Hinweis anregen, dass Deine Nutzer vernünftige Passwörter verwenden und nicht etwa "qwertz" oder dergleichen.

Sehe ich ähnlich: Hinweis ja, Verbot nein! Aber ich denke über eine Abfrage nach, welche dies prüft und einen gezielten Hinweis gibt, welcher zu bestätigen wäre.

3.: Überlege Dir, wozu man mit einem normalen Login Zugang haben sollte und wozu nicht. Wenn zum Beispiel der Nutzer in irgendwelchen Nutzereinstellungen die Möglichkeit hat, sein Passwort zu ändern, dann sollte das nur mit erneuter Eingabe des alten Passwortes möglich sein.

Check!

4.: Du solltest auf mehrfach gescheiterte Login-Versuche reagieren.

Danke, das ist noch ein gute Punkt, den ich einbauen werde!

Gruß,
Sebastian.