Qu'est-ce que le CAPTCHA ?
Le CAPTCHA authentifie les utilisateurs en tant qu'humains pour éviter les menaces posées par des bots malveillants.
Dessin isométrique montrant des employés de bureau utilisant tous IBM Security
Qu'est-ce que le CAPTCHA ?

CAPTCHA, acronyme de "Completely Automated Public Turing Test* to Tell Humans Apart", désigne diverses méthodes d'authentification permettant de reconnaître les utilisateurs en tant qu'humains, et non en tant que bots, en les soumettant à un test simple pour les humains mais difficile pour les machines. Les CAPTCHA empêchent les escrocs et les spammeurs d'utiliser des bots pour remplir des formulaires Web à des fins malveillantes.

Les CAPTCHA traditionnels demandent aux utilisateurs de lire et de retaper correctement un texte déformé qui ne peut pas être interprété par la technologie de reconnaissance optique de caractères (ROC). Les nouvelles itérations de technologie CAPTCHA utilisent des analyses comportementales et de risque basées sur l'IA pour authentifier les utilisateurs humains en fonction de schémas d'activité plutôt que d'une seule tâche discrète.

De nombreux sites Web demandent aux utilisateurs de faire une demande d'authentification CAPTCHA avant de se connecter à un profil de compte, de remplir un formulaire d'inscription, de publier un commentaire ou d'effectuer toute autre action pour laquelle des pirates pourraient utiliser un bot. La réussite de la demande d'authentification indique que les utilisateurs sont humains et sont autorisés à poursuivre leur activité sur le site Web.

L' évolution du CAPTCHA

Les premières formes de la technologie CAPTCHA ont été développées par plusieurs groupes différents en parallèle à la fin des années 1990 et au début des années 2000. Chaque groupe s'efforçait de lutter contre le problème répandu des pirates informatiques qui utilisaient des bots pour mener des activités néfastes sur Internet. Par exemple, des informaticiens travaillant pour le moteur de recherche AltaVista voulaient empêcher les bots d'ajouter des adresses Web malveillantes à la base de données de liens de l'entreprise.

Des chercheurs de la société informatique Sanctum ont déposé le premier système de style CAPTCHA en 1997. Mais le terme CAPTCHA a été inventé en 2003 par un groupe de chercheurs en informatique de l'Université Carnegie Mellon dirigé par Luis von Ahn et Manuel Blum. Cette équipe a été incitée à travailler sur cette technologie par un cadre de Yahoo qui avait présenté lors d'une conférence les problèmes rencontrés par l'entreprise avec les spambots qui créaient des millions de faux comptes de messagerie.

Pour résoudre le problème de Yahoo, von Ahn et Blum ont alors créé un programme informatique qui 1) générait une chaîne de texte aléatoire, 2) générait une image déformée de ce texte (appelée "code CAPTCHA"), 3) présentait l'image à l'utilisateur et 4) demandait à l'utilisateur de saisir le texte dans une zone de formulaire, puis de valider sa saisie en cochant la case située à côté de la phrase "Je ne suis pas un robot". Comme la technologie de reconnaissance optique de caractères (ROC) de l'époque avait du mal à déchiffrer un texte aussi déformé, les bots ne pouvaient pas réussir la demande d'authentification CAPTCHA. Si un utilisateur entrait la bonne chaîne de caractères, on pouvait supposer de manière fiable qu'il s'agissait d'un humain, et il était autorisé à terminer l'enregistrement de son compte ou la soumission du formulaire Web.

Yahoo a mis en œuvre la technologie de Carnegie Mellon, obligeant tous les utilisateurs à effectuer un test CAPTCHA avant de s'inscrire pour obtenir une adresse électronique. Cela a considérablement réduit l'activité des spambots, et d'autres entreprises ont adopté les CAPTCHA pour protéger leurs formulaires Web. Au fil du temps, cependant, les pirates ont utilisé les données des demandes d'authentification CAPTCHA terminées pour développer des algorithmes capables de réussir les tests CAPTCHA de manière fiable. Cela a marqué le début d'une course aux armements entre les développeurs de CAPTCHA et les cybercriminels, qui a alimenté l'évolution de la fonctionnalité CAPTCHA.

reCAPTCHA v1

Lancé par von Ahn en 2007, reCAPTCHA v1 avait un double objectif : rendre la demande d'authentification CAPTCHA textuelle plus difficile à résoudre pour les bots et améliorer la précision de la reconnaissance optique de caractères (ROC) utilisée à l'époque pour numériser les textes imprimés.

reCAPTCHA a atteint le premier objectif en augmentant la distorsion du texte affiché à l'utilisateur, puis en ajoutant des lignes dans le texte.

Il a atteint le deuxième objectif en remplaçant une seule image de texte déformé générée de manière aléatoire par deux images de texte déformé de mots numérisés à partir de textes réels par deux programmes ROC différents. Le premier mot, ou mot de contrôle, était un mot identifié correctement par les deux programmes ROC ; le deuxième mot était un mot que les deux programmes ROC n'avaient pas réussi à identifier. Si l'utilisateur identifiait correctement le mot de contrôle, reCAPTCHA 1) supposait que l'utilisateur était humain et lui permettait de poursuivre sa tâche et 2) supposait également que l'utilisateur identifiait correctement le deuxième mot, et utilisait la réponse pour vérifier les futurs résultats de la ROC.

reCAPTCHA a ainsi amélioré la sécurité anti-bot et la précision des textes numérisés dans Internet Archive et le New York Times. (Ironiquement, au fil du temps, cela a également contribué à améliorer l'intelligence artificielle et les algorithmes d'apprentissage automatique au point que, en 2014, ils pouvaient identifier les CAPTCHAs textuels les plus déformés dans 99,8 % des cas.)

En 2009, Google a acquis reCAPTCHA et a commencé à l'utiliser pour numériser des textes pour Google Books tout en le proposant comme service à d'autres organisations. Cependant, alors que la technologie ROC avait progressé avec l'aide de reCAPTCHA, il en était de même pour les programmes d'intelligence artificielle capables de résoudre efficacement les reCAPTCHA basés sur du texte. En réponse, Google a introduit en 2012 des reCAPTCHA de reconnaissance d'image, qui remplaçaient le texte déformé par des images provenant de Google Street View. Les utilisateurs prouvaient qu'ils étaient humains en identifiant des objets du monde réel comme des réverbères et des taxis. En plus d'éviter les programmes ROC avancés désormais déployés par des bots, ces reCAPTCHA basés sur des images étaient considérés comme plus pratiques pour les utilisateurs d'applications mobiles.

Google ReCAPTCHA v2 : No CAPTCHA reCAPTCHA

En 2014, Google a publié reCAPTCHA v2, qui a remplacé les demandes d'authentification basées sur le texte et l'image par une simple case à cocher indiquant "Je ne suis pas un robot." Lorsque les utilisateurs cochent la case, reCAPTCHA v2 analyse les interactions de l'utilisateur avec les pages Web, en évaluant des facteurs tels que la vitesse de frappe, les cookies, l'historique de l'appareil et l'adresse IP pour déterminer si un utilisateur est susceptible d'être humain. La case à cocher fait également partie du fonctionnement de CAPTCHA : No CAPTCHA reCAPTCHA suit les mouvements de la souris de l'utilisateur lorsqu'il clique sur la case. Les mouvements d'un humain ont tendance à être plus chaotiques, alors que ceux des bots sont plus précis. Si No CAPTCHA reCAPTCHA soupçonne qu'un utilisateur peut être un bot, il lui présente une demande d'authentification CAPTCHA basée sur une image. 

ReCAPTCHA v3

reCAPTCHA v3, qui a fait ses débuts en 2018, supprime la case à cocher et développe l'analyse de risque basée sur l'IA de No CAPTCHA reCAPTCHA. ReCAPTCHA v3 s'intègre à une page Web via l'API JavaScript et s'exécute en arrière-plan, en évaluant le comportement de l'utilisateur sur une échelle de 0.0 (probablement un bot) à 1.0 (probablement un humain). Les propriétaires de sites Web peuvent définir des actions automatisées qui se déclenchent à certains moments lorsque le score d'un utilisateur suggère qu'il pourrait s'agir d'un bot. Par exemple, les commentaires de blog des utilisateurs à faible score peuvent être envoyés dans une file d'attente de modération lorsqu'ils cliquent sur "soumettre", ou ces utilisateurs peuvent être invités à effectuer un processus d'authentification multifacteur lorsqu'ils tentent de se connecter à un compte.

En supprimant les demandes d'authentification interactives du processus de vérification CAPTCHA, les méthodes d'authentification basées sur l'IA, comme reCAPTCHA v3, cherchent à contourner le problème des pirates qui utilisent les données des demandes d'authentification précédemment résolues pour entraîner les bots à déchiffrer les nouveaux CAPTCHA. C'est pour cette raison que les experts pensent que les CAPTCHA basés sur l'IA pourraient devenir la norme et remplacer complètement les CAPTCHA basés sur des demandes d'authentification dans les 5 à 10 prochaines années.

Cas d' utilisation de CAPTCHA

Comme mesure de détection et de prévention des bots, la technologie CAPTCHA a plusieurs utilisations courantes, notamment les suivantes :

Prévenir les faux enregistrements. En demandant aux utilisateurs d'effectuer une demande d'authentification CAPTCHA avant de s'inscrire à un compte de messagerie, à un profil de réseau social ou à un autre service en ligne, les entreprises peuvent filtrer les bots qui cherchent à utiliser ces services pour propager des spam ou des logiciels malveillants ou pour mener d'autres activités malveillantes. Les premiers utilisateurs de CAPTCHA étaient des entreprises comme Yahoo, Microsoft et AOL, qui voulaient empêcher les bots de s'enregistrer pour de faux comptes de messagerie.

Se prémunir contre les transactions suspectes. Des sociétés telles que Ticketmaster ont utilisé CAPTCHA pour empêcher les bots d'acheter des produits limités, comme des billets de concert, et de les revendre sur des marchés secondaires.

Protéger l'intégrité des sondages en ligne. Sans moyen de dissuasion comme CAPTCHA, les sondages en ligne peuvent être compromis par des bots. Certaines des premières expériences de technologie de type CAPTCHA ont été motivées par la nécessité de protéger l'intégrité des résultats de sondages en ligne. Par exemple, pour garantir la qualité de ses sondages d'opinion en ligne lors de l'élection présidentielle américaine de 1996, Digital Equipment Corporation a demandé aux utilisateurs de localiser et de cliquer sur l'image pixelisée d'un drapeau sur la page Web avant de voter.

Arrêter les spams de commentaires et de revues de produits. Les escrocs et les cybercriminels utilisent souvent les sections de commentaires des blogues et des articles pour propager des escroqueries et des logiciels malveillants ; ils peuvent également se livrer à des spams d'évaluation, dans lesquels ils publient un grand nombre de fausses évaluations pour améliorer artificiellement le classement d'un produit sur un site de vente en ligne ou un moteur de recherche. Les bots peuvent également utiliser les sections de commentaires non protégées pour mener des campagnes de harcèlement. Ces activités malveillantes peuvent être atténuées en demandant aux utilisateurs de remplir un CAPTCHA avant de publier un commentaire ou une évaluation.

Se défendre contre les attaques par force brute et par dictionnaire. Dans les attaques par force brute et par dictionnaire, les pirates s'introduisent dans un compte en utilisant des bots pour deviner des combinaisons de chiffres, de lettres et de caractères spéciaux jusqu'à ce qu'ils trouvent le bon mot de passe. Ces attaques peuvent être stoppées en demandant aux utilisateurs de remplir un CAPTCHA après un certain nombre de tentatives de connexion infructueuses.

Inconvénients de CAPTCHA

Bien que la technologie CAPTCHA se soit généralement avérée efficace pour arrêter les bots, elle n'est pas sans inconvénients.

Une expérience utilisateur peu pratique. Les demandes d'authentification CAPTCHA ajoutent une étape supplémentaire aux processus d'enregistrement, de connexion et de remplissage de formulaires, que certaines personnes trouvent fastidieuse. De plus, comme la complexité des CAPTCHA a augmenté pour vaincre les bots plus sophistiqués, la résolution des CAPTCHA est également devenue frustrante pour les utilisateurs. Dans une étude réalisée en 2010, lorsque des chercheurs de l'université de Stanford ont demandé à des groupes de trois personnes de résoudre les mêmes CAPTCHA, les participants se sont mis d'accord à l'unanimité sur la solution CAPTCHA dans 71 % des cas seulement (PDF, 2,5 Mo ; lien externe à IBM.com). L'étude a également révélé que les anglophones non natifs ont plus de mal à résoudre les CAPTCHA que les locuteurs natifs, ce qui suggère que les CAPTCHA peuvent être plus difficiles pour certains groupes démographiques que pour d'autres.

Inaccessibilité. Les CAPTCHA de texte et d'image peuvent être extrêmement difficiles, voire impossibles, à résoudre pour les utilisateurs malvoyants. Ce problème est aggravé par le fait que les lecteurs d'écran ne peuvent pas lire la plupart des demandes d'authentification CAPTCHA, car ces tests sont conçus pour être illisibles par les machines.

Des formes alternatives de CAPTCHA ont tenté de résoudre ce problème, mais elles ont leurs propres limites. Les CAPTCHA audio, qui demandent aux utilisateurs de déchiffrer un son brouillé, sont notoirement difficiles à résoudre. L'étude de Stanford mentionnée plus haut a révélé que les utilisateurs ne sont d'accord à l'unanimité sur les solutions CAPTCHA audio que dans 31 % des cas.

MAPTCHA, un type de CAPTCHA qui demande aux utilisateurs de résoudre des problèmes mathématiques simples, est très vulnérable au piratage par des algorithmes.

L'utilisation de CAPTCHAs inaccessibles peut également avoir des répercussions juridiques. L'amendement de l'article 508 de la loi sur la réhabilitation de 1973, introduit en 1998, oblige les agences fédérales américaines et les organisations privées qui font affaire avec ces agences à rendre les informations numériques accessibles aux personnes handicapées. Les entreprises peuvent enfreindre cette exigence si elles ne disposent pas d'options CAPTCHA accessibles.

Des taux de conversion plus faibles. L'expérience utilisateur peu pratique et l'inaccessibilité des CAPTCHA peuvent avoir une influence négative sur les taux de conversion. Dans une étude de cas de 2009 portant sur 50 sites Web, le fait de demander aux utilisateurs de remplir un CAPTCHA a réduit les conversions légitimes de 3,2 %  (lien externe à IBM.com). Les CAPTCHA audio peuvent être particulièrement préjudiciables : l'étude de Stanford mentionnée ci-dessus a révélé que les utilisateurs renoncent à résoudre les CAPTCHA basés sur le son dans 50 % des cas.

L'IA des bots continue d'évoluer pour déjouer les nouveaux CAPTCHA.Si les schémas CAPTCHA ont changé de si nombreuses fois depuis la création de la technologie, c'est parce que les bots ont constamment évolué pour déjouer chaque nouvelle demande d'authentification CAPTCHA. La structure même de la technologie CAPTCHA contribue à ce problème, car les CAPTCHA reposent sur des problèmes d'IA non résolus pour déjouer les bots. Lorsque des humains résolvent des demandes d'authentification CAPTCHA, ils génèrent des ensembles de données qui peuvent entraîner les algorithmes d'apprentissage automatique à surmonter ces problèmes d'IA auparavant impossibles. Par exemple, en 2016, le chercheur en informatique Jason Polakis a utilisé la recherche d'images inversées de Google pour résoudre les CAPTCHA basés sur les images de Google avec une précision de 70 %.

Problèmes de confidentialité. Alors que de nouvelles formes de CAPTCHA tentent de résoudre les problèmes d'accessibilité et d'arrêter la course aux bots en supprimant entièrement les demandes d'authentification interactives, certains utilisateurs et chercheurs trouvent les CAPTCHA pilotés par l'IA envahissants. Des personnes ont exprimé des inquiétudes quant à la façon dont reCAPTCHA v3 utilise des codes et des cookies pour suivre les utilisateurs sur plusieurs sites Web. Certains estiment que la manière dont ces données de suivi pourraient être utilisées à des fins autres que la vérification n'est pas suffisamment transparente.

*Le test de Turing, du nom de son créateur Alan Turing, teste la capacité d'une machine à faire preuve d'intelligence humaine.

Solutions connexes
Gestion des identités et des accès

Connectez chaque utilisateur au bon niveau d'accès avec la solution IBM Security Verify IAM.

Explorer les solutions IAM
Authentification avancée

IBM Security Verify vous permet d'aller au-delà de l'authentification de base avec des options d'authentification sans mot de passe ou multifacteur.

Explorer l'authentification avancée
Accès évolutif

Protégez les utilisateurs et les actifs avec une authentification basée sur les risques et assistée par l'IA avec IBM Security Verify.

Explorer les solutions d'accès adaptatif
Ressources Qu'est-ce que la gestion des identités et des accès (IAM - Identity and Access Management) ?

L'IAM permet aux administrateurs informatiques d'attribuer, d'authentifier, d'autoriser et de gérer une identité numérique unique pour chaque utilisateur ou entité du réseau.

Qu'est-ce que l'authentification multifacteurs (MFA) ?

La MFA exige au moins un facteur d'authentification en plus du mot de passe, ou au moins deux facteurs d'authentification à la place du mot de passe, pour authentifier les utilisateurs.

Qu'est-ce que la connexion unique (SSO) ?

La connexion unique permet aux utilisateurs de se connecter une fois à une session, en utilisant un ensemble unique de données d'identification de connexion, et d'accéder à plusieurs applications et services connexes pendant cette session.