2014
21/Juil

CAPTCHA

A l’origine des CAPTCHAS : le SPAM

Sur le web, il existe une multitude de programmes automatisés qui tentent de réaliser des opérations normalement réservées à des êtres humains : inscription à un service, envoi d’un commentaire sur un blog ou un forum, soumission d’un site web dans un annuaire… Les motivations sont nombreuses pour les hackers : faire du référencement naturel en générant des backlinks en masse automatiquement (technique désormais inefficace), spammer des sites concurrents, générer de faux profils sociaux…

Définition d’un CAPTCHA

On est tous déjà tombés sur un captcha. Généralement, on doit identifier des lettres et des chiffres  légèrement dissimulés. Ce genre de méthode est souvent utilisée dans les inscriptions ou les pages de formulaire. Littéralement, le mot captcha est un acronyme signifiant « Completely Automated Public Turing Test To Tell Computers and Humans Apart ». En français on pourrait traduire cette formule par « test de Turing entièrement automatique pour différencier les ordinateurs des humains ». En terme de développement web et mobile, rappelons que le test de Turing est une épreuve servant à déterminer si une intelligence artificielle est capable d’imiter la conversation humaine. Le but du captcha est donc de pouvoir être résolu facilement par un humain tout en empêchant les robots de réussir le test. Par le terme robot, on entend un logiciel informatique capable de réaliser automatiquement certaines tâches répétitives sur internet et en particulier remplir un formulaire dans le but d’envahir ou spamer le site.

CAPTCHA numérique

Exemple de CAPTCHA

Il existe plusieurs types de CAPTCHAS :

  1. La génération d’une image contenant un texte rendu indéchiffrable par des machines, par la forme des lettres et/ou des chiffres et/ou à cause d’un contraste faible. Une variante consiste à placer le texte devant un fond photographique pour éviter la détection des contours par les logiciels anti-captcha.
  2. La résolution d’un calcul simple dans une image.
  3. L’utilisation d’un son, souvent redondant avec les images, pour permettre aux personnes mal voyantes d’accéder au service.
  4. La réponse à une question à laquelle seul un humain peut répondre.
  5. Plus récemment, l’identification par un utilisateur d’une partie d’une image. Par exemple : quel est cet animal.

Présence recommandée sur les formulaires d’inscription

Lorsque l’on propose un formulaire d’inscription ou de contact, il est souvent conseillé d’installer un captcha. C’est un outil gratuit et relativement efficace. Il se présente le plus souvent sous la forme d’un plug-in. Une autre utilisation du captcha peut être pour des raisons de rémunération publicitaire. En effet, pour le captcha publicitaire le texte à saisir va être en lien avec un message, une marque, un slogan. L’internaute va ainsi mémoriser le message indiqué. Plus le captcha sera utilisé, et plus le site sera rémunéré par la régie publicitaire. C’est donc une méthode de rémunération utile et simple à mettre en place.

Limites des CAPTCHAS

L’intérêt des CAPTCHAS par génération de chiffres et de lettres dans des images est que le système peut générer automatiquement une multitude de combinaisons. Ce système est donc bien adapté aux sites à forts trafics soumis à de nombreuses attaques. Cependant, des services comme Death By Captchas n’ont aucun mal à déchiffrer ces textes pour quelques centimes, rendant finalement les CAPTCHAS très peu efficaces. De plus, certains CAPTCHAS sont parfois indéchiffrables par les êtres humains eux-mêmes, ce qui nuit à l’expérience utilisateur.Pour les sites de plus petites tailles, une question peut être un excellent moyen de lutter contre le SPAM issu des systèmes entièrement automatisés. Si, de surcroît, cette question est en français, la plupart des spammeurs (souvent anglophones) ne passeront pas cette validation, même en utilisant Google Translate. Par exemple, l’utilisateur doit répondre à la question : « quelle est la couleur du cheval blanc d’Henri IV ».

Les alternatives aux CAPTCHAS

En fonction du type de problème que l’on souhaite éviter (attaques, spams…), d’autres techniques peuvent être mises en œuvre :

Filtres Anti-Spam

On peut utiliser des filtres qui identifient automatiquement les commentaires douteux et les placent dans le dossier indésirable. Sur WordPress, Akismet propose ce service. Bien qu’il existe toujours un risque d’éliminer des commentaires authentiques (faux positifs), la précision du filtre reste néanmoins très élevée.

Champ de formulaire caché

La plupart des robots de spam ont tendance à remplir tous les champs d’un formulaire pour maximiser leurs chances de réussite. Une astuce classique consiste donc à placer un champ de formulaire caché pour un utilisateur humain, et qui ne doit pas être rempli pour valider le formulaire. Ainsi, les robots, en remplissant ce champ, ne réussiront pas à valider le formulaire.

Accès restreint au niveau serveur

Pour se protéger des attaques par force brute, par exemple pour des tentatives d’accès au back-office d’un CMS comme WordPress, il peut être judicieux de protéger le formulaire de login directement par une authentification au niveau du serveur.

Bannissement d’IP

Si le SPAM ou les attaques sont issues de la même adresse IP (vérifiable dans les logs serveur), il peut être efficace de mettre en place des systèmes de bannissement d’ip au niveau serveur (par exemple avec Fail2ban) ou au niveau applicatif (par exemple avec un plugin WordPress).

Double Opt-In

L’inscription automatisée à des listes de destinataires peut être évitée en pratiquant systématiquement le double opt-in.

Pour aller plus loin, nous vous invitons à découvrir notre agence developpement web et à télécharger notre livre blanc « Les 11 commandements d’un site internet qui convertit vos visiteurs en clients »

Gabriel Dabi-Schwebel

Posté par

Ingénieur de formation j’ai commencé ma carrière dans le conseil en télécom et en média. J’ai aus

Gabriel Dabi-Schwebel

Contact Développement web :

Jérémie Dornbusch

jd@1min30.com
07 85 92 87 77





Commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Dépassez les objectifs de votre investissement HubSpot !
Rejoignez notre communauté et donnez-vous les moyens de réussir