Accueil Technologies Honeypot : bloquez les spams en 5 minutes chrono
Honeypot bloquez les spams en 5 minutes

Honeypot : bloquez les spams en 5 minutes chrono

par Louise PASTOURET

Si vous possédez un site WordPress, vous y avez certainement inclus un formulaire de contact. Celui-ci permet aux visiteurs de vous envoyer un message sans quitter le site. De votre côté, cela vous évite aussi d’afficher votre adresse mail en clair.

Cependant, ces formulaires de contact sont aussi une porte d’entrée idéale pour les spammeurs en tout genre. Un webmaster peut donc rapidement se retrouver avec une boîte mail qui déborde de propositions multilingues plus ou moins indécentes. Il se peut aussi que Gmail, Outlook et autres finissent par considérer l’adresse mail comme une boîte à spams. Si celle-ci sert également à expédier une newsletter, il y a un risque qu’elle soit traitée comme indésirable dans la boîte mail des abonnés.

Pour éviter de perdre du temps et ne plus se laisser déborder, il existe une solution plutôt maligne appelée Honeypot (« Pot de miel », en français). Ce nom évoque une méthode efficace pour piéger les insectes qui nous embêtent. C’est bien connu, on attrape plus de mouches avec du miel qu’avec du vinaigre. Or on peut justement transposer ce procédé sur le web pour capturer les spams qui colonisent notre boîte mail.

La technique du pot de miel : comment ça marche ?

La plupart des spams sont envoyés par des robots. Face à un formulaire de contact, ceux-ci remplissent leur mission avec beaucoup d’application. C’est-à-dire qu’ils se sentent obligés de remplir tous les champs proposés. Si on poursuit notre comparaison, chaque champ représente une goutte de miel : impossible pour la mouche de résister.

Ce qui va nous permettre de piéger ces robots assidus. Le Honeypot consiste à insérer dans le formulaire un champ supplémentaire, masqué pour les internautes normaux. Ceux-ci ne le rempliront pas puisqu’ils ne le voient pas. Un robot, en revanche, le détectera et s’appliquera à le compléter. Il se fera ainsi griller pour excès de zèle, et le spam ne sera pas envoyé.

Cette technique a aussi un avantage pour les visiteurs qui remplissent un formulaire de contact. En effet, elle permet de leur éviter les sempiternels Captchas. Malin, non ?

Installation de l’extension Contact Form 7 Honeypot

Depuis le lancement de notre site, nous avons opté pour l’extension Contact Form 7. Il s’agit d’un outil sobre et efficace pour la gestion des formulaires de contact. Ce plugin est donc un pré-requis pour ce tutoriel.

Comment mettre en place un Honeypot sur ce type de formulaire de contact ? Il suffit de télécharger une extension anti-spam qui complète les fonctionnalités de base de Contact Form 7. J’ai nommé Contact Form 7 Honeypot – tout est dit dans le nom.

Dans votre back-office WordPress, rendez-vous dans la rubrique « Extensions » puis cliquez sur « Ajouter » et tapez le nom de l’extension dans la barre de recherche en haut à droite. C’est le premier résultat qui nous intéresse :

Cliquez sur le petit bouton « Installer », puis patientez quelques secondes :

Cliquez maintenant sur le bouton rouge « Activer ».

Configuration du piège anti-spam

Vous pouvez à présent vous rendre dans la rubrique « Contact » de votre back-office. Celle-ci regroupe les différents formulaires de contact utilisés sur votre site :

Sélectionnez le formulaire de votre choix. L’interface de configuration du formulaire s’affiche alors :

Configuration formulaire de contact

Placez votre curseur au-dessus de la dernière ligne de code : celle-ci correspond à la commande d’envoi du message. Il faut donc insérer le piège avant. Puis cliquez sur le bouton « Honeypot » (encadré en rouge). La fenêtre suivante s’affiche :

A vous de remplir le premier champ intitulé « Nom », en choisissant un libellé suffisamment crédible pour que les robots tombent dans le panneau. Par exemple « city », « country », « phone »… tant qu’il s’agit d’un champ qui ne figure pas déjà dans votre formulaire. Les autres cases sont optionnelles et peuvent rester vides. Vous pourrez constater au passage que la balise du champ anti-spam se modifie automatiquement en fonction du nom que vous avez choisi.

Cliquez maintenant sur le bouton « Insertion de balise ». Voici le résultat :

La balise [honeypot country] a bien été insérée dans le formulaire. N’oubliez pas d’enregistrer les modifications pour que le piège soit opérationnel.

Test du formulaire de contact avec Honeypot

A présent rendons-nous directement sur le site, à la rubrique « Contact ». L’objectif : vérifier que le pot de miel a bien été mis en place. A première vue, rien n’a changé et c’est normal : le champ que nous venons d’insérer reste caché pour les visiteurs bien vivants. Il faut donc réaliser la manipulation suivante : un clic droit sur le bouton « Envoyer », puis sélectionner l’option « Inspecter l’élément ». Ceci permet d’afficher le code du site dans une fenêtre en bas de l’écran.

Dans la petite barre de recherche (encadrée en rouge ci-dessus), tapez le nom que vous avez attribué à votre honeypot (dans notre cas, « country »). Le champ apparaît alors. Ce sont les instructions suivantes (surlignées en rose) qui lui permettent de rester masqué :


style="display:none !important; visibility:hidden !important;"

Pour révéler le champ, rien de compliqué : placez votre curseur dans l’éditeur de code et effacez les instructions ci-dessus. Puis appuyez sur Entrée pour admirer le résultat :

C’est magique. Maintenant, que se passe-t-il si nous remplissons tous les champs, honeypot compris ?

Un message d’erreur nous informe aussitôt que le mail n’a pas pu être envoyé. Et si on recommence notre envoi, en laissant le piège vide :

Voilà qui conclut notre tutoriel, en démontrant sans doute possible l’efficacité d’un honeypot. En quelques minutes, voici de quoi protéger vos formulaires de contact et profiter d’une boîte de réception plus saine. Comme vous le voyez, la sérénité est à portée de main : alors à vous de jouer ! Pour toute question ou précision, les commentaires sont là. Prochainement, nous vous expliquerons comment mettre en place un honeypot sur le formulaire php d’un site classique.

Vous pourriez aussi aimer

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.