Formation Google AnalyticsSavez-vous bien utiliser les outils de mesure d'audience ?
Effectuez-vous un calcul de ROI (Retour sur investissement) pour savoir comment améliorer vos campagnes emarketing ?
Savez-vous utiliser les bons outils pour booster votre taux de transformation ?
La formation Web Analytics de Ranking Metrics, présentée par un expert reconnu officiellement par Google Analytics, vous apportera les réponses à toutes vos questions !
===> Informations et inscriptions.

Session et securite

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Lun Sep 10, 2007 21:15    Sujet du message: Session et securite

Bonjour,

Existe-t-il une fonction PHP pour signer les actions faites par un utilisateur qui est enregistre (avec session PHP) ?

De plus, peut-on eviter que les variables de session soient modifiees par l'utilisateur ? Ces variables la sont elles sures ?
par exemple j'ai une page

<?php
session_start();
echo $nom;
?>

ou $nom est une variable de session. Si l'utilisateur appelle
mapage.php?nom=julie
il change le resultat de echo $nom !!!

Merci
 
malopo
bozoleclown
WRInaute passionné
WRInaute passionné

Inscrit le: 24 Nov 2005
Messages: 842
Localisation: Paris, France

URL permanente de ce messagePosté le : Lun Sep 10, 2007 22:43    Sujet du message: Session et securite

non car il est fortement conseillé de travaillé avec le registrer globals à off
Registrer_globals est désactivé maintenant chez la plupart des hébergeurs

dans ton cas il faut faire pour afficher la variable de sessions
Code:
echo $_SESSION[nom]


pour afficher le ?nom envoyé en paramètre dans l'url, tu devrais faire un
Code:
echo $_GET[nom]


Ainsi les différentes variables sont étanches les unes par rapport aux autres.
plus d'informations http://fr2.php.net/register_globals
 
bozoleclown Visiter le site web du posteur
boutdepapier
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 04 Aoû 2006
Messages: 157

URL permanente de ce messagePosté le : Mar Sep 11, 2007 9:57    Sujet du message: Session et securite

Comme dit bozo il faut utiliser les variables de sessions et bien refermer aprés utilisation Smile
ex :
session_start();
$loge = true;
$_SESSION['loge'] = $USER;
session_write_close();

Et là tu auras des variables de sessions correctes. Et si tu veux faire disparaître les traces tu peux détruire cette variable dans certains cas (par exemple une déconnexion).

Ha oui, (à ne pas oublier) la variable SESSION a un timer !

Si cette solution ne te va pas passe par des petits gateaux secs (cookie)...
 
boutdepapier Visiter le site web du posteur
e-kiwi
Modérateur
Modérateur

Inscrit le: 23 Déc 2003
Messages: 12363
Localisation: Toulouse

URL permanente de ce messagePosté le : Mar Sep 11, 2007 10:02    Sujet du message: Session et securite

>> Existe-t-il une fonction PHP pour signer les actions faites par un utilisateur qui est enregistre

non à toi de le coder à chaque action.

>> De plus, peut-on eviter que les variables de session soient modifiees par l'utilisateur ?
un utilisateur ne peut pas modifier de variable de session. dans ton cas c'est une erreur de code. tu dois utiliser $_GET pour les variables dans l url, $_POST pour els variables de formulaire, $_SESSION pour les variables de session, etjuste $ pour les variables que tu crée toi dans ton code.

>> il change le resultat de echo $nom !!!
oui, mais pas $_SESSION['nom'] qui est ta variable de session. apres ton serveur est configuré de manière trop permissive.
 
e-kiwi Visiter le site web du posteur
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Mar Sep 11, 2007 17:06    Sujet du message: Session et securite

Il faut donc coder la signature soi meme...

Y a-t-il une pratique recommandee pour cette signature ?

par exemple un md5(identifiant du visiteur + secret connu de personne) ?
 
malopo
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Mar Sep 11, 2007 17:08    Sujet du message: Session et securite

D'ailleurs est-il vraiment utile de donner une signature different pour chaque action ?
Ou est-ce que c'est toujours sur de donner une seule signature a un utilisateur pour toutes ses actions?
 
malopo
boutdepapier
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 04 Aoû 2006
Messages: 157

URL permanente de ce messagePosté le : Mar Sep 11, 2007 18:07    Sujet du message: Session et securite

Nan nan pas de signature la variable session est différente pour chaque utilisateur !
 
boutdepapier Visiter le site web du posteur
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Mer Sep 12, 2007 0:54    Sujet du message: Session et securite

la variable de session est secrete, non?
on peut pas la devoiler dans le code html
 
malopo
bozoleclown
WRInaute passionné
WRInaute passionné

Inscrit le: 24 Nov 2005
Messages: 842
Localisation: Paris, France

URL permanente de ce messagePosté le : Mer Sep 12, 2007 1:03    Sujet du message: Session et securite

Je pense que tu parles du PHPSESSID
l'id de session

permettant de faire le lien entre un accès utilisateur et sa session en cours

2 possibilités
le mettre dans l'url donc là il est en clair (pas recommander pour le ref)
soit tu le mets dans un cookie et donc il est un peu moins en clair

Donc faut priviliégier la solution cookie qui fait plus pro.
 
bozoleclown Visiter le site web du posteur
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Mer Sep 12, 2007 16:59    Sujet du message: Session et securite

Donc PHPSESSID n'est pas ce que je cherche.

Je veux me proteger contre les attaques suivantes:

j'ai par exemple un script
changerville.php?ville=paris qui modifie la ville dans laquelle l'utilisateur est enregistre. Le script verifie que la session de l'utilisateur avant de changer sa ville.

Par contre quelqu'un peut creer un site mechant.com sur lequel il y a par exemple:
<img src="monsite.com/changerville.php?ville=hack" />
et y fait venir des visiteurs loggues de mon site. Resultat, le compte de mes utilisateurs est change sans qu'ils n'aient rien demande.

Il faut donc que je signe l'action... d'ou mon post...
 
malopo
boutdepapier
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 04 Aoû 2006
Messages: 157

URL permanente de ce messagePosté le : Mer Sep 12, 2007 17:16    Sujet du message: Session et securite

Bah non tu permets de changer la ville si dans la variable de session il y a bien un connect = true et l'id de l'user dans la variable de session correspond bien à l'id que tu dois modifier.
Je suis clair ?
 
boutdepapier Visiter le site web du posteur
malopo
WRInaute discret
WRInaute discret

Inscrit le: 06 Juil 2007
Messages: 60

URL permanente de ce messagePosté le : Mer Sep 12, 2007 17:22    Sujet du message: Session et securite

un utilisateur de mon site qui est en train de naviguer sur mon site (il est connecte) et va sur la page avec le
<img src="..."> renverra un cookie valide!
 
malopo
boutdepapier
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 04 Aoû 2006
Messages: 157

URL permanente de ce messagePosté le : Mer Sep 12, 2007 17:42    Sujet du message: Session et securite

Pour moi un cookie se modifie pour plus de sécurité il faut utiliser les sessions.
 
boutdepapier Visiter le site web du posteur
bozoleclown
WRInaute passionné
WRInaute passionné

Inscrit le: 24 Nov 2005
Messages: 842
Localisation: Paris, France

URL permanente de ce messagePosté le : Mer Sep 12, 2007 17:52    Sujet du message: Session et securite

malopo a écrit:
un utilisateur de mon site qui est en train de naviguer sur mon site (il est connecte) et va sur la page avec le
<img src="..."> renverra un cookie valide!


Oui mais bon tu atteins un peu les limites du système.
Tu peux vérifier le referer de la page pour voir si ton utilisateur est bien sur ton site ou bien mettre le phpsessionid dans l'url pour ce cas.

Des petits malins font ça des fois dans les flux rss, ils mettent une image qui fait une rediction 301 vers la page de déconnexion de google reader par exemple. Du coup tu es déconnecté. Tu y peux rien dans ce cas.

@boutdepapier : c'est pas le problème ici. je pense. on parle juste de stocker l'id de session dans un cookie.
 
bozoleclown Visiter le site web du posteur
bozoleclown
WRInaute passionné
WRInaute passionné

Inscrit le: 24 Nov 2005
Messages: 842
Localisation: Paris, France

URL permanente de ce messagePosté le : Mer Sep 12, 2007 18:04    Sujet du message: Session et securite

sinon quand l'utilisateur change de ville

tu peux faire une page intermédiaire
où tu lui demandes "confirmer votre changement de ville OUI/NON ?"

et donc du coup voila une parade pour les appels externes en plus du referer.
 
bozoleclown Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Autres sujets de discussion :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort