mcjoedassin
Messages postés196Date d'inscriptionmercredi 27 juillet 2005StatutMembreDernière intervention 2 septembre 2005
-
3 août 2005 à 20:37
mcjoedassin
Messages postés196Date d'inscriptionmercredi 27 juillet 2005StatutMembreDernière intervention 2 septembre 2005
-
5 août 2005 à 11:44
Voilà le topo. Le client se connecte au serveur. S'il n'envoit pas de cookie de session, le serveur répond par un
Set-Cookie: PHPSESSID=blabla...; path=/
bon. Une fois le cookie acquis, le client va alors envoyer à chaque fois qu'il demande une page son cookie de session via un
Cookie: PHPSESSID=blabla...
Le problème, le voici. Supposons que j'ai mon site à l'adresse A.domain.com et considérons un autre site B.domain.com. Si un client va sur mon site A.domain.com et ouvre une session, le browser va stocker le cookie comme appartenant au
domain A.domain.com. No problem. Mais. Si j'envoie le cookie comme ceci :
le cookie PHPSESSID est stocké dans le browser comme appartenant au domaine .domain.com.
S'il n'y a pas de cookie PHPSESSID défini pour B.domain.com, le browser récupère le cookie de mon site, et se connecte avec LE MEME identifiant de session au site B.domain.com ...
Celà veut dire que le client qui est passé par le site A s'autentifiera
avec le même numéro de session à chaque fois (expires fait que ce
cookie n'est pas détruit), numéro que je connais ...
Ma question donc... êtes vous au courant de ce problème ? Quelles stratégies pour y remédier ?
Il est possible que ce post soit hors-sujet... comme il traite de
sécurité peut-être d'un peu trop près... il est possible que de
nombreux sites soient vulnérables, ma motivation n'est pas de propager
une vulnérabilité mais d'essayer de trouver une solution ...
cs_GRenard
Messages postés1662Date d'inscriptionlundi 16 septembre 2002StatutMembreDernière intervention30 juillet 20081 4 août 2005 à 15:32
Dans un sens, tu dis si jamais t'es sur un hébergeur gratuit et que
B.domain.com est ton ennemie, il pourrait par exemple "effacer" le
cookie de A.domain.com, (en settant ce domain du cooki à ca...) mais la
plupart des browsers desactive le cross domain des cookies.
Tk, je sais pas si c'est de ça que tu voulais parler.
mcjoedassin
Messages postés196Date d'inscriptionmercredi 27 juillet 2005StatutMembreDernière intervention 2 septembre 2005 4 août 2005 à 15:35
en fait, ce qui est interdit c'est si tu es a partir de machin.fr de
mettre un cookie avec comme domaine bidule.com, c'est pas possible. De
même, par exemple le javascript te permet de faire des opérations sur
les cookies en provenance du serveur sur lequel tu as téléchargé ta
page mais en aucun cas sur les cookies en provenance des autres sites
mcjoedassin
Messages postés196Date d'inscriptionmercredi 27 juillet 2005StatutMembreDernière intervention 2 septembre 2005 5 août 2005 à 11:44
Voici ce qu'il sort de ce problème :
particulièrement lorsque l'on est hébergé sous un domaine partagé,
c'est à dire pour les utilisateurs notamment de free, lycos ou ifrance
par exemple, le moyen de sécuriser une session est d'utiliser la
fonction session_regenerate_id à chaque authentification d'un
utilisateur voire à chaque page du site.
Je ne sais pas si quelqu'un lira ce post, mais je pense que ça méritait d'être dit.