sessions avancées

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : sessions avancées

Re: sessions avancées

par christele » 22 nov. 2009, 13:24

Pour revenir à l'objet du débat : La stratégie de multiples sessions sur le même ordinateur est aussi très intéressante (même si c'est difficile à mettre en œuvre) dans le cas où tu désires avoir un compte ouvert tout en simulant un autre compte par exemple, ou lancer des processus avec des droits supérieurs et les visualiser avec un compte avec des droits inférieurs,... . Cela fait gagner du temps plutôt que se déconnecter/reconnecter avec un compte différent. Une méthode plus rapide à mettre en œuvre consiste à ouvrir le même site avec FIREFOX et IE par exemple. Deux systèmes de cookies différents : deux sessions...
Oui j'aurais tendance a étre d'accord avec toi, on peut aller plus loin, si nous avons un mini réseaux entre deux micros pas de problémes.
Cependant la vrais sécurité reste la session unique alors j'allais dire le login unique ... pourtant,
par exemple les banques, laissent faire. Mon mari regardes nos comptes et moi je fais un virement en même temps. donc deux micros sur la même IP et même FAI.

Alors je me dis ça doit pas étre trés grave ......

Re: sessions avancées

par Aureusms » 21 nov. 2009, 21:54

Te fâches pas dr@ke (même si je sais que tu n'es pas fâché). Au contraire je trouve cela passionnant et résultant de plein d'avantages que chacun confronte ses idées. (même si l'emploi du gras des derniers posts les rendent plus virulents)

Pour essayer de répondre à FuZZyLine, je ne considère pas l'IP comme absolu mais j'essaye de considérer l'IP + l'id de session (qu'il soit passé en cookies ou en $_GET) + d'autres sha1(variables) de ma sauce. Ces multiples variables permettent de baisser le risque de mauvaise identification. De même, considérer que le cookies envoyé pour la session est inviolable est aussi dangereux mais pour cela j'ai d'autres stratégies de vérification. Pour moi, sans être paranoïac (j'essaye), je considère que le poste client n'est que relatif et que, sans être pirate, le poste client peut faire une mauvaise manipulation qu'il faut prendre en considération (désactivation des cookies, du javascript, ... en cours de surf sur ton site par exemple).

Pour revenir à l'objet du débat : La stratégie de multiples sessions sur le même ordinateur est aussi très intéressante (même si c'est difficile à mettre en œuvre) dans le cas où tu désires avoir un compte ouvert tout en simulant un autre compte par exemple, ou lancer des processus avec des droits supérieurs et les visualiser avec un compte avec des droits inférieurs,... . Cela fait gagner du temps plutôt que se déconnecter/reconnecter avec un compte différent. Une méthode plus rapide à mettre en œuvre consiste à ouvrir le même site avec FIREFOX et IE par exemple. Deux systèmes de cookies différents : deux sessions...

Re: sessions avancées

par Dr@ke » 21 nov. 2009, 17:31

Ok je voie :wink:
Bon vous laisse discuter alors

Re: sessions avancées

par FuZZyLine » 21 nov. 2009, 17:27

Salut,

Je m'incruste mais promis je reste pas longtemps ;)
t'a rien compris, le vais te dire ce qu'il fallait comprendre
Permets moi de te demander d' appliquer a toi, les conseils que tu prodigues aux autres.
Je fais trés attention a ce que chacun écrit, sois en persuadé ! merci a toi, mais nous n'avons besoins
ni de juges, ni d'arbitres et encore moins de moralisateurs.
+1 =D>
Donc je précises lorsque je suis sur un site en train de rédiger, et que ma connection saute, pas grave je
la relance et poursuit mon travail
! cela m'arrive et jamais on m'a dit ah NON c'est plus vous l'IP a changée !
En effet les cookies de seesions sautent mais a la fermeture du navigateur, pas en cas de rupture de connection.
Je ne peux que te donner raison. Considérer l'IP comme identifiant "absolu et réèl" serait une stratégie
suicidaire. Idem sur Orange, j'ai peur d'être chez eux aussi lol (honte à moi - joke)

@+ bon WE et bon code ;)

Re: sessions avancées

par Dr@ke » 21 nov. 2009, 17:27

Fais moi plaisir, et corrige la fausse citation de ton Post :!:
Je n'ai jamais dit cela -> donc évite d'inventer des propos qui sortent de ton imaginaire pour argumenter tes propres propos.
Merci par avance

Sinon, cela m'arrive souvent de me tromper...

C'est un forum public, tu peux toujours discuter en pv si tu ne désires aucune intervention.

De plus, le sujet me parait important, vue le nombre de sites webs qui utilisent les sessions, et donc il me parait important d'expliquer les choses comme elles le sont...

Si ta connexion saute, c'est un autre sujet, mais cela ne remet pas en cause l'aspect sécurité.

Pour finir, la majorité des sites sérieux qui utilisent les sessions, vérifient les IP, $_GET ou pas.
Tu testeras, sur pas mal de sites, change d'IP et continues a te balader sur le site.
Tu t'apercevras que même si ils utilisent les cookies, tu seras surement déconecté...

Re: sessions avancées

par christele » 21 nov. 2009, 17:17

t'a rien compris, le vais te dire ce qu'il fallait comprendre
Permets moi de te demander d' appliquer a toi, les conseils que tu prodigues aux autres.
Je fais trés attention a ce que chacun écrit, sois en persuadé ! merci a toi, mais nous n'avons besoins
ni de juges, ni d'arbitres et encore moins de moralisateurs.

Donc je précises lorsque je suis sur un site en train de rédiger, et que ma connection saute, pas grave je la relance et poursuit mon travail !
cela m'arrive et jamais on m'a dit ah NON c'est plus vous l'IP a changée !
En effet les cookies de sessions sautent mais a la fermeture du navigateur, pas en cas de rupture de connection.

Re: sessions avancées

par Dr@ke » 21 nov. 2009, 16:37

D'accord avec toi
Mouais, moi je ne suis pas d'accord du tout :)

Car le fait d'avoir une Ip fixe ou dynamique n'a rien avoir avec le fait de comparer les Ip des ID de sessions.

D'après moi Christelle, soit tu n'as pas lu son Post, soit tu n'as pas compris son Post.
En tout cas, cela ne remet pas du tout en cause le coté sécurité de la méthode.

Ce qu'expliquait Aureusms, c'est que si quelqu'un vol et utilise l'ID de session d'une autre personne, il ne possédera pas, par-contre , la même IP et donc en vérifiant cette dernière -> Bye Bye.

Re: sessions avancées

par Aureusms » 21 nov. 2009, 15:37

D'accord avec toi mais si tu as une session ouverte sur un serveur ton adresse IP sera considérée comme fixe non ? Car si tu change d'IP en cas de reconnexion (je suis aussi chez Orange et en ce moment il y a de mauvaises connexion et donc beaucoup d'adresse IP me sont allouées), mon système t'éjectes par sécurité.

Re: sessions avancées

par christele » 21 nov. 2009, 13:00

Bonjour Christele,
je garde dans la session côté serveur l'ip de l'utilisateur dont j'ai attribué l'identifiant de session dans l'url. Si un malotrus vient ensuite avec l'url où figure l'identifiant de session, je vérifie l'IP et comme il est assez difficile d'avoir la même IP... (Du moins à l'état actuel de mes connaissances), je détruis la session et je récupère l'IP du malotrus au cas où...
Qu'en penses tu ?
pour certains (RARES) L' IP est fixe mais la grande majoritée non.
Exemple ceux qui tout bétement sont ADSL Orange comme moi, a chaque fois que je le veux je relance ma connection et me retrouves avec une autre IP !

Oui l'IP sert a rien

Re: sessions avancées

par Aureusms » 20 nov. 2009, 21:16

Oui je sais : le but c'est de le contourner ce fameux cookies. Quitte à passer par l'URL.
Je te raconte une petite histoire, moi je n'aimes pas quitter une page, alors en général si j'y trouves un lien je clic-droit
et => ouvrir dans un nouvel onglet !
Tu sais que c'est avec des "id de session d'url" GET qu'un site peut te voler ta session ? :shock:
Bonjour Christele,

Je sais qu'on peut savoir facilement d'où vient le visiteur et le fait de facilement récupérer l'identifiant dans ce cas peut permettre de fixer la session. Mais dans ce cas pour éviter les anicroches de mes visiteurs qui, par paranoïa n'ont pas activé les cookies même en mode lecture (et de ce fait ont généralement aussi bloqué javascript donc pour l'historique cela devient coton), je garde dans la session côté serveur l'ip de l'utilisateur dont j'ai attribué l'identifiant de session dans l'url. Si un malotrus vient ensuite avec l'url où figure l'identifiant de session, je vérifie l'IP et comme il est assez difficile d'avoir la même IP... (Du moins à l'état actuel de mes connaissances), je détruis la session et je récupère l'IP du malotrus au cas où...
Qu'en penses tu ?

Re: sessions avancées

par christele » 19 nov. 2009, 07:54

Oui je sais : le but c'est de le contourner ce fameux cookies. Quitte à passer par l'URL.
Je te raconte une petite histoire, moi je n'aimes pas quitter une page, alors en général si j'y trouves un lien je clic-droit
et => ouvrir dans un nouvel onglet !
Tu sais que c'est avec des "id de session d'url" GET qu'un site peut te voler ta session ? :shock:

Re: sessions avancées

par Dr@ke » 18 nov. 2009, 13:36

Le risque est le même entre un $_POST et un $_GET.
Le risque existe dans le code qui traite une variable $_GET ou $_POST.
Une page bien codée ne présentera donc aucun risque de protection en utilisant des variables $_GET ou $_POST.

Comment?

- Utiliser par exemple des switchs.
Utiliser des valeurs par défaut dans les switchs.
http://php.net/manual/fr/control-structures.switch.php

- Filtrer, vérifier la syntaxe des éléments envoyés dans les $_GET et $_POST.

Il existe une multitude de fonctions en Php qui permettent de le faire.
Exemples:

Les ctype:
http://php.net/manual/fr/book.ctype.php

Les filters:
http://www.php.net/manual/fr/book.filter.php

Les fonctions de gestion des variables:
http://www.php.net/manual/fr/ref.var.php

Les fonctions PCRE:
http://www.php.net/manual/fr/ref.pcre.php

Donc une page correctement et normalement codée utilisant un $_GET ou un $_POST ne présente aucun risque :wink:

Pour le coté esthétique et/ou référencement, il existe l'url rewriting:
http://www.webrankinfo.com/dossiers/deb ... -rewriting

Re: sessions avancées

par christele » 18 nov. 2009, 13:03

Oui OK , mais a mon gout, ce GET est pas beau entre les pages
puisque visible dans la bare d'adresse, en plus gare a la protection ! :shock:

Re: sessions avancées

par toony.m » 18 nov. 2009, 12:20

C'est pas compliqué, la valeur de chaque nombre aléatoire est envoyé dans l'url ex:
//génération de $nombre_aleatoire
session_name($nombre_aleatoire);
session_start();

$_SESSION['critere'][$nombre_aleatoire]=$_POST['critere'];
//etc...

// puis l'URL : page.php?id_session=$nombre_aleatoire
et dans la page suivante, il charge les données de la session spécifique :
$id_session=$_GET['id_session'];
session_name($id_session);
session_start();

$critere=$_SESSION['critere'][$id_session];
//etc...
Je peux donc ouvrir autant de page que je veux en parallèle, il n'y aura pas de problème.
:D

Re: sessions avancées

par christele » 17 nov. 2009, 05:19

Bon cette fois j'ai trouvé.
Il suffit de créer à chaque exécution de la page du code qui permet de :
- créer un nombre aléatoire
- renommer le nom de la session avec ce nombre
cela me parait ingérable de page en page, et quel lien avec les autres ? :shock: