Suite a des barbouillages de ce blog via les commentaires, j'ai été contraint de mettre un place un système afin de limiter le problème. Les attaques de ces robots sont intimement liés au logiciel utilisé pour la gestion du Blog (Dotclear dans mon cas). Longtemps épargné par ces problèmes, Dotclear est à son tour victime de barbouillages. J'ai donc décidé de mettre un place un système de détection des robots qui polluent ces commentaires.

J'ai d'abord essayé de bannir les adresses IP des machines ayant posté ces commentaires. Cela fonctionne bien, mais ne me librère pas du travail de modération à posteriori et du nettoyage des commentaires. Et surtout cela n'empèche pas les robots de recommencer avec une autre adresse IP.

J'ai donc décidé me tourner vers une autre solution : le CAPTCHA. Un CAPTCHA est un système qui vise à déterminer si l'utilisateur est une personne normale derriere son écran ou bien s'il s'agit d'un robot (programme) qui pratique le barbouillage du site via les commentaires. Le fonctionnement est assez simple : il s'agit d'utiliser des facultés d'analyses trop complexes pour un robot (image brouillée, message sonor, question impliquant une reflexion, etc.) mais à la portées de tous.

Par chance un utilisateur de dotclear à créé un plugin qui rempli cet office. Vous le trouverez à cette adresse : http://www.atelierphp5.com/un-captcha-accessible.html

Il permet les vérification classiques (chiffres avec un fond) mais également des choses plus évoluées comme "Combien font onze fois deux?".

Le CAPTCHA sur Wikipedia : http://fr.wikipedia.org/wiki/Captcha

[EDIT 24/02/2006] : Tout comptes faits, je me demande si je ne pas aussi mettre un plugin anti-sms dans les commentaires :-)

[EDIT 24/02/2006 bis] : visiblement des parades pour les captcha existent, mais ne sont pas efficaces à 100 % (heuresement). De ce que j'ai pu lire et voir, le plugin installé sur mon blog tiendra encore quelques temps :-)

Quelques projets visant à montrer la faiblesse de certains capcha :

PWNtcha - captcha decoder : http://sam.zoy.org/pwntcha/

Tester votre capcha - PWNtcha proof of concept : http://www.pwntcha.net/test.html

Breaking a Visual CAPTCHA : http://www.cs.sfu.ca/~mori/research/gimpy/