6 solutions modernes pour protéger les formulaires Web du spam

1719
Partager :

Le spam est un problème auquel tous les propriétaires de sites Web ont du mal à faire face. La simple vérité est que si vous avez des formulaires Web pour collecter des informations de vos clients sur votre site, vous allez recevoir des spams. Dans certains cas, vous pouvez en recevoir beaucoup.

Le spam est un énorme problème, même sur les formulaires qui ne font rien qui puisse bénéficier au spammeur (comme la retransmission sur le site Web où ils pourraient ajouter des liens de retour vers d’autres sites). Les spammeurs utilisent des formulaires Web pour essayer de promouvoir leurs propres entreprises et sites. Ils les utilisent également à des fins plus malveillantes. Bloquer les spammeurs de vos formulaires Web peut constituer un outil de productivité important et évitera à la section de commentaires de votre site Web de paraître minable.

A lire aussi : Comment analyser le marché d'une entreprise ?

Afin de protéger vos formulaires Web, vous devez rendre difficile, voire impossible, le remplissage ou l’envoi du formulaire par un outil automatisé, tout en veillant à ce que vos clients le remplissent aussi facilement que possible. Il s’agit souvent d’un jeu d’équilibre, car si vous rendez le formulaire trop difficile à remplir, vos clients ne le rempliront pas, mais si vous le simplifiez trop, vous obtiendrez plus de spams que de véritables envois. Bienvenue dans les moments amusants de la gestion d’un site Web !

Ajouter des champs que seuls les robots de courrier indésirable peuvent voir et remplir

Cette méthode repose soit sur CSS, soit sur JavaScript, soit sur les deux, pour masquer les champs de formulaire aux clients qui visitent le site en toute légitimité, tout en les affichant à des robots lisant uniquement le code HTML. Ensuite, toute soumission de formulaire qui contient le champ de formulaire en cours de remplissage peut être considérée comme un spam (puisqu’un bot l’a clairement soumis) et supprimée par votre script d’action de formulaire. Par exemple, vous pourriez avoir les codes HTML, CSS et JavaScript suivants :

Lire également : Les enjeux de la protection des données personnelles en marketing digital : les clés pour réussir

<html>
<head>
<meta charset=utf-8>
<title>Formulaire</title>
<link href=styles.css rel=stylesheet>
<script src= »http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js »>
</script>
</head>
<body>
<form>
<label id=email1>Adresse e-mail : <input id=email></label>
<label id=email2>E-mail : <input id=email_add></label>
<input type=submit value=submit>
</form>
<script src=script.js></script>
</body>
</html>

Dans le fichier CSS styles.css, le code :

#email2 { display: none; }

et dans le fichier JavaScript script.js, le code :

$(document).ready(
function() {
$(‘#email2’).hide()
}
);

Les robots de spam vont voir le code HTML avec les deux champs de courrier électronique et les rempliront, car ils ne verront ni le code CSS ni le code JavaScript qui le masque aux vrais clients. Ensuite, vous pouvez filtrer vos résultats et toutes les soumissions de formulaire qui incluent l’option suivante :

email_add.

Ce champ est du spam et peut être supprimé automatiquement avant même que vous ayez à le traiter manuellement.

Cette méthode fonctionne bien avec les robots collecteurs de spam moins sophistiqués, mais beaucoup d’entre eux deviennent de plus en plus intelligents et lisent maintenant les codes CSS et JavaScript. L’utilisation de CSS et de JavaScript aidera, mais cela n’arrêtera pas tous les spams. C’est une bonne méthode à utiliser si vous n’êtes pas très inquiet au sujet du spam, mais que vous voulez juste que ce soit un peu plus difficile pour les robots spammeurs. Vos clients ne le remarqueront pas du tout.

Utiliser un CAPTCHA

Un CAPTCHA est un script permettant d’empêcher les robots collecteurs de spams d’accéder à vos formulaires, mais les utilisateurs peuvent (pour la plupart) passer avec succès. Si vous avez déjà rempli un formulaire et que vous avez dû retaper ces lettres sinueuses, vous avez utilisé un CAPTCHA. Vous pouvez obtenir une solution CAPTCHA gratuite auprès de ReCAPTCHA.

Les CAPTCHAS peuvent être efficaces pour bloquer les spams. Certains systèmes CAPTCHA ont été piratés, mais c’est toujours un blocage efficace. Le problème avec les CAPTCHAS est qu’ils peuvent être très difficiles à lire pour les gens. ReCAPTCHA inclut une version audible pour les aveugles, mais beaucoup de personnes ne réalisent pas qu’elles peuvent écouter quelque chose et passer le test. Ce n’est jamais une bonne idée de frustrer les utilisateurs, et c’est souvent ce que font les CAPTCHAS.

Cette méthode fonctionne bien pour les formulaires importants que vous souhaitez protéger, telle que les formulaires d’inscription. Toutefois, vous devez éviter d’utiliser des CAPTCHAS sur tous les formulaires de votre page, car cela pourrait dissuader les clients de les utiliser.

Utiliser un test amical pour les humains, mais non-amical contre les robots

L’idée sous-jacente est de poser une question à laquelle un humain peut répondre, mais un robot n’aurait aucune idée de la manière de la remplir. Ensuite, vous filtrerez les soumissions pour rechercher la bonne réponse. Ces questions se présentent souvent sous la forme d’un problème mathématique simple du type « qu’est-ce que 1 +5 ? ». Par exemple, voici le code HTML d’un formulaire avec une question comme celle-ci :

<form>
Adresse e-mail : <input id=email><br>
Un zèbre est noir et <input id=stripes><br>
<input type=submit>
</form>

Ensuite, si la valeur du champ « stripes » n’est pas « blanc », vous savez que c’est un robot spam et vous pouvez supprimer les résultats.

Cette méthode fonctionne très bien tant que vous posez une question à laquelle tous vos clients connaîtront la réponse. Mais si vous posez une question que, pour une raison quelconque, vos clients ne comprennent pas, vous bloquez leur accès au formulaire et vous créez une énorme source de frustration.

Utiliser des jetons de session appliqués au niveau du site et requis par le formulaire

Cette méthode utilise des cookies pour définir des jetons de session lorsqu’un client visite le site Web. C’est un excellent moyen de dissuasion pour les robots de spam, car ils ne créent pas de cookies. En fait, la plupart des robots spammeurs arrivent directement sur les formulaires et si le cookie de session n’est pas défini sur le formulaire, cela garantira que seules les personnes qui ont visité le reste du site remplissent le formulaire. Bien sûr, cela pourrait bloquer les personnes qui ont ajouté le signet au formulaire. Vous pouvez apprendre à écrire votre premier cookie HTTP.

Enregistrer des données à partir du formulaire comme les adresses IP et les utiliser pour bloquer les spammeurs

Cette méthode est moins une défense de première ligne qu’un moyen de bloquer les spammeurs après coup. En recueillant l’adresse IP dans vos formulaires, vous pouvez ensuite détecter des modèles d’utilisation. Si vous recevez 10 soumissions de la même adresse IP dans un laps de temps très court, cette adresse IP est presque certainement du spam.

Vous pouvez collecter l’adresse IP à l’aide de PHP ou ASP.Net, pour ensuite l’envoyer avec les données du formulaire.

En PHP, on a le code :

$ip = getenv(« REMOTE_ADDR ») ;

En ASP.Net, on a :

ip = ‘<%= Request.UserHostAddress>’ ;

Cette méthode fonctionne bien si vous ne recevez pas beaucoup de spams en continu, mais des pics d’activité périodiques, par exemple avec un formulaire de connexion. Lorsque vous voyez des personnes qui tentent d’accéder à vos zones protégées plusieurs fois, en connaissant leur adresse IP, ceci vous permet de les bloquer, vous bénéficiez alors d’une protection solide.

Utiliser un outil tel qu’Akismet pour analyser et supprimer les envois de spam

Akismet est conçu pour aider les blogueurs à bloquer le spam de commentaires sur leurs formulaires, mais vous pouvez également acheter des forfaits pour vous aider à bloquer le spam sur d’autres formulaires.

Cette méthode est très populaire parmi les blogueurs, car elle est très facile à utiliser. Il vous suffit d’obtenir une API Akismet et de configurer le plugin.

La meilleure stratégie de gestion du spam utilise une combinaison de méthodes

Le spam est une grande entreprise. En tant que tels, les spammeurs deviennent de plus en plus créatifs dans leur manière de contourner les outils de blocage du spam. Ils ont des programmes de robots collecteurs de mails plus sophistiqués et beaucoup emploient même des personnes mal payées pour poster directement leurs messages de spam. Il est presque impossible de bloquer un vrai humain qui envoie du spam manuellement via un formulaire. Il n’y a pas de solution unique pour attraper tous les types de spams. Par conséquent, l’utilisation de plusieurs méthodes peut être utile.

Mais rappelez-vous, n’utilisez pas plusieurs méthodes que le client peut voir. Par exemple, n’utilisez pas à la fois un CAPTCHA et une question à réponse humaine sur le même formulaire. Cela va déranger certains clients et vous faire perdre des soumissions légitimes.

Outils spécifiques pour lutter contre le spam

L’un des endroits les plus communs où les gens voient le spam est dans les commentaires. C’est souvent parce qu’ils utilisent un logiciel de création de blogs standard, tel que WordPress. Si vous hébergez vous-même WordPress, il y a certaines choses que vous pouvez faire pour lutter spécifiquement contre le spam de commentaires. Elles fonctionnent pour tout système de création de blog auquel vous avez accès aux fichiers :

  • N’utilisez pas d’URL standard pour les formulaires. La plupart des spams de commentaires sont automatisés. Ils sont envoyés vers WordPress ou d’autres sites de blogs et attaquent directement le formulaire. C’est pourquoi vous verrez parfois du spam de commentaires même si des commentaires sont supprimés de votre modèle. Si le fichier de commentaire (généralement appelé comments.php) existe sur votre site, les spammeurs peuvent et vont l’utiliser pour publier des commentaires de spam sur votre blog. En modifiant le nom du fichier en un autre nom, vous pouvez bloquer ces robots de spam automatisés.
  • Déplacez régulièrement vos pages de formulaire. Même si vous n’utilisez pas un nom de fichier standard pour vos commentaires ou vos champs de formulaire, les spammeurs peuvent les trouver s’ils sont liés à votre site. Et il existe de nombreuses entreprises de spam où tout ce qu’elles font c’est vendre des listes d’URL à des formulaires où les spammeurs peuvent écrire leurs messages. J’ai quelques pages de formulaire qui n’ont pas été actives depuis plus de cinq ans et qui continuent à recevoir des visites périodiques des spammeurs. Ils obtiennent une erreur 404 et je le vois dans mes statistiques, alors je sais que je ne devrais plus utiliser cette page à nouveau.
  • Modifiez le nom de vos scripts d’action de formulaire régulièrement. Mais tout comme les pages de formulaire, vous devriez changer périodiquement le nom des scripts que vous pointez avec l’attribut « action » de vos formulaires. De nombreux spammeurs pointent directement vers ces scripts, contournant complètement les formulaires. Ainsi, même si vous déplacez votre page de formulaire, ils peuvent toujours envoyer leurs spams. En déplaçant le script, vous les dirigez vers une page d’erreur 404 ou 501. Et tout comme la suggestion précédente, j’ai des scripts qui ont été supprimés de mon serveur pendant des années et que les spammeurs essaient encore d’atteindre.

Les spammeurs sont vraiment ennuyeux et tant que le coût d’envoi du spam sera beaucoup moins élevé que le retour, il y aura toujours des spammeurs. Et la course aux armements pour des outils de protection contre des robots spammeurs continuera d’augmenter. Espérons qu’avec une combinaison des outils énumérés ici, vous aurez une stratégie qui durera quelques années.

Partager :