Dans un article précédent, nous donnions plusieurs raisons de remplacer le formulaire de contact de Joomla! par une version améliorée en utilisant le composant Fabrik. Aujourd'hui, nous ajoutons une nouvelle raison de le faire : lutter contre le spam de robots dans les formulaires.
Pour les clients que nous hébergeons sur notre propres serveurs, nous offrons déjà une protection en filtrant les visites contre les robots spammeurs les plus connus et en utilisant les services du projet Honey Pot et de BotScout. Et cela donne de bons résultats : même sur les sites à fort trafic, le nombre de faux remplissages ne dépasse pas quelques unités par an. Néanmoins, il y a toujours des exceptions et certains scripts arrivent encore à passer entre les mailles du filet.
Dans ce cas, la première réaction des clients est de nous demander d'installer un "CAPTCHA" sur leur formulaire.
Suivant la définition de Wikipédia, le terme CAPTCHA est une marque commerciale de l'université Carnegie-Mellon désignant une famille de tests de Turing permettant de différencier de manière automatisée un utilisateur humain d'un ordinateur. Il s'agit le plus souvent d'images présentant un texte déformé que le visiteur doit reproduire dans un champ prévu à cet effet.
La riposte des robots
Mais les robots sont devenus intelligents et la plupart d'entre eux sont maintenant capables de "lire" ces images aussi bien (ou aussi mal !) que les humains. Les plus performants d'entre eux sont même capables de résoudre les problèmes mathématiques ou autres jeux proposés par les Captchas les plus modernes.
C'est pourquoi nous avons toujours essayé de décourager nos clients d'en installer dans leurs sites, avec l'argument qu'en général ces dispositifs sont une nuisance plus grande pour leurs visiteurs (et peut-être futurs clients) que ne le sont les quelques spams qu'ils reçoivent.
Heureusement, il est maintenant possible de se protéger efficacement sans sacrifier le confort du visiteur, en exploitant la façon dont les robots tentent eux-mêmes de surmonter les obstacles que leur tendent les webmasters.