Maison  >  Article  >  Tutoriel système  >  Les dangers cachés de la fonction « mémoriser le mot de passe »

Les dangers cachés de la fonction « mémoriser le mot de passe »

王林
王林avant
2024-02-08 08:33:09743parcourir

Les dangers cachés de la fonction « mémoriser le mot de passe »

De cette façon, vous pouvez vous connecter sur tous les appareils et clients, et plusieurs utilisateurs peuvent se connecter en même temps. Ce n'est pas très sûr. Voici quelques méthodes plus sûres pour votre référence :

1 Dans le cookie, enregistrez trois éléments : nom d'utilisateur, séquence de connexion, jeton de connexion.

a) Nom d'utilisateur : stocké en texte clair.
b) Séquence de connexion : un nombre aléatoire haché par MD5, mis à jour uniquement lorsque l'utilisateur est obligé de saisir un mot de passe (par exemple : l'utilisateur change le mot de passe).
c) Jeton de connexion : Un nombre aléatoire qui a été haché par MD5. Il n'est valable que dans une seule session de connexion. Une nouvelle session de connexion le mettra à jour.

2 Les trois éléments ci-dessus seront stockés sur le serveur. L'utilisateur authentifié du serveur doit vérifier ces trois éléments dans le cookie client.
3 Quel effet aura une telle conception ? Elle aura les effets suivants,

a) Le Jeton de connexion est une connexion à instance unique. Cela signifie qu'un utilisateur ne peut avoir qu'une seule instance de connexion.

b) La Séquence de connexion est utilisée pour la détection des fraudes. Si le cookie de l'utilisateur est volé et que le voleur utilise ce cookie pour accéder au site Web, notre système pensera qu'il est un utilisateur légitime et mettra alors à jour le "jeton de connexion". Cependant, lorsque le véritable utilisateur reviendra visiter, le Le système constatera qu'il n'y a que le nom "utilisateur" " est le même que "séquence de connexion", mais "jeton de connexion" est faux. Dans ce cas, le système saura que cet utilisateur a peut-être été. volé. Par conséquent, le système peut effacer et modifier la séquence de connexion et le Jeton de connexion , ce qui invalidera tous les cookies et demandera à l'utilisateur de saisir un mot de passe. Et avertissez les utilisateurs de la sécurité du système.

4 Bien sûr, la conception ci-dessus présente encore quelques problèmes

Par exemple : le même utilisateur se connecte depuis différents appareils, ou utilise même différents navigateurs pour se connecter sur le même appareil. Un appareil invalidera le jeton de connexion et la séquence de connexion d'un autre appareil, obligeant d'autres appareils et navigateurs à se reconnecter et créant l'illusion que des cookies ont été volés. Par conséquent, vous devez également prendre en compte l'adresse IP du serveur Les trois problèmes suivants sont impliqués.

a) Si vous vous connectez avec un mot de passe, nous n'avons pas besoin de mettre à jour la "

séquence de connexion" et le "jeton de connexion" du serveur (mais les cookies doivent être mis à jour). Parce que nous pensons que seul le véritable utilisateur connaît le mot de passe.

b) Si l'

IP est la même, alors nous n'avons pas besoin de mettre à jour la « séquence de connexion » et le « jeton de connexion » du serveur (mais le cookie doit être mis à jour). Parce que nous pensons que le même utilisateur a la même IP (bien sûr, le même LAN a aussi la même IP, mais nous pensons que ce LAN est contrôlable par l'utilisateur. Cette fonctionnalité n'est pas recommandée dans les cybercafés).

c) Si (

Les IP sont différentes&& aucun mot de passe n'est utilisé pour se connecter), alors "jeton de connexion" changera entre plusieurs IP (le jeton de connexion est renvoyé et renvoyé entre deux ou plusieurs IP) transformation), lorsqu'il atteint un certain nombre de fois au cours d'une certaine période de temps, le système aura vraiment l'impression que la possibilité d'être volé est très élevée. À ce moment-là, le système effacera « séquence de connexion » et « jeton de connexion. " en arrière-plan pour invalider les cookies. , obligeant les utilisateurs à saisir des mots de passe (ou obligeant les utilisateurs à modifier leurs mots de passe) pour garantir la cohérence des cookies sur plusieurs appareils.

Je pense que c'est une bonne solution. L'illusion du vol de cookies peut même être réalisée de manière "autodestructrice" : les utilisateurs connectés ultérieurement à QQ évincent les utilisateurs connectés précédemment.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer