détecter loggés avec le même login en même temps

gflogic

Nouveau membre
Bonjour, je cherche à faire en php un script permettant de détecter que plusieurs personnes se loggent avec le même login, dans le but de connaitre celui qui a filé son login & mot de passe aux autres. Je pense que c'est largement possible de détecter plusieurs connexions d'ip différentes avec le même login, mais je ne sais absolument pas comment faire ??
 

THEniluje

Grand Maître
question con : comment peut tu etre sur que c'est pas la meme personne qui se connecte avec plusieurs ip differentes ?

parceque techniquement enregistrer les ip lors de l'identification, c'est simple, mais pour bien analyser les données récupérées... :/
 

gflogic

Nouveau membre
théoriquement une personne peut se connecter avec son ordi autant de fois qu'elle veut, mais pour qu'elle se connecte avec deux ordis n'ayant pas la même ip, c'est qu'elle est sur un autre ordi avec une autre connexion, ou bien qu'une autre personne distante se connecte avec le même login/pass ==> c'est ça que je veux détecter, le fait qu'en même temps le même login se connecte avec deux ip différentes.
 

THEniluje

Grand Maître
heu et la situation :
* j'me connecte, paipaire
* j'installe une connerie, je doit rebooter | raz le bol, me déconnecte
* j'me reconnecte, toujours paipaire, mais avec une autre ip

t'en fait quoi ?
 

gflogic

Nouveau membre
Je cherche a détecter ces 2 ip différentes sur deux connexions avec le même login EN MEME TEMPS !! RHOOO !!!! :lol:
 

gflogic

Nouveau membre
schéma pour que ce soit clair :

une personne(1) se connecte avec son log&pass bref tranquille.

Cette personne(1) elle a passé son log&pass a une autre personne(2).

En même temps que cette personne(1) se connecte, y'a la personne(2) qui se connecte avec les log&pass de la personne(1).

Comment détecter ça ???
 

Polio

Expert
Comme l'a expliqué THEniluje, si tu prends le cas de la déconnexion des 24h sur l'ADSL, tu peux te retrouver avec une personne A qui c'est connectée, et la même personne A mais avec une IP différente qui c'est connectée 10 secondes après.

Il est plus intéressant d'utiliser un cookie contenant un jeton unique. Du coup l'ordi en question peut changer d'IP sans que cela ne pose de pb. Si qq'un se connecte avec un ordi différent il aura lui aussi un cookie mais avec un jeton différent. Et si tu détectes pour le même compte des connexions avec des jetons différents tu peux en déduire que le compte est utilisé depuis plusieurs ordinateurs différents.
 

gflogic

Nouveau membre
[citation=3411,1][nom]Polio a écrit[/nom]Comme l'a expliqué THEniluje, si tu prends le cas de la déconnexion des 24h sur l'ADSL, tu peux te retrouver avec une personne A qui c'est connectée, et la même personne A mais avec une IP différente qui c'est connectée 10 secondes après.
[/citation]

1) je veux essayer d'éviter les cookies.
2) cette personne A qui s'est connectée 10 sec après avec une autre IP, c'est bien, seulement sa connexion d'il y a 10 seconde avec une autre IP n'est plus active et ça le serveur l'a bien remarqué.
3)De plus, avec un cookie ça ne cible qu'un ordi précis, et si cette personne A veut se connecter dans la journée à partir d'ordis différents, elle fait comment ?
4) Il faut donc combiner une détection des membres en ligne, et une détection de ces membres qui se sont connectés avec le même login et pass.

Comment faire ?

ps: c'est lourd hein ? J'ai l'impression que personne ne me comprend :lol:
 

Cyrius

Nouveau membre
Hmm Je me connecte au boulot IP1 Log Pass -> ok
Je me casse le soir mais j'oublie de me deconnecter...

Je veux me connecter chez moi IP2 Log Pass -> Ko???
Faut que je retourne au boulot à 23h00 pour me deconnecter??

D'accord c'est pas fréquent, d'accord j'avais cas faire gaffe en partant du taff -y a des fois on est plus en etat :D- Mais j'utilise mon Log+Pass sans l'avoir passer à qui que ce soit et ce avec 2 ip differentes en meme temps...
 

THEniluje

Grand Maître
[citation=3412,1][nom]gflogic a écrit[/nom]ps: c'est lourd hein ? J'ai l'impression que personne ne me comprend :lol:
[/citation]Ben c'est qu'une impression, la réalité c'est l'inverse : on est en train de t'expliquer que pour résoudre ton truc la solution n'est pas évidente, surtout si tu veut faire un truc simple.
De plus tu ne donne aucune indication sur la structure a "proteger" : genre si c'est juste l'acces a une page ou bien si c'est l'acces a des 100aines de pages...

Le solution la plus claire a mes yeux c'est de mettre en début de chaque chargement de page un script qui va checker l'ip, le log et pass, voire dans la bdd s'il est déjà connecté, si ou il réactualise la date, sinon il l'insert en mettant la date, et il vide les personnes n'ayant pas reloadé de page depuis xx temps, et dans tout ca il vérifie si ya pas deux log/ip différent actif (attention, faut gérer la personne qui change d'ip avant le timeout), s'il y a ca, ben il active une procedure d'erreur...
Voila, c'est pas plus bete que ca, mais valable que si tu fait l'identification via la bdd, si tu la fait pas htaccess ou autre ben c'est "dtc"...

ps : si il faut impérativement un timeout assez important, sans cela les personnes risquerait de se croiser, le script comprennant que ce n'est qu'une vulgaire succession de connexions a ip differentes.
 

gflogic

Nouveau membre
[citation=3413,1][nom]Cyrius a écrit[/nom]Hmm Je me connecte au boulot IP1 Log Pass -> ok
Je me casse le soir mais j'oublie de me deconnecter...

Je veux me connecter chez moi IP2 Log Pass -> Ko???
Faut que je retourne au boulot à 23h00 pour me deconnecter??

D'accord c'est pas fréquent, d'accord j'avais cas faire gaffe en partant du taff -y a des fois on est plus en etat :D- Mais j'utilise mon Log+Pass sans l'avoir passer à qui que ce soit et ce avec 2 ip differentes en meme temps...
[/citation]

c'est pas fréquent et de plus à ton boulot tu n'est plus actif et entre être déconnecté et inactif y'a peu de différences ;)
 

gflogic

Nouveau membre
[citation=3414,1][nom]THEniluje a écrit[/nom]Le solution la plus claire a mes yeux c'est de mettre en début de chaque chargement de page un script qui va checker l'ip, le log et pass, voire dans la bdd s'il est déjà connecté, si ou il réactualise la date, sinon il l'insert en mettant la date, et il vide les personnes n'ayant pas reloadé de page depuis xx temps, et dans tout ca il vérifie si ya pas deux log/ip différent actif (attention, faut gérer la personne qui change d'ip avant le timeout), s'il y a ca, ben il active une procedure d'erreur...[/citation]

>>Passage obligé par mysql, et souvent la bdd n'est pas très rapide, surtout quand un forum la sollicite tout le temps sur une autre partie du site. Néanmoins c'est la meilleure solution à mes yeux également.
Je trouve qu'htaccess est simple & merveilleusement efficace, mais austère. Et il ne permet pas l'accès à la bdd (à ma connaissance).

Bon ben merci à vous :merci:

je sais pas trop par où commencer pour programmer ça...
 

Polio

Expert
[citation=3412,1][nom]gflogic a écrit[/nom]

1) je veux essayer d'éviter les cookies.
2) cette personne A qui s'est connectée 10 sec après avec une autre IP, c'est bien, seulement sa connexion d'il y a 10 seconde avec une autre IP n'est plus active et ça le serveur l'a bien remarqué.
3)De plus, avec un cookie ça ne cible qu'un ordi précis, et si cette personne A veut se connecter dans la journée à partir d'ordis différents, elle fait comment ?
4) Il faut donc combiner une détection des membres en ligne, et une détection de ces membres qui se sont connectés avec le même login et pass.

Comment faire ?

ps: c'est lourd hein ? J'ai l'impression que personne ne me comprend :lol:
[/citation]

Pour la 2 ce n'est pas si simple. :o

Une connexion HTTP est quelque chose de ponctuelle : ton client HTTP se connecte au serveur en ouvrant une connexion TCP, il envoie sa requête et attend que le serveur lui envoie les données. Une fois les données reçues le client termine sa connexion TCP (l'ensemble peut prendre moins d'une seconde, ou pas).

Le nombre d'utilisateurs qui est indiqué par exemple dans le forum-PPC n'est qu'une mesure subjective (je ne sais pas comment Joce l'a implémenté, mais cela doit probablement ressembler au nombre d'utilisateurs uniques qui ont fait un accès lors des x dernières secondes).

A ce sujet, la fonction "se déconnecter" que tu peux retrouver sur certains sites ne fait rien d'autre que mettre fin la session ouverte par un client. Session dont le suivi peut se faire soit par un cookie (solution retenue par le forum-PPC) soit par un jeton que l'on passe au travers de l'URL.

Pour revenir à ton problème, si l'on exclue les cookies, la solution offrant le meilleur compromis simplicité/efficacité serait de détecter des accès entrelacés. C'est à dire la succession d'accès avec des IP différentes dans une plage de temps réduite. On suppose donc qu'en (disons) 1/4 d'heure un même utilisateur ne peut pas (à moins de le faire exprès :o ) se connecter depuis une machine A puis une machine B pour revenir à une machine A. Mais bon on devine les limites de ce procédé...

Concernant l'implémentation proprement dire (tu peux te passer d'une BdD : un fichier contenant les logins, les IP et la date/heure d'accès peut faire l'affaire), il suffit à chaque accès :
- d'inscrire le login, l'IP et l'heure
- de lancer l'algorithme pour repérer un compte "partagé"
- d'inscrire le login "partagé"

Reste que le rapport "utilité/prise de tête" de cette fonctionnalité ne me parait pas transcendant :heink: Et ceci sans même parler de l'aspect flicage de la chose :non:

(edit) français
 

THEniluje

Grand Maître
[citation=3421,1][nom]Polio a écrit plein de choses[/nom]
[/citation]Qu'est ce que qu'ai-je dit :o :na:
 

Polio

Expert
[citation=3436,1][nom]THEniluje a écrit[/nom]Qu'est ce que qu'ai-je dit :o :na:
[/citation]

Mon dieu, je suis démasquaÿ :ouch: :D
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 134
Messages
6 718 078
Membres
1 586 394
Dernier membre
Manoushk
Partager cette page
Haut