web-dev-qa-db-fra.com

Prévenez le spam en utilisant Honey Pots

Je suis vraiment curieux de savoir comment empêcher le spam de commentaires dans un forum en utilisant un piège à pot de miel pour les robots de spam.

  • Que se passe-t-il si CSS et javascript sont désactivés dans un navigateur?

  • Voyez-vous d'autres inconvénients dans le piège à miel?

  • Que pensez-vous que chaque piège à pot de miel devrait avoir?

  • Connaissez-vous une autre solution anti-spam qui ne perturbe pas l'expérience des utilisateurs?.

8
sfrj

Que se passe-t-il si CSS et javascript sont désactivés dans un navigateur?

Un pot de miel approprié ne comptera pas sur l'un ou l'autre pour fonctionner. Idéalement, vous utiliserez pour cela un champ de formulaire masqué qui ne nécessite aucune dissimulation réelle.

Voyez-vous d'autres inconvénients dans le piège à miel?

Si vous le faites correctement, il ne devrait y avoir aucun problème dont les utilisateurs seront au courant. Il y aura une petite quantité de frais généraux nécessaires pour que cela fonctionne, mais cela devrait être si faible que cela ne devrait même pas être une préoccupation.

Connaissez-vous une autre solution anti-spam qui ne perturbe pas l'expérience des utilisateurs?.

d'une réponse précédente : Vous pouvez faire plusieurs choses (et devriez en faire plus d'une), notamment:

  1. Utilisez un CAPATCHA comme reCAPTCHA

  2. Utilisez un champ qui oblige l'utilisateur à répondre à une question du type 5 + 3. Tout être humain peut y répondre, mais un bot ne sait pas quoi faire, car il s'agit de champs à remplissage automatique basés sur des noms de champ. Ce champ sera donc incorrect ou manquant, auquel cas la soumission sera rejetée.

  3. Utilisez un jeton et insérez-le dans une session. Ajoutez-le également au formulaire. Si le jeton n'est pas soumis avec le formulaire ou ne correspond pas, il est automatisé et peut être ignoré.

  4. Recherchez les soumissions répétées de la même adresse IP. Si votre formulaire ne doit pas recevoir trop de demandes mais qu'il est soudainement frappé par un bot, vous devez envisager de bloquer temporairement l'adresse IP.

  5. Utilisez Askimet . C'est excellent pour identifier le spam.

Lecture recommandée: Comment fonctionnent les spambots?

4
John Conde

Quelque chose que je ne vois pas souvent suggérée est une solution captcha basée sur le temps. Le spam fonctionne mieux en le diffusant le plus rapidement possible. J'ai remplacé le ReCaptcha hébergé par Google par un délai de soumission de 20 secondes pour mes formulaires de contact utilisant des sessions PHP, ce qui a considérablement réduit le nombre de spams. Je suis venu avec le temps de retard en utilisant des données Analytics sur le comportement des utilisateurs.

1
Cycododge

Je suis sûr que les robots de formulaire ignoreront les champs <input type="hidden">. La meilleure solution consiste à utiliser la saisie de texte normalement, avec un type de données commun. Tout ce que vous n'utilisez pas actuellement est correct, tel que site Web, adresse, code postal, nom d'utilisateur, etc.

Ajouter un message disant "si vous pouvez voir ce champ s'il vous plaît laissez le champ vide". Enveloppez le message et entrez-le dans un élément div avec CSS défini pour afficher: aucun.

Malheureusement, bien que la plupart des robots de spam soient très simples et stupides, beaucoup sont plus intelligents et peuvent détecter n'importe quel truc populaire. Selon la nature du formulaire, il peut être préférable d’utiliser CAPTCHA ou Akismet.

1
DisgruntledGoat