Accueil » Outils » Comment fonctionnent les captchas ?

Le scénario est plutôt classique, vous souhaitez créer un nouveau compte mail, mais juste avant de valider la création de votre compte, vous devez d’abord passer un test.

Ce test se présente souvent sous forme d’image(s) représentant un texte distordu :

captcha

En tant normal, le test est plutôt facile, et c’est le but.

Vous en avez probablement déjà entendu parler, ce test est un captcha de sécurité. Il permet d’éviter que des robots effectuent des actions automatisées envers certains services.

Captcha vient de « Completely Automated Public Turing Test to Tell Computers and Humans Apart ».

Excplications sur le Test de Turing

Alan Turing était un brillant mathématicien et cryptologue britannique né en 1912 et décédé en 1954. Il a notamment mis au point des méthodes pour casser le code chiffré de la machine Enigma utilisée pendant la Seconde Guerre mondiale. Mais l’un de ces travaux les plus notables est celui du test de Turing.

Le test de Turing est un test d’intelligence artificielle basé sur la faculté d’imiter la conversation humaine. Le test consiste à faire communiquer d’un côté un humain et de l’autre côté un ordinateur ou un autre humain à l’aveugle. Si l’humain passant le test n’arrive pas à déterminer s’il parle à un ordinateur ou à un être humain, le test est réussi.

Dans le cas des captchas, il s’agit donc d’un test du Turing inversé, c’est-à-dire que si le captcha permet de différencier une machine d’un robot, le test est réussi.

Différents types de captchas

L’exemple précédent est celui d’un captcha classique et potentiellement faillible. En effet, des systèmes de déchiffrement de captchas existent, on les place dans la famille des outils de reconnaissance optique de caractères (ROC). Ces derniers peuvent facilement passer le test si le captcha n’est pas très avancé.

De ce pas, plusieurs types de captchas ont été créés, en voici quelques uns :

Le captcha classique

Il s’agit notamment de celui créé par reCaptcha que vous voyez souvent sur le web. Il s’agit de taper deux mots dans l’ordre et séparés par un espace.

captchanormal

Saviez-vous que seulement un des deux mots est reconnu de manière certaine ?

L’autre est issu d’une numérisation d’un livre du domaine public opérée par Internet Archive.

Ce deuxième mot sera à son tour officiellement reconnu si plusieurs utilisateurs l’ont vérifié en obtenant le même résultat. (Cela signifie également que vous n’êtes pas obligé de trouver les deux mots).

À noter que cela peut servir dans le cas où il n’est vraiment pas possible de résoudre un captcha, même pour un être humain…

wtf

« Je ne suis pas un robot »

Il s’agit d’une nouveau type de captcha qui part du principe qu’écrire des mots pour prouver qu’on n’est pas un robot n’est pas très pratique. L’équipe Google en charge du projet a donc créé ce moyen simple de prouver qu’on n’est pas un robot : une seule case à cocher.

Le fonctionnement précis de ce système n’est pas communiqué, pour éviter que des petits malins puissent le détourner, mais dans les grandes lignes il teste trois actions :jenesuispasunrobot

  • Ce que l’internaute (ou le robot) fait avant de cliquer sur la case (est-ce que la souris a sauté directement en plein milieu de la case, comment les autres champs ont été remplis…etc).
  • Ou est-ce que le clic est effectué dans la case.
  • Ce que l’internaute (ou le robot) fait juste après le clic (est-ce que la souris saute mécaniquement sur un bouton…etc).

Bien entendu, si le système n’est pas sûr d’avoir déterminé si le visiteur est bien humain, il lance tout de même un captcha « classique ».

Le captcha par identification d’image

Il s’agit ici de trouver la ou les images parmi une liste donnée qui correspondent à un mot.

captchaidentificationimage

Le captcha par reconstitution d’un puzzle

Toujours pour décomplexifier le captcha classique tout en évitant d’accepter les robots, il existe des captchas par reconstituion d’un puzzle. L’idée étant de reconstituer une image en faisant glisser les pièces dans le bon ordre avec sa souris :

captchapuzzle

Autres types de captcha

Sans les citer tous, il existe d’autres types de captcha dont :

  • Les captchas audio
  • Les captchas par résolution d’un calcul

Application à la sécurité informatique

Bien entendu, on n’utiliserait pas de captchas sur le web, si on n’en avait pas besoin.

En l’occurrence, le besoin ici est de lutter contre les spammers et contre les tentatives de cassage de mots de passe.

Contrer les spammers

Initialement utilisés pour contrer les robots qui votaient automatiquement à des sondages en ligne, les captchas ont maintenant divers buts.

L’idée est par exemple d’éviter les spammers de générer des centaines ou milliers de comptes ou encore de télécharger automatiquement une centaine de fichiers à la suite.

L’exemple le plus notable concernant la sécurité informatique est celui permettant de limiter les tentatives d’accès à des ressources protégées. Habituellement, lorsque vous essayez divers mots de passe erronés à la suite, vous allez être obligé de remplir un captcha pour vérifier que vous n’êtes pas un robot essayant de trouver la bonne combinaison de caractères.

Créer un captcha

Pour créer un captcha sur votre site web, vous avez plusieurs choix dont ceux qu’on a vus précédemment.

Pour installer un captcha reCaptcha sur votre site web, vous pouvez vous rendre directement sur le site de Google :

https://www.google.com/recaptcha/admin#list

On vous demandera d’enregistrer votre site et les domaines concernés. Vous aurez ensuite à générer deux clés, l’une que vous garderez pour vous (clé secrète) et l’autre que vous placerez dans le code HTML (clé du site).

Les exemples de codes sont donnés dans la documentation :

https://developers.google.com/recaptcha/docs/display

Vous en trouverez également sur le projet Github associé :

https://github.com/google/recaptcha

14 Commentaires

  1. Bonjour Michel,

    C’est vrais que certain code sont chiant surtout ceux qui ont les lettres tordu, ce système décourageaient beaucoup de monde, moi y compris. Le mieux de tous est celui, je ne suis pas un robot, puis les images et le puzzle

    • Boubacar a écrit:

      Salut monsieur Michel, vraiment pour commencer je vous remercie infiniment… Et je vous assure que tout vos articles m’ont plu… Et une prière pour vous :que le grand Dieu vous récompense en vous offrant le Paradis… Bonne soirée.

  2. Bonjour,

    Il existe une autre parade à cette technique Captcha dont je n’ai plus le nom en tête qui consiste à contraindre l’internaute à activer l’exécution javascript sur son navigateur pour lui permettre d’obtenir un test ‘Captcha’ pertinent. Dans le cas contraire, le test Captcha affiché est presque impossible à réussir.

  3. Très intéressant ! J’étais pas au courant pour la case « je ne suis pas un robot » à cocher, j’imagine que moi j’allais directement sur le bouton, et donc croyait que j’étais un robot.
    Bizarre, ton article je le vois pas « Tous les articles », heureusement que j’ai reçu le mail ^^

  4. Merci à vous.
    @Moongm : normalement l’article s’affiche dans la page « tous les articles », mais il y a sans doute un temps de mise en cache qui peut jouer sur l’affichage 🙂

  5. Black Ghosty a écrit:

    Bonjour à tous,
    Si initialement le captcha avait pour but d’éviter les spams, de nos jours la plupart sont une source de revenus publicitaires pour les sites. Il m’arrive régulièrement d’être obligé de renseigner 2 captchas en suivant. Heureusement je bloque le script de visionnage de la pub.

  6. Excellent article. Je tiens à vous informer d’un problème d’accès à la rubrique « Les guides ». Google Chrome indique :

    Ce site ne peut pas fournir de connexion sécurisée

    http://www.leblogduhacker.fr utilise un protocole incompatible.

    Le client et le serveur ne sont pas compatibles avec une version de protocole ou une méthode de chiffrement SSL courante. Le problème se produit généralement lorsque le serveur nécessite un chiffrement RC4, qui n’est plus considéré comme sécurisé.

    • Bonjour et merci d’avoir signalé le problème. Ce problème n’apparaît visiblement qu’avec le navigateur Google Chrome que je vous conseille de changer pour accéder à la page en question. Je vais voir si je peux résoudre le souci de mon côté.

      • Merci Michel pour la rapidité de ta réponse. Google Chrome étant le navigateur Web le plus utilisé en France, ce problème d’accès te prive de bon nombre de visiteurs dans cette rubrique. Pour information, le site du laboratoire d’analyses médicales où je vais faire mes prises de sang régulièrement a eu un problème similaire il y a quelques mois. Le problème se situait également côté serveur. J’espère que tu pourras résoudre ce problème. Bonne continuation pour ton site que j’ai découvert récemment et que je trouve très intéressant.

        • Bonjour,
          Il se pourrait que la cause de ce message (Ce site ne peut pas fournir de connexion sécurisée) n’ait aucun lien avec le serveur. Il existe d’autres possibilités: mauvais certificats du navigateur suite à l’action d’un antivirus, problème de mise à jour de l’horloge… Ou pire peut-être un détournement de DNS qui cause cette alerte…

        • Bonjour et merci encore d’avoir signalé le souci ! J’ai effectué les modifications nécessaires, est-ce que le message apparaît toujours ?

  7. Merci pour cet article bourré de conseils. Je partage sans hésiter!

  8. Je trouve que les captcha sont très essentiels pour une question de sécurité du site. Et vos info sont très pertinentes , merci.

Laisser un commentaire

Lire plus :
créer un site web sécurisé
Créer un site web sécurisé

Il existe déjà beaucoup d'articles concernant la création de sites web, je ne vais donc pas en faire un de...

Fermer