Heim  >  Artikel  >  System-Tutorial  >  Die versteckten Gefahren der Funktion „Passwort merken“.

Die versteckten Gefahren der Funktion „Passwort merken“.

王林
王林nach vorne
2024-02-08 08:33:09795Durchsuche

Die versteckten Gefahren der Funktion „Passwort merken“.

Auf diese Weise können Sie sich auf allen Geräten und Clients anmelden und mehrere Benutzer können sich gleichzeitig anmelden. Das ist nicht sehr sicher. Hier sind einige sicherere Methoden als Referenz:

1 Speichern Sie im Cookie drei Dinge: Benutzername, Anmeldesequenz, Anmeldetoken.

a) Benutzername: im Klartext gespeichert.
b) Anmeldesequenz: eine von MD5 gehaschte Zufallszahl, die nur aktualisiert wird, wenn der Benutzer zur Eingabe eines Passworts gezwungen wird (z. B. wenn der Benutzer das Passwort ändert).
c) Anmeldetoken: Eine zufällige Zahl, die von MD5 gehasht wurde. Sie ist nur innerhalb einer Anmeldesitzung gültig.

2 Die oben genannten drei Dinge werden auf dem Server gespeichert. Der authentifizierte Benutzer des Servers muss diese drei Dinge im Client-Cookie überprüfen.
3 Welche Wirkung wird ein solches Design haben? Es wird folgende Auswirkungen haben,

a) Login-Token ist eine Einzelinstanz-Anmeldung. Dies bedeutet, dass ein Benutzer nur eine Anmeldeinstanz haben kann.

b) Anmeldesequenz wird zur Betrugserkennung verwendet. Wenn das Cookie des Benutzers gestohlen wird und der Dieb dieses Cookie verwendet, um auf die Website zuzugreifen, geht unser System davon aus, dass er ein legitimer Benutzer ist, und aktualisiert dann das „Anmeldetoken“. Das System stellt fest, dass nur „Benutzername “ mit „Anmeldesequenz“ identisch ist, aber „Anmeldetoken“ falsch ist. In diesem Fall weiß das System, dass dieser Benutzer möglicherweise vorhanden war gestohlen. Daher kann das System die Anmeldesequenz und das Anmeldetoken löschen und ändern, wodurch alle Cookies ungültig werden und der Benutzer zur Eingabe eines Passworts aufgefordert wird. Und warnen Sie Benutzer vor der Systemsicherheit.

4 Natürlich das obige Design hat immer noch einige Probleme

Zum Beispiel: Derselbe Benutzer meldet sich von verschiedenen Geräten aus an oder verwendet sogar verschiedene Browser, um sich auf demselben Gerät anzumelden. Ein Gerät macht das Anmeldetoken und die Anmeldesequenz eines anderen Geräts ungültig, was dazu führt, dass sich andere Geräte und Browser erneut anmelden müssen und der Eindruck entsteht, dass Cookies gestohlen wurden. Daher müssen Sie auch die IP-Adresse im Server berücksichtigen. Die folgenden drei Probleme sind beteiligt.

a) Wenn Sie sich mit einem Passwort anmelden, müssen wir die „Anmeldesequenz“ und das „Anmeldetoken“ des Servers nicht aktualisieren (die Cookies müssen jedoch aktualisiert werden). Weil wir glauben, dass nur der echte Benutzer das Passwort kennt.

b) Wenn die IP dieselbe ist, müssen wir die „Anmeldesequenz“ und das „Anmeldetoken“ des Servers nicht aktualisieren (aber das Cookie muss aktualisiert werden). Weil wir glauben, dass derselbe Benutzer dieselbe IP hat (natürlich hat dasselbe LAN auch dieselbe IP, aber wir glauben, dass dieses LAN vom Benutzer steuerbar ist. Diese Funktion wird in Internetcafés nicht empfohlen).

c) Wenn (IPs unterschiedlich sind&& kein Passwort zum Anmelden verwendet wird), dann ändert sich „Anmeldetoken“ zwischen mehreren IPs (Anmeldetoken wird zurückgegeben und zwischen zwei oder mehr IPs zurückgegeben) Transformation), Wenn es innerhalb eines bestimmten Zeitraums eine bestimmte Anzahl erreicht, wird das System wirklich das Gefühl haben, dass die Wahrscheinlichkeit eines Diebstahls sehr hoch ist. Zu diesem Zeitpunkt löscht das System „Anmeldesequenz“ und „Anmeldetoken“. " im Hintergrund, um die Cookies ungültig zu machen. , wodurch Benutzer zur Eingabe von Passwörtern gezwungen werden (oder von Benutzern aufgefordert werden, Passwörter zu ändern), um sicherzustellen, dass Cookies auf mehreren Geräten konsistent sind.

Ich denke, das ist eine gute Lösung. Die Illusion des Cookie-Diebstahls kann sogar auf „selbstzerstörerische“ Weise realisiert werden – die später angemeldeten Benutzer von QQ verdrängen die zuvor angemeldeten Benutzer.

Das obige ist der detaillierte Inhalt vonDie versteckten Gefahren der Funktion „Passwort merken“.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen