it-swarm.com.de

Warum sollten Sie den Benutzer nach einem Zurücksetzen des Kennworts auf eine Anmeldeseite umleiten?

Das OWASP Forgot Password Cheat Sheet schlägt vor:

Bei jedem erfolgreichen Zurücksetzen des Kennworts sollte die Sitzung ungültig gemacht und der Benutzer auf die Anmeldeseite umgeleitet werden

Ich verstehe nicht, warum das so wichtig ist. Gibt es eine Sicherheitsgrundlage für diese Empfehlung und wenn ja, um welche handelt es sich?

85
Adam Parkin

Nehmen wir an, ein Angreifer hat Ihr Passwort. Sie melden sich an und setzen es zurück. Wenn das Zurücksetzen nicht alle vorhandenen Sitzungen ungültig macht, hat der Angreifer weiterhin Zugriff, solange er seine Sitzung nicht ablaufen lässt.

Der Reset hat in diesem Szenario eigentlich nichts erreicht.

Je nachdem, was die Site tut, kann es auch Probleme geben, wenn Sie sich unter einem Passwort angemeldet haben, das jetzt veraltet ist. Nehmen wir an, Ihr Passwort wird verwendet, um etwas zu entsperren. Sie sind mit "Passwort1" angemeldet, aber auf dem Server ist Ihr Passwort jetzt als "Passwort2" gespeichert. Was passiert? Dies ist offensichtlich hypothetisch, veranschaulicht aber hoffentlich den Punkt.

Die Weiterleitung zum Anmeldebildschirm ist wohl nur eine Empfehlung. Ich bin nicht sicher, warum es wichtig ist, wohin Sie den Benutzer senden, aber aus Sicht der Benutzerfreundlichkeit ist es sinnvoller, den Benutzer auf eine Anmeldeseite anstatt auf die Startseite zu senden.

104
Jay

Schutz von Sitzungen auf möglicherweise gefährdeten Konten

Es ist nicht erforderlich, tatsächlich zur Anmeldeseite umzuleiten, wenn die Sitzungsverwaltung bei Kennwortänderung sicher erfolgt. Das heißt, solange alle aktuellen Sitzungskennungen ungültig sind und die aktuelle Sitzung an eine neue Sitzungskennung angehängt wird (normalerweise als Token in einem Authentifizierungscookie ausgegeben - der Cookie wird nur an die Sitzung gesendet, die gerade das Kennwort geändert hat) Es besteht kein Risiko, dass ein Angreifer, der sich bereits im Konto befindet, angemeldet bleibt.

OWASP-Artikel

Die Gründe für den OWASP-Artikel werden nachstehend erläutert. An dem Sicherheitsaspekt ist nichts auszusetzen, es gibt jedoch einige Usability-Probleme.

Die Funktion zum Zurücksetzen von Passwörtern wird häufig verwendet, wenn ein Benutzer sein Konto sichern möchte.

Durch das Ungültigmachen aller vorhandenen Sitzungen beim Zurücksetzen des Kennworts stellt das System sicher, dass sich nur die Person mit dem neuen Kennwort anmelden kann.

Angenommen, ein Angreifer, der mit dem alten Kennwort Zugriff auf das Konto erhalten hat, ist angemeldet. Durch Zurücksetzen aller Sitzungen wird der Angreifer abgemeldet.

Warum den aktuellen Benutzer abmelden, höre ich Sie fragen?

Angenommen, der Angreifer reitet auf der Sitzung des aktuellen Benutzers, z. B. mit einer Sicherheitsanfälligkeit Sitzungsfixierung . Dies bedeutet, dass der Angreifer dieselbe Sitzung hat wie der echte Benutzer. Durch das Zurücksetzen der aktuellen Sitzung wird auch sichergestellt, dass sich niemand auf dem Konto befindet, der keinen Zugriff haben soll.

Das Umleiten auf die Anmeldeseite in Ihrem obigen Zitat beschreibt wirklich die Tatsache, dass Sie den Benutzer von der aktuellen und allen Sitzungen abmelden sollten (es besteht jedoch kein Risiko, dass Sie ihn nicht in eine neue Sitzung mit einer neuen Kennung einfügen).

42
SilverlightFox

Die anderen Antworten sind aus netsec-Sicht wahrscheinlich korrekter, aber ich wollte hinzufügen, dass Sie auch sicherstellen müssen, dass sich der Benutzer tatsächlich mit seinem neuen Passwort anmelden kann. Dies macht deutlich, wenn etwas schief geht, beispielsweise wenn der Browser ein altes Passwort automatisch ausfüllt.

Außerdem wird verhindert, dass Benutzer das Zurücksetzen des Kennworts als Anmeldung verwenden. In einem meiner Konten ist es einfacher, die Sicherheitsfragen zu beantworten, als sich das Kennwort zu merken, da ich bei jedem Zurücksetzen ein eindeutiges Kennwort festlegen muss und mich nicht daran erinnern kann.

33
John Biddle

Es gibt nur einen möglichen Sicherheit - Grund, Sie zur Anmeldeseite zu senden, da alle alten Sitzungen ungültig gemacht werden können und Ihre aktuell aktive Sitzung das Passwort automatisch ersetzt hat:
Dadurch wird die Verwendung des Zurücksetzens des Kennworts für die Anmeldung umständlicher, was dazu führt, dass Sie es seltener verwenden und somit sicherer vor Abhören und versehentlicher Offenlegung sind.

Es gibt auch einen Usability-Grund für, der Sie dorthin sendet: Er stellt sicher, dass Sie das neue Passwort tatsächlich verwenden können, und jeder Passwort-Cache im Browser wird aktualisiert.

8
Deduplicator

Wenn Benutzer zulassen dürfen, dass der Browser ihre Kennwörter speichert, kann der Browser durch Umleiten des Benutzers zur Anmeldeseite das neue Kennwort auf dieser Seite erfassen. Andernfalls füllt das nächste Mal, wenn sich der Benutzer im Browser anmeldet, das Kennwortfeld "hilfreich" mit dem alten Kennwort vor - eine Aktion, die wahrscheinlich Verwirrung stiftet, wenn der Benutzer nicht merkt, was los ist.

6
supercat

Es ist sehr einfach, wenn wir die Sicherheitsmaßnahmen im Auge behalten. Es macht tatsächlich alle Ihre aktiven Sitzungen sowie das Gerät des Diebstahlers ungültig, der die Probleme verursacht hat.

0
Sarmad Ajmal

wenn Sie sich direkt nach dem Zurücksetzen des Passworts erneut anmelden

a) Es ist wahrscheinlicher, dass Sie sich das Passwort 3 Sekunden später als 3 Tage später merken.

b) Ihr Browser kann den Benutzer dann fragen, ob er sein gespeichertes Passwort mit dem neuen aktualisieren möchte, und der Browser merkt es sich dann auf der Anmeldeseite.

0
hamish

Neben der Bereitstellung eines einfachen Mechanismus zum Einrichten einer neuen gültigen Sitzung, zum Überprüfen der Funktionsweise des neuen Kennworts und zum Abmelden aktueller Sitzungen besteht der zusätzliche Vorteil darin, dass Ihr Benutzer das Kennwort ein drittes Mal eingibt, um das Erinnern zu erleichtern.

0
Erroneous

Zusätzlich zu vielen anderen hier angesprochenen Punkten bietet es Vorteile, den Mechanismus zur Sitzungserstellung aus Sicht der Wartbarkeit/Härtung/Prüfung auf nur einen Einstiegspunkt zu beschränken.

Ein Benutzer, der sein Kennwort im gesperrten Zustand zurücksetzt, sollte nicht unbedingt als angemeldeter Benutzer behandelt werden, selbst nachdem er durch den Wiederherstellungsnachweis für Identitätsrahmen gesprungen ist, den Sie haben. Andernfalls müssen Sie bei Ihren Audits/Pen-Tests eine zusätzliche Sequenz testen.

0
Bill