[ Resolu ] Faille de sécuirté, comment gérer les variables ?

Faille de sécuirté, comment gérer les variables ? [ Resolu ] - PHP - Programmation

Marsh Posté le 26-11-2008 à 18:38:40    

Bonsoir,
 
J'ai une question au sujet d'une "faille" qui existe quelques soit le browser (IE, Mozilla,....). Je m'en suis rendu compte lors de la création du site Multilingue ! C'est une histoire d'onglet !
 
Sur le première onglet, j'ouvre le site en Français. J'ouvre un second onglet, avec le site en espagnol, le première onglet sera passé en espagnol ( j'ai rafraichie la page entre temps) !  je gére la lange du site avec des variables de session.
 
Comment contourner cette faille des navigateurs ? A savoir que les variables de session, sont identiques quelques soit le nombre d'onget ouvert. Qui sont ratachés aux processus du navigateur et non aux onglets ?
 
D'avance merci pour les réponses !  
CVb


Message édité par cvb le 28-11-2008 à 14:52:10
Reply

Marsh Posté le 26-11-2008 à 18:38:40   

Reply

Marsh Posté le 26-11-2008 à 18:49:02    

il n'y a pas vraiment de contournement possible , a moins de passer la langue en paramètre dans chaque url  
 
mais est ce que c'est vraiment grave ?


---------------

Reply

Marsh Posté le 26-11-2008 à 18:56:19    

flo850 a écrit :

il n'y a pas vraiment de contournement possible , a moins de passer la langue en paramètre dans chaque url  
 
mais est ce que c'est vraiment grave ?


 
 
Je me dis que l'utilisateur, ne va pas ouvrir le site en Français sur un onglet et en espagnol sur l'autre, c'est vrai  ! Mais je ne m'en sers aussi pour stocker les droits notament quand l'utilisateur se connecte ! A savoir s'il est simple utilisateur ou administrateur....Dans ce cas là ça peut poser problème :)
 
++
 :jap:


Message édité par cvb le 26-11-2008 à 18:58:10
Reply

Marsh Posté le 26-11-2008 à 19:03:29    

Encore une fois, si deux utilisateurs distincts se connectent, l'un comme admin, l'autre sans droits particuliers, dans le même browser, il y a une pièce qui manque à ton puzzle...
 
Ce n'est par ailleurs pas une faille, c'est le comportement attendu. [:dawa]
 
Pour ton histoire dans langue, si tu prends ça dans l'autre sens ça donnerait ceci : je suis le site en français, je choisis espagnol dans un autre onglet puis quand je reviens sur le premier onglet, je suis toujours en français et mon choix a été "oublié". Ca se tient dans les deux sens.
 
Vu ta question, j'ai un peu l'impression que tu t'attardes à qq chose qui n'a pas vraiment d'importance, ni d'intérêt au-delà de l'anecdote...


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 26-11-2008 à 19:08:23    

C'est pas une faille, mais le comportement attendu. Si ce n'était pas le cas, les navigateurs à onglets ne seraient pas du tout pratiques, puisqu'il faudrait se réauthentifier à chaque fois qu'on ouvre une page d'un forum/site de vente, etc etc dans un nouvel onglet.
 
C'est plutôt ton cas d'usage qui n'est pas du tout censé arriver.

Reply

Marsh Posté le 26-11-2008 à 19:09:32    

You have been grillaid, sir.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 26-11-2008 à 19:13:28    

sircam a écrit :

Encore une fois, si deux utilisateurs distincts se connectent, l'un comme admin, l'autre sans droits particuliers, dans le même browser, il y a une pièce qui manque à ton puzzle...


 
Je ne pense pas qu'il manque une pièce ! L'admin se logue sur le site sur un onglet, et un utilisateur sans droit, se logue sur le même site, dans un second onglet. Y a peu de chance que ça se produise mais le cas n'est pas exclue ! Ca me pose problème que les variables de session soit "liés" aux process et non aux onglets :) d'où le terme "faille de sécurité"...
 
 

sircam a écrit :


Ce n'est par ailleurs pas une faille, c'est le comportement attendu. [:dawa]
 
Pour ton histoire dans langue, si tu prends ça dans l'autre sens ça donnerait ceci : je suis le site en français, je choisis espagnol dans un autre onglet puis quand je reviens sur le premier onglet, je suis toujours en français et mon choix a été "oublié". Ca se tient dans les deux sens.


 
J'ai pris le Français -> Espgnol mais ça fonctionne pour n'importe quelle langue ! Si tu gère la langue avec des variables de session en revenant sur le première onglet aprés rafraichissement tu seras en espagnol....:)
 
 
++
 :jap:

Reply

Marsh Posté le 26-11-2008 à 19:15:19    

ccp6128 a écrit :

C'est pas une faille, mais le comportement attendu. Si ce n'était pas le cas, les navigateurs à onglets ne seraient pas du tout pratiques, puisqu'il faudrait se réauthentifier à chaque fois qu'on ouvre une page d'un forum/site de vente, etc etc dans un nouvel onglet.
 
C'est plutôt ton cas d'usage qui n'est pas du tout censé arriver.


 
 
C'est ce que je me dis ! Mais je voulais savoir (objet du sujet)  s'il y avait moyen de "gérer" cette "faille"...
Je vais partir du principe que mon cas d'usage n'arrivera pas :)
 
 
 :jap:

Reply

Marsh Posté le 26-11-2008 à 19:16:36    

Non, ca n'arrivera pas. Ton utilisateur sans droit qui arrivera sur le site avec un second onglet sera logué en tant qu'admin. S'il se déconnecte, puis s'authentifie à nouveau, le premier onglet aura à ce moment les droits utilisateur.
 
ll n'y aura pas de "mélange" des sessions, juste un écrasement par la dernière en cours.

Reply

Marsh Posté le 26-11-2008 à 19:33:00    

cvb a écrit :

Je ne pense pas qu'il manque une pièce ! L'admin se logue sur le site sur un onglet, et un utilisateur sans droit, se logue sur le même site, dans un second onglet. Y a peu de chance que ça se produise mais le cas n'est pas exclue !


[:kiki] À supposer que cela se produise, il y a nettement plus grave : l'utilisateur aurait les droits de l'admin en changeant l'onglet. Là serait le *vrai* problème. Tu passes à côté de l'essentiel.
 

cvb a écrit :

Ca me pose problème que les variables de session soit "liés" aux process et non aux onglets :) d'où le terme "faille de sécurité"...


Oui, mais bon, "works as designed" même si c'est pas comme ça que tu le sens, hein. :o
 

cvb a écrit :

J'ai pris le Français -> Espgnol mais ça fonctionne pour n'importe quelle langue !


[:kiki] Oui, ça va, on a compris.
 

cvb a écrit :

Si tu gère la langue avec des variables de session en revenant sur le première onglet aprés rafraichissement tu seras en espagnol....:)


Oui, et je te répète qu'un utilisateur peut très bien considérer cela comme le comportement attendu et considérer qu'à défaut, son choix précédent de changement de langue a été "oublié".


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 26-11-2008 à 19:33:00   

Reply

Marsh Posté le 27-11-2008 à 11:20:37    

ce qui est plus grave c'est que ton user accède au PC de l'admin, donc à la session de l'admin ... Faut pas être c*n pour vouloir se relogger avec un compte sans droits alors que l'admin est déjà loggé et que son compte est dispo :o
 
mais sinon ça ne me surprend pas outre mesure, comme les autres.


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 27-11-2008 à 11:26:49    

NewsletTux a écrit :

ce qui est plus grave c'est que ton user accède au PC de l'admin, donc à la session de l'admin ... Faut pas être c*n pour vouloir se relogger avec un compte sans droits alors que l'admin est déjà loggé et que son compte est dispo :o
 
mais sinon ça ne me surprend pas outre mesure, comme les autres.


 
lol non t'inquiéte pas, il n'y a pas de faille de sécurité dans l'accés aux différentes machines....Je parlais sur point de vue code, je trouvais juste le concept des sessions "curieuses"....Maintenant, je reste sur l'idée que ça n'arrivera pas et que c'est un comportement "normal" ! :)


Message édité par cvb le 27-11-2008 à 11:27:13
Reply

Marsh Posté le 27-11-2008 à 14:33:27    

Juste retour à un peu d'orthodoxie.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 27-11-2008 à 15:08:00    

Les variables de sessions sont lié à une session. La session est identifié grâce à une valeur qui est indiqué soit dans les liens (dangereux car risque de transmission de la session par simple copier coller d'une adresse) soit dans le cookie.
Dans le cas où l'identifiant se trouve dans le cookie, cette valeur sera partagé par toutes les pages et tous les onglets du navigateur (hors "porn mode" et autres "navigation privée" ) et c'est parfaitement normal.
 
En fait, dans le cas que tu décris, il n'y a pas de "faille de sécurité" au niveau du navigateur. La faille est à chercher uniquement au niveau de l'utilisateur qui va sur l'ordinateur d'un autre pour naviguer sur le site, s'y loguer et repartir sans s'être déconnecté.
 
Pour prendre un exemple plus "matériel", ce que tu décris, c'est comme aller chez quelqu'un et laisser ton portefeuille en évidence sur la table. C'est pas par ce qu'on peut alors te piquer ton argent quand t'as le dos tourné qu'il y a une faille de sécurité au niveau de la table. ;)

Reply

Marsh Posté le 27-11-2008 à 16:05:55    

omega2 a écrit :

Les variables de sessions sont lié à une session. La session est identifié grâce à une valeur qui est indiqué soit dans les liens (dangereux car risque de transmission de la session par simple copier coller d'une adresse) soit dans le cookie.
Dans le cas où l'identifiant se trouve dans le cookie, cette valeur sera partagé par toutes les pages et tous les onglets du navigateur (hors "porn mode" et autres "navigation privée" ) et c'est parfaitement normal.
 
En fait, dans le cas que tu décris, il n'y a pas de "faille de sécurité" au niveau du navigateur. La faille est à chercher uniquement au niveau de l'utilisateur qui va sur l'ordinateur d'un autre pour naviguer sur le site, s'y loguer et repartir sans s'être déconnecté.
 
Pour prendre un exemple plus "matériel", ce que tu décris, c'est comme aller chez quelqu'un et laisser ton portefeuille en évidence sur la table. C'est pas par ce qu'on peut alors te piquer ton argent quand t'as le dos tourné qu'il y a une faille de sécurité au niveau de la table. ;)


 
 
Merci à tous de vos réponse...! :)  
 :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed