COMPTEUR DE CONNECTÉS

Signaler
Messages postés
500
Date d'inscription
mardi 16 avril 2002
Statut
Membre
Dernière intervention
2 août 2004
-
Messages postés
21
Date d'inscription
mardi 18 février 2003
Statut
Membre
Dernière intervention
15 septembre 2007
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/12965-compteur-de-connectes

Messages postés
21
Date d'inscription
mardi 18 février 2003
Statut
Membre
Dernière intervention
15 septembre 2007

Hey les gens, réagissez, il y a au moins 2 failles de sécurité là déjà ! En tout cas je n'en ai vue que 2 pour l'instant.
La première concerne l'injection SQL, heureusement que frakosun a proposé une solution mais manque de pot, Dean n'a pas jugé utile de le corriger dans la source, donc plein de gens continueront à trouer leur sécurité en copiant cette source.
La deuxième est que même si le script vérifie bien la cohérence de l'adresse IP donnée en HTTP_X_FORWARDED_FOR ou en HTTP_CLIENT_IP (ce qui n'est déjà pas le cas), je peux quand même générer un petit script qui enverra une fausse IP aléatoire dans l'en-tête de la requête HTTP et donc faire exploser le compteur de chez moi même sans aucun proxy.
Messages postés
392
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
26 septembre 2009

Tres joli script :)
Messages postés
10
Date d'inscription
lundi 7 août 2006
Statut
Membre
Dernière intervention
11 janvier 2008

En fait il existe plusieurs solutions plus ou moins 'correctes' on va dire.
Par ex. la méthode de kankrelune donné plus haut fonctionne, mais pourquoi faire compliqué (htmlspecialchars + addslashes) alors que mysq_real_escape_string est une fonction sql donc 100% adaptée?

Il faut l'utiliser avant toute interaction avec la bdd (select, update & co.) sans exception ;)

Par contre si les "magic quotes" sont activés sur le serveur cela va échapper 2 fois certains caractères comme les ' ou " donc c'est pas top. Il existe une fonction qui s'occupe d'y remédier, qui va vérifier si les magic quotes sont sur ON ou OFF et qui va agir en conséquence (par contre désolé je ne l'utilise pas donc je ne l'ai pas...).

Pis pour peaufiner avec une bonne dose de parano pour l'affichage un 'int($current_num_clients)' ne peut pas faire de mal :P
Messages postés
500
Date d'inscription
mardi 16 avril 2002
Statut
Membre
Dernière intervention
2 août 2004

>> pour la faille un 'mysql_real_escape_string($_SERVER['REQUEST_URI'])' devrait suffire, pas besoin d'en mettre 12 tonne ;)

Merci, je me demandais justement si l'on pouvait "préparer" les requêtes SQL avec PHP (de façon sécurisée), cela répond à ma question.
Afficher les 35 commentaires