Gab23 Posté 23 Juin 2006 Posté 23 Juin 2006 Salutations Je cherche à sécuriser un script pour photoblog (codé en php) contre le spam dans les commentaires. Ma première idée a été de créer mon propre système Captcha. Jusque là, aucun problème, ça fonctionne très bien. Seulement, je sais que les systèmes Captcha peuvent être un peu embettant pour les visiteurs, donc je cherche une façon de bloquer les messages envoyés par des spammeurs à l'aide d'une méthode qui serait "invisible", c'est-à-dire, une méthode qui ne forcerait pas le visiteur à effectuer une manipulation spéciale. J'ai d'abord pensé à vérifier les headers du visiteur, malheureusement, je ne vois pas comment différencier un spammeur d'un visiteur normal. Quelqu'un a une idée pour m'aider à faire ça ? Merci d'avance pour votre aide
Compte supprimé Posté 23 Juin 2006 Posté 23 Juin 2006 En fait c'est tout simple, il suffit de tester la variable php $_POST['spam'] if ($_POST['spam']) die() Bon ça marche pas ok, à mon avis il n'y a pas moyen d'identifier un spammer sur ses header, ni sur son IP, qui change à chaque fois. J'ai une autre piste à te proposer : vu que 99% du spam est en langue anglaise, tu peux essayer de définier une liste de mots clé "interdits" qui bloquent le spam. Cette liste sera à mettre à jour au fur et à mesure. C'est la méthode que j'utilise. elle est pas parfaite car elle demande de la maintenance, mais c'est toujours ça. Je te donne ma liste de mots provisoire : $mots_interdits=array("xwiki", "nensi-musik", "metform", "freehostpro","tekcities", "best site","nice site","top site", "greetings from","tehniks","usmle","pussy", "wellbutrin", "warez","website","Software", "getfunhere","health","insurance",".ru", "kony","funnyhost","viagra","ephedrine",".tt", "boards2go","phentermine", "levitra","vicodin","bestnum","valium",".co.uk", "ultram","tramadol","lol.to","zoloft", "lortab","fioricet","hydrocodone","diazepam", "adipex","didrex","xanax","hydrocodone", "meridia","tenuate","ambien ","Good job guys","Very nice site","Real good stuff", "Appreciate it men", "network54","butalbital","carisoprodol","butalbital","bravenet", ".to","casino","nexium","zyban", "Really cool", "blackjack","online","cheap","asphost","melodysoft", "ringtones"," cialis","dirare","areaseo","zovirax","generic", "pharmarkg","flexeril","propecia", "serifos","dorhuya", "Great work","buying","auto.blogspot","cars.blogspot", "a-j-i",".info/","insurance","Thanks!","Hi guys");
captain_torche Posté 23 Juin 2006 Posté 23 Juin 2006 S'il y avait une méthode pour contrer le spam, tu penses bien que les autres sites n'auraient pas besoin de le contrer avec un captcha Sinon, malheureusement, les spams en français se multiplient, et la méthode de jeroen est loin d'être infaillible (même si elle peut limiter le spam), elle a aussi beaucoup de risque de bloquer un message légitime contenant un/des anglicisme(s). Salut les gars ! j'ai essayé de tester la présence de mon website sur google.co.uk, mais quand j'effectue la requête, c'est un site de casino qui ressort en premier.Comment faire pour apparaître dans leur liste ? PS: je suis chez online. Thanks ! Ce message ne passerait pas, pour 5 raisons distinctes, alors qu'il est tout à fait légitime.
QuentinC Posté 23 Juin 2006 Posté 23 Juin 2006 Bonjour, J'utilise depuis peu une technique radicale pour bloquer les spam sur mon livre d'or, ça a l'air de marcher pour le moment : if (substr_count($_POST['message'], "http://") >=2) die("Espèce de spameur !"); En gros : j'interdis la présence de plus d'une URL dans le message posté. Sinon, la meilleure méthode reste un système d'identification complet.
captain_torche Posté 23 Juin 2006 Posté 23 Juin 2006 Ca peut effectivement fonctionner pour un livre d'or ou les commentaires d'un blog, mais ta méthode est également trop restrictive sur un forum
Théo B. Posté 23 Juin 2006 Posté 23 Juin 2006 Je te conseille surtout de bloquer les messages en vérifiant les mots clés. Il existe pas mal de listes de ces mots clés. Je t'en propose une liste : http://goddess-gate.com/share/blockreferer/referers.txt Ps : je te conseillerais de bloquer à partir de 3 ou 4 mots contenus dans cette liste.
QuentinC Posté 23 Juin 2006 Posté 23 Juin 2006 Pour un forum, effectivement, c'est trop restrictif. Mais dès le moment où il faut s'inscrire, les robots abandonnent vite même s'il peuvent procéder à une inscription automatique sans problème.
Gab23 Posté 23 Juin 2006 Auteur Posté 23 Juin 2006 Tout d'abord, merci pour les réponses Je vais probablement tenter ma chance avec une liste de mots clés à bannir. On verra ce que cela va donner. Une dernière question. Je ne connais pas beaucoup les techniques qu'utilises les spammeurs, mais est-ce que leurs robots prennent les cookies et les sessions php ? Parce que si ce n'est pas le cas, il y aurait là une façon très simple de les bloquer. En attendant, merci encore pour votre aide rapide.
Compte supprimé Posté 23 Juin 2006 Posté 23 Juin 2006 Oui : je pense à l'instant à deux possibilité : - Vérifier la présence d'un cookie (qui serait balancé dans la session) ou - vérifier que l'ip a demandé une page il y a moins de 10 minutes (ou au moins une partie de l'ip, pour ne pas bloquer ceux qui surfent avec aol) Vous en pensez quoi ??
Gab23 Posté 23 Juin 2006 Auteur Posté 23 Juin 2006 Dans mon cas, la vérification de l'ip pourrait causer des problèmes : lorsque le visiteur arrive sur la page d'accueil, il a la possibilité de laisser un commentaire directement sur cette page. Or, je ne veux pas forcer les visiteurs à attendre 10 minutes chaque fois pour poster un commentaire Reste à savoir si la méthode des cookies fonctionne. Je vais la tester bientôt.
Théo B. Posté 23 Juin 2006 Posté 23 Juin 2006 Et bien si l'utilisateur n'a pas de cookie, tu le fais passer en captcha!
Gab23 Posté 26 Juin 2006 Auteur Posté 26 Juin 2006 Pour ceux qui voudraient savoir, j'ai testé l'idée de bloquer un internaute qui n'accepterait pas les cookies avec un script rudimentaire de spam, et jusqu'à maintenant, ça a l'air de fonctionner. Tant mieux
captain_torche Posté 26 Juin 2006 Posté 26 Juin 2006 Sinon, tu peux aussi tenter un captcha accessible, composé d'une question, et d'une réponse simple, du genre : Q- Quelle est la couleur du cheval blanc d'Henri IV ? R- blanc Un peu fastidieux à mettre en place (il faut faire une base conséquente de questions-réponses), mais accessible et (logiquement) infaillible.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant