Captchas accessibles et conformes RGPD, une utopie?

Les Captchas sont des épreuves devenues très courantes qui ont pour but de bloquer les bots malveillants et ainsi limiter le spam. Mais ces épreuves sont-elles accessibles pour les personnes porteuses de handicap? Et qu’en est-il de la conformité RGPD? Faisons le tour du sujet.

Rédigé par

Louis Chance

Mis en ligne le

6 décembre 2024
BlogÉthique numérique
Arrière-plan : un homme utilise son ordinateur portable. Premier-plan : un Recaptcha, une illustration de robot et le logo d'accessibilité web.

C’est quoi un Captcha?

Vous en faîtes probablement tous les jours, ils sont partout. Les CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) sont des épreuves qu’on nous fait passer, afin de vérifier que nous sommes humains, et non des bots en train de chercher à envoyer des formulaires ou accéder à certaines parties sensibles d’un site web.

Depuis des années, on nous demande de cliquer tous les jours sur des cases représentant des passages piéton, des fruits ou des animaux en train de faire la sieste pour prouver qu’on est véritablement humain. Au passage, ce serait intéressant d’estimer les heures perdues dans une vie à cliquer sur ces cases.

Exemple de hcaptcha
Les captchas deviennent de plus en plus inventifs

Le problème des Captchas, c’est qu’ils ne sont pas forcément simples à réaliser, même quand on est humain, et encore moins avec certains handicaps (notamment visuels). Les captchas posent aussi des problèmes sur la vie privée des internautes, car des données personnelles peuvent être collectées et transmises à des entreprises privées lors de l’opération.

Les trois principales solutions de captchas du marché

Avant de rentrer dans le vif du sujet, je voulais rapidement vous présenter les solutions les plus utilisées. Vous les connaissez, car vous les voyez tout le temps.

ReCaptcha

C’est la solution de Google. C’est sans conteste le captcha le plus utilisé sur le web. Si vous êtes comme moi devenu expert à identifier des vélos et des feux de circulation, vous savez de quoi je parle.

Le premier problème évident de ReCaptcha est que ce n’est pas une solution conforme au RGPD. Le RGPD pour rappel rapide, c’est le Règlement Général sur la Protection des Données entré en vigueur en 2018 en Europe afin d’éviter que vos données personnelles ne soient transmises, stockées et utilisées par des tiers sans votre consentement.

Recaptcha, en plus de vous faire travailler gratuitement (oui parce que si on demande tous les jours à des centaines de millions de personnes de reconnaître des piétons, ça n’est pas anodin), collecte et transfère des données personnelles vous concernant vers les serveurs de Google.

Exemple de Recaptcha
au moins on est rassuré de savoir qu’on est bien humain

Si vous avez donné votre consentement, aucun soucis. Mais ce consentement, on ne vous le demande généralement pas. Pourquoi ? Parce que le RGPD est une contrainte européenne (il existe d’autres règlementations du même style ailleurs, comme le California Consumer Privacy Act (CCPA) en Californie), et que les mesures de mise en conformité ne sont pas natives. Beaucoup de développeur⋅ses web ne se sont toujours pas mis à la page.

Pour plus d’info sur la non conformité RGPD de Recpatcha, vous pouvez lire ces articles:

hCaptcha

C’est une autre solution très populaire. C’est celle que j’utilise systématiquement depuis des années pour protéger les sites de mes clients des robots spammeurs.

Hcaptcha se vante d’être conforme RGPD et de proposer une solution 100% accessible. Parfait sur le papier.

Cependant, plusieurs personnes malvoyantes ont rapporté avoir eu de gros soucis lorsqu’elles ont du remplir ce captcha. Le problème a fait un peu de bruit avec l’exode actuel vers Bluesky, qui utilise cette solution de captcha. Je vous en reparle plus loin dans cet article.

Cloudflare Turnstile

C’est l’autre captcha qu’on croise assez fréquemment, développé par Cloudflare.

Captcha Turnstile de Cloudflare qui affiche le message "success!"
Vous l’avez probablement également croisé sur de nombreux sites

Cette technologie a l’avantage de fonctionner en arrière-plan sans altérer l’expérience utilisateur en leur demandant de cliquer sur des cases.

Notons que Recaptcha et hCaptcha peuvent aussi fonctionner en arrière-plan dans leurs versions avancées.

Mais comme pour les solutions précédentes, l’outil de Cloudflare pose des soucis pour la mise en conformité RGPD car des données sont collectées et envoyées vers leurs serveurs situés aux États-Unis.

Consentement et Captcha

En Europe, depuis plusieurs années, et encore plus dans des pays comme l’Autriche ou l’Allemagne, on assiste à la mise en procès d’entreprises qui ne respectent pas la RGPD. Les amendes sont plus salées qu’on le croit. Si elle touche les géants du web comme Google ou Amazon (voir cet article du Monde sur le sujet), d’autres entreprises sont aussi inquiétées.

C’est pourquoi s’assurer d’une bonne conformité RGPD sur son site web n’est pas un luxe, mais une véritable obligation légale qui doit être abordée très sérieusement.

Il est compliqué d’obtenir le consentement utilisateur dans le cadre des Captcha. D’abord parce que c’est fastidieux, mais aussi parce qu’en cas de refus, vous risquez de priver vos utilisateurs d’accéder à des fonctionnalités essentielles, comme votre formulaire de contact…. Ou l’intégralité de votre site !

Alors certain⋅es misent là-dessus en mettent en avant que puisque les captchas sont des protections essentielles pour la sécurité et le bon fonctionnement d’un site, le consentement n’a pas à être explicitement demandé. Tout comme c’est le cas pour l’installation des cookies strictement essentiels qu’on retrouve par exemple sur des sites ecommerce (histoire de ne pas perdre le contenu de votre panier à chaque changement de page).

Mais l’argument ne tient pas, et des solutions comme Captcha.eu ou Friendly Captcha ont vu le jour en Europe pour proposer des solutions véritablement conformes au RGPD.

Le problème de l’accessibilité des captcha

On en arrive au gros problème posé par les captcha, qui m’a poussé à rédiger cet article.

Malgré ce qui est avancé par ces solutions, la résolution de captchas par des personnes malvoyantes et très fastidieuse, pour ne pas dire complètement impossible.

Ecran d'accessibilité de hcaptcha qui propose d'installer un cookie d'accessibilité. Un lien pour le récupérer va inviter à entrer son adresse email.
Quand on cherche à passer un hcaptcha en mode accessible, on voit cet écran

J’ai testé la solution d’accessibilité de hcaptcha. Pour moi, forcer un utilisateur à fournir son email et installer un cookie dans son navigateur n’est pas une solution acceptable à mes yeux.

La démarche est trop fastidieuse et implique de transférer une information trop personnelle comparé à l’objectif recherché : valider un simple formulaire.

Le problème des captcha et de l’accessibilité n’est pas nouveau, et avait été brillamment illustré dans cette vidéo réalisée par l’association Valentin Haüy qui oeuvre pour les personnes aveugles et malvoyantes.

En cliquant, cette vidéo est chargée depuis les serveurs de YouTube. Voir la Politique de confidentialité.

Je vous recommande également la lecture de ce très bon article de DesignGouv sur les Captcha et l’accessibilité.

Les solutions accessibles et conformes au RGPD

Face à ce constat sur la technologie des Captcha, il me semble qu’il y a deux grandes solutions qui se dessinent pour continuer à lutter contre les robots malveillants, sans impacter négativement l’expérience utilisateur et l’accessibilité.

Se passer complètement des CAPTCHA

Il existe d’autres moyens de lutter contre les bots. Avec l’essor de l’IA, il devient de toutes façons de plus en plus questionable de continuer à proposer aux utilisateur⋅trices de cliquer sur des cases avec des images, avec les progrès de l’IA qui permet aux bots de résoudre de nombreux captchas aujourd’hui, comme montré récemment par une étude de l’ETH de Zurich.

D’autres techniques existent pour limiter les bots. Bien entendu, aucune n’est infaillible, mais elles peuvent être suffisantes dans de nombreux cas. Parmi celles-ci on retrouve:

  • le honey pot (ou pot de miel en français), qui consiste à ajouter un champ invisible à l’œil humain dans un formulaire et à bloquer les soumissions qui l’ont rempli. Le problème est que le bot peut choisir de laisser ce champ vide et ainsi esquiver le piège.
  • poser une simple question (comme un calcul mathématique simple) en fin de formulaire et n’envoyer le formulaire que si la réponse apportée est bonne.
  • filtrer et bloquer les adresses IP suspectes.
  • mettre en place une limite au nombre de requête par unité de temps.

On peut aussi envisager quand c’est possible de se passer de formulaire, comme dans le cas où l’on souhaite juste proposer une prise de contact. Dans ce cas, fournir une adresse email est suffisant.

Le hic bien sûr, c’est qu’il s’agit d’une information extrêmement précieuse, et qu’en cas de capture de votre adresse par un bot, vous risquez bien plus gros qu’en ayant un formulaire mal protégé. Typiquement, vous vous exposez à des vagues de spams, si votre fournisseur email ne les identifie pas correctement en amont.

La parade est d’utiliser ce qu’on appelle l’obfuscation. L’idée est de dissimuler ou modifier la valeur de votre adresse email aux robots, tout en la rendant intelligible par un humain. Plusieurs techniques existent, mais certaines posent des problèmes d’accessibilité (pour les liseuses d’écran par exemple), ou peuvent être facilement contournée. Vous pouvez trouver ici une liste des techniques d’obfuscation, ma préférée étant celle utilisant du CSS tout simplement.

Se tourner vers des solutions invisibles

Plutôt que de demander à l’internaute de cliquer sur des cases, le CAPTCHA va analyser une série de données sur le comportement de l’utilisateur⋅trice afin de lui donner un score final.

Si ce score est suffisamment bon, alors le test est considéré comme passé. L’avantage est que l’épreuve de travail se fait en tâche de fond, sans demander à l’internaute de cliquer où que ce soit, et encore moins de résoudre des énigmes.

Des outils développés par Captcha.eu, FriendlyCaptcha, ou encore Human Presence fonctionnent ainsi. On pourrait bien sûr en citer d’autres.

L’inconvénient de ces outils est qu’ils sont généralement payants pour un usage commercial, en particulier à partir d’un certain volume de requête.

Mais la question de la protection, de la mise en conformité RGPD et de l’accessibilité de votre site web mérite de s’y intéresser.

Comment choisir entre sécurité et accessibilité ?

Dans ce billet j’ai souhaité vous présenter ma réflexion personnelle sur l’utilisation de CAPTCHA pour bloquer les bots malicieux qui vadrouillent sur le web. On estime en effet qu’environ 40% du traffic Internet est composé de bots, pour la plupart malveillants.

Ceci dit, j’estime qu’on ne peut pas faire passer l’accessibilité d’un site après sa sécurité.

Il faut estimer le risque encouru et trouver les moyens d’actions adaptés sans impacter négativement l’expérience utilisateur⋅trice. Bloquer à la fois les bots et un partie des humains visitant un site n’est pas envisageable.

Pour les sites à traffic modéré, les risques encourus sont moindre et des techniques alternatives sans CAPTCHA comme celles exposées précédemment peuvent être amplement suffisante.

S’il devient difficile de gérer les attaques trop fréquentes de bots sans avoir recours à des moyens plus sophistiqués, j’encourage à utiliser des CAPTCHA complètement invisibles. Attention toutefois, car certaines de ces solutions peuvent afficher des CAPTCHA non accessibles si la preuve de travail effectuée en arrière-plan n’a pas été considérée suffisante.

Contenu rédigé sans IA
Louis Chance

Webdesigner et développeur spécialisé dans la conception de sites Wordpress, je crée des sites web avec éthique pour les entreprises et associations à la recherche de solutions sur mesure et évolutives.

Envie de poursuivre votre lecture ?

Voici 3 autres articles pris au hasard que je vous invite à découvrir.

Code Snippet ma-gdpr-youtube 1.5.0