|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : juin 2002 Messages : 577 ![]() |
Bonjour,
je me pose une question de sécurité. Si dans une page login.php, j'ai un formulaire avec : - 2 champs (login + pass) - méthode POST - action = verif_login.php et dans cette page verif_login.php j'effectue les requêtes mysql pour savoir si le couple login/pass rentré est OK. PS : dans un soucis de sécurité, j'utilise la fonction sha1() de php pour générer un hash du password, sachant que dans la base le password est rentré en utilisant la fonction sha1 de MySQL. Comme la requête de post repart vers le serveur, qqun pourrait-il l'écouter/la sniffer pour en récupérer le couple login/pass qui repart en post ? Parce que dans ce cas-là, ça sert à rien que je m'enquiquine à hasher le password pour ne pas qu'il circule en clair dans ma requête SQL, qui de plus est exécutée par le serveur en local ... @+ |
|
|
00
|
|
|
#2 |
![]() ![]() Julien PauliArchitecte de système d'information Inscription : mai 2006 Messages : 597 ![]() |
Evidemment que c'est écoutable sur le réseau, il faut crypter la communication, par SSL par exemple.
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Deux choses :
1/ la sécurité entre le client et le serveur: a ce niveau la, le login/pass circule en clair donc qqn qui sniffe cette connexion pourrait effectivement avoir acces au login et pass en clair 2/ la sécurité du serveur : l'intéret de stocker non pas un password en clair mais un hash du pass permet d'empecher que quelqu'un qui accède à ton serveur puisse voler la liste de tous les mots de passes de tes utilisateurs, d'ou l'intéret du hash. Pour sécuriser le premier point il me semble que tu peux utiliser https ou j'avais lu un article je sais plus trop où qui proposait une solution toute bete : crypter/hasher le password directement chez le client AVANT de le transmettre en POST. MAIS ca nécessite d'avoir javascript activé sur le client (ce qui n'est pas forcément le cas). Du coup la personne regardait si javascript était activé, si oui le mot de passe était crypté avant transmission si non transmis en clair. Maintenant quand j'écris ca je me dis qu'en sniffant cette requete on récupère le mot de passe crypté et que ca suffit donc pour accéder au compte du client (mais ca protege tout de meme le mot de passe client). Et j'ajouterai (je réfléchis en postant ) que tu peux crypter le mot de passe d'une manière sure (en utilisant un id envoyé a la connexion, etc.)Donc voila j'espère ne pas avoir été complètement incompréhensible! |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : juin 2002 Messages : 577 ![]() |
bonjour,
merci pour vos réponses. Donc il semble qu'il faille utiliser SSL pour crypter les dialogues client / serveur Bon, mais le pire c'est que j'ai essayé, mais apparemment c'est pas possible avec WAMP. Je pense qu'il faut j'installe Apache avec OpenSSL indépendamment de WAMP. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com