Copyright © 2005 W3C® (MIT, ERCIM, Keio), tous droits réservés. Les règles de responsabilité, de nom de marque et d'utilisation des documents du W3C s'appliquent.
Une méthode courante pour limiter l'accès aux services disponibles sur le Web est celle constituée par la vérification visuelle d'une image pixelisée. Elle se révèle un problème majeur pour les utilisateurs qui sont aveugles, souffrent d'une mauvaise vue ou pâtissent d'une difficulté cognitive telle que la dyslexie. Ce document présente quelques solutions potentielles permettant aux systèmes de vérifier la nature humaine de leurs utilisateurs tout en préservant l'accès des personnes handicapées.
Cette section décrit le statut de ce document au moment de sa publication. D'autres documents peuvent venir le remplacer. On peut trouver la liste des publications courantes du W3C et la dernière révision de ce rapport technique dans l'index des rapports techniques du W3C à http://www.w3.org/TR/.
Cette note de groupe de travail du W3C a été produite par le groupe de travail Protocoles et formats WAI. Le groupe de travail marque l'expression de son consensus en soutenant la publication de cette note.
Le groupe de travail Protocoles et formats WAI admet que ce domaine technologique est dynamique. Le groupe prévoit de poursuivre l'étude des CAPTCHA et des technologies apparentées. Il espère des développeurs et utilisateurs de ces technologies qu'ils fassent remonter l'information sur les circonstances de leur emploi, comment, où et pourquoi. En particulier, merci de communiquer toute histoire d'une réussite réunissant sécurité et accessibilité. Veuillez envoyer vos commentaires à la liste de diffusion XTech WAI. Les messages adressés à cette liste sont archivés et publics.
Le groupe de travail Protocoles et formats WAI fait partie de l'activité technique WAI.
Cette version est une mise à jour d'un document précédemment intitulé
L'inaccessibilité des tests anti-robots visuels : problèmes et solutions de rechange
.
La publication du document au titre de note de groupe de travail ne constitue pas une approbation de l'ensemble des membres du W3C. C'est un brouillon qui, à tout moment, peut être mis à jour, remplacé ou rendu obsolète. On ne peut citer ce document que comme un travail inachevé.
Les sites Web avec des ressources attractives pour les partenaires (les sites d'agences de voyages et de billeterie, etc.) ou d'autres formes automatiques (courrier Web, blogues et babillards) ont pris des mesures afin d'assurer le service des utilisateurs individuels tout en empêchant la collecte sinon l'exploitation de leurs contenus par des robots Web.
La solution la plus répandue actuellement consiste à utiliser une représentation graphique d'un texte dans les zones d'enregistrement ou de commentaires. Le site essaye de vérifier que l'utilisateur en question est effectivement humain en lui demandant de lire un ensemble de caractères distordus dans une image pixelisée avant de les saisir dans un formulaire.
Des chercheurs de l'Université Carnegie Mellon ont inauguré cette méthode qu'ils ont appelée
CAPTCHA
(Completely Automated Public Turing test to Tell Computers and Humans Apart,
ou Test de Turing public entièrement automatique pour distinguer les ordinateurs des humains
en français)
[CAPTCHA]. Plusieurs équipes travaillent sur des projets inspirés de ou similaires à l'originel et,
pour les besoins de cet article, on utilisera le terme CAPTCHA
pour les désigner collectivement.
Un test de Turing [TURING], appelé ainsi en mémoire du fameux informaticien Alan Turing,
est un système de tests conçu afin de différencier un humain d'un ordinateur.
Ce type de vérification visuelle et textuelle présente un coût énorme pour les utilisateurs aveugles, malvoyants ou bien dyslexiques. Car, évidemment, cette image n'est accompagnée d'aucun équivalent textuel, lequel constituerait une bénédiction pour des systèmes automatisés. Souvent, ces systèmes de vérification font qu'il est impossible, pour certains utilisateurs handicapés, de créer des comptes, de rédiger des commentaires ou de faire des achats sur les sites, c'est-à-dire que les CAPTCHA ne reconnaissent pas les utilisateurs handicapés comme étant des utilisateurs humains.
Il est important de remarquer que ce système, à l'instar de chaque système qui l'a précédé, peut être mis en défaut par ceux-là mêmes qui tireront un profit à le faire. Par exemple, les polluposteurs peuvent payer un programmeur pour réunir ces images et les soumettre une par une à un opérateur humain qui en vérifiera facilement plusieurs centaines à l'heure. L'efficacité des systèmes de vérification visuelle est faible et leur avantage est annulé dès lors qu'on les exploite communément.
L'histoire de l'adoption des systèmes CAPTCHA au fil des années est instructive. Les grands sites ont d'abord adopté des CAPTCHA car leurs ressources étaient facilement détournables pour envoyer des courriers abusifs ou mener des activités anonymes illégales.
Plus récemment, cependant, des technologies inaccessibles à dessein tels que les CAPTCHA ont envahi les sites plus
modestes et les nouvelles applications en restreignant encore l'action des technologies d'aide.
Le système PIN Guard
du site Web bancaire de la société ING Direct [PINGUARD]
se sert d'un clavier numérique visuel pour associer les lettres du clavier aux chiffres du mot de passe de l'utilisateur.
Les utilisateurs qui ne peuvent pas voir le code, ou bien comprendre la juxtaposition des lettres et des chiffres, sont incapables
d'accéder à leurs propres données financières sur ce site.
Les CAPTCHA sont maintenant fréquemment employés dans les zones de commentaires des babillards et blogues personnels. Beaucoup de blogueurs déclarent que les défis de CAPTCHA parviennent à éradiquer les courriers abusifs des commentaires, mais en-dessous d'un certain seuil de popularité, toute autre méthode de vérification du courrier abusif dans les commentaires devrait raisonnablement y parvenir (tout en étant plus accessible aux utilisateurs handicapés).
Un certain nombre de valeurs mesurées à propos de cette fausse sécurité sont apparues depuis la première publication de ce document. Au sein du projet CAPTCHA à l'Université Carnegie Mellon, là où la technique fut développée, il y avait un groupe dont le rôle consistait à mettre en échec les nouveaux CAPTCHA au fur et à mesure de leur apparition. L'une des premières attaques documentées du système est celle d'un étudiant de Carnegie Mellon, qui associait des images CAPTCHA au système d'accès à un site Web pour adultes, en profitant donc d'un travail humain gratuit pour casser l'authentification. Le risque d'attaques de cette nature, par ingénierie sociale, sur des ressources Web de grande valeur est toujours présent, dans la mesure où on peut engager des personnes, parfois à des salaires de misère, pour défaire des centaines voire des milliers de ces tests à l'heure.
Des projets externes tels que [BREAKING], [AICAPTCHA] et
[PWNTCHA] ont mis en lumière des méthodologies et des résultats qui montrent que beaucoup de systèmes
peuvent être défaits, avec une réussite entre 88 % et 100 %, par une reconnaissance optique des caractères.
Le projet [BREAKINGOCR] souligne la faillite des CAPTCHA sur des systèmes
basés sur PHP ou ASP,
dans lesquels des identifiants de session valides connus sont mis en cache puis réutilisés afin de neutraliser
plusieurs systèmes de CAPTCHA en vogue. L'attaque Screen Scraper
signalée par le groupe de travail
anti-appâtage [ANTIPHISHING] anéantit la technique de protection
[PINGUARD] par une capture de l'écran de l'utilisateur lorsqu'il saisit son code secret.
C'est donc une logique fallacieuse que d'acclamer les CAPTCHA comme étant une panacée pour éliminer le courrier abusif. Même un taux de reconnaissance de 10 % par un ordinateur conclut à la faillite du système, juste un peu plus lentement. Il est également faux de croire que l'adoption des CAPTCHA par les grands sites constitue une preuve de leur suprématie dans la lutte contre le courrier abusif. En réalité, un certain nombre de techniques sont aussi efficaces que les CAPTCHA, et sans recourir à une intervention humaine qui peut poser des problèmes de convivialité et d'accessibilité.
Les sites faisant appel à une vérification ont des besoins très différents et sont classés suivant une hiérarchie. Plus le système d'authentification est sophistiqué, plus le risque est grand que celui-ci marginalise certains utilisateurs et leur soit dommageable.
La plupart des systèmes met en œuvre une forme de sécurité ou une autre afin de préserver les privilèges de certains utilisateurs. L'authentification d'un utilisateur privilégié en recourant à un système d'identification personnelle non répudiable constitue le mécanisme courant de tous les sites Web sinon des sites les plus sûrs. On peut ouvrir des comptes chez un nombre quelconque de services de messagerie, de portails, de journaux et de babillards sans justifier de sa propre identité, par exemple, avec un passeport, un permis de conduire ou un numéro matricule. Dans ces situations, la priorité est peut-être d'orienter les utilisateurs vers les ressources auxquelles ils peuvent accéder ; la sécurité en question ne peut pas être prioritaire avant que des détails exploitables, telles que les données d'une carte de crédit, n'aient été stockés sur le site.
Les systèmes offrant des privilèges attractifs font souvent l'objet d'une exploitation abusive, en particulier lorsque les utilisateurs peuvent le faire de façon anonyme. La possibilité de créer plusieurs comptes, exploitée par certains utilisateurs pour multiplier leurs privilèges, est souvent à l'origine de la mise en place de ces tests de Turing. Le postulat est le suivant : les utilisateurs humains en interaction avec un site ne peuvent pas consommer les ressources aussi vite que des programmes conçus pour acquérir et user gracieusement de ces privilèges. Ces sites veulent légitimer l'accès des utilisateurs humains et interdire celui des robots aux mêmes ressources.
Au-delà de la question de l'humanité de l'utilisateur se profile celle de l'identité unique de la personne. L'identité d'une personne (y compris les facettes tels que la nationalité, la propriété ou même les caractères physiques) doit être établie avec certitude pour une garantie totale, qu'il s'agisse de transactions financières/juridiques sécurisées, de la sécurité de fichiers informatisés médicaux ou judiciaires ou d'assurer l'impartialité d'une élection. Tous ces aspects sont de plus en plus présents en ligne, dont les votes Web qui sont expérimentés en Suède, en Suisse, en France, au Royaume-Uni, en Estonie et aux États-Unis.
Il importe de trouver des solutions afin de vérifier le caractère unique de l'identité des utilisateurs, en tenant compte des besoins de tous les utilisateurs potentiels du système. Le coût des manquements s'étend de la nuisance des modèles à privilèges jusqu'au déni des droits fondamentaux de l'homme dans certains systèmes axés sur l'identité.
Les utilisateurs disposent de beaucoup de techniques pour décourager ou éliminer la création ou l'utilisation frauduleuses de comptes. Plusieurs techniques sont au moins aussi efficaces que la technique de vérification visuelle tout en étant plus accessibles aux personnes handicapées. D'autres peuvent former une couche qui s'ajuste aux besoins d'accessibilité. Ci-dessous, on a listé sept solutions de rechange, chacune présentant des avantages et des inconvénients. Beaucoup sont réalisables aujourd'hui tandis que d'autres annoncent un futur proche dans lequel cette nécessité ne sera peut-être plus de mise.
La vérification visuelle cherche à discriminer les utilisateurs humains de ceux non humains. On peut raisonnablement y parvenir en procédant à des tests logiques. Les charades mathématiques simples, les questions anecdotiques et autres devinettes peuvent barrer la route aux robots, au moins en rendant leur utilisation plus avantageuse ailleurs.
Problèmes : Les utilisateurs avec des difficultés cognitives auront toujours du mal avec cette méthode. Les réponses devront peut-être nécessiter un traitement flexible si on doit les fournir en texte libre. Un système devra peut-être maintenir un grand nombre de questions ou bien effectuer une rotation par programme des questions afin d'empêcher les robots de toutes les capturer. Cette approche est également faillible face à des opérateurs humains.
Pour reformuler le problème, le texte est facile à manipuler, ce qui en soi est une bonne chose pour les technologies d'aide mais tout autant pour les robots. Donc, une solution logique pour essayer de contourner ce problème consiste à offrir une autre méthode non textuelle qui utilise le même contenu. Le service Hotmail délivre un fichier sonore que l'utilisateur peut écouter si la vérification visuelle ne lui convient pas.
Toutefois, selon un article de CNet [NEWSCOM], la sortie sonore de Hotmail, elle-même pareillement distordue
pour éviter les abus par programme, s'est révélée inintelligible pour les quatre sujets de l'essai bien que tous aient une bonne ouïe
.
Les utilisateurs qui sont sourds ou aveugles, qui ne possèdent ou n'utilisent pas de
carte son, qui travaillent dans des environnements bruyants ou qui ne disposent pas des
modules sonores nécessaires sont laissés de côté par la même occasion. Puisque ce contenu est
par nature auditif, les utilisateurs seront souvent enclins à coucher le code par écrit avant sa saisie,
ce qui n'est pas du tout commode. Pire, quelques mises en œuvre de cette technique sont basées sur JavaScript, ou bien sont conçues de
telle façon que certains utilisateurs aveugles se trouvent incapables d'y accéder. À l'inverse, les machines peuvent réaliser,
avec des logiciels de reconnaissance vocale, des scores encore meilleurs que ceux obtenus
par reconnaissance optique des caractères sur les CAPTCHA visuels.
Les utilisateurs de comptes gracieux ont très rarement besoin d'un accès complet et immédiat aux ressources du site. Par exemple, les personnes à la recherche de tickets de concert conduiront peut-être seulement trois recherches par jour et les nouveaux utilisateurs de courrier électronique auront seulement besoin d'envoyer une notification toute prête de leur nouvelle adresse à leurs amis et quelques autres messages libres. Les sites peuvent avoir des politiques limitant explicitement la fréquence des interactions (c'est-à-dire, en désactivant le compte pour la durée de la journée) ou implicitement (en incrémentant le temps de réponse). Fixer des limites aux nouveaux utilisateurs peut constituer un moyen efficace de diminuer l'attrait des sites de grande valeur pour les robots.
L'inconvénient de cette méthode est qu'elle impose une approche par tâtonnements afin d'établir une technique utile. Elle oblige les créateurs de sites à étudier les statistiques d'utilisateurs normaux et exceptionnels pour déterminer s'il existe une démarcation claire entre ces deux types.
Bien que les CAPTCHA et d'autres approches interactives soient parfois efficaces pour le contrôle du courrier abusif, l'utilisation du site en devient plus complexe. Et c'est souvent inutile car il existe beaucoup de mécanismes non interactifs pour vérifier le courrier abusif et d'autres contenus invalides.
Cette catégorie de solution recèle deux approches non interactives à la mode : le filtrage du courrier abusif où un outil automatique évalue le contenu d'un document et les vérifications heuristiques qui évaluent le comportement du client.
Les applications qui se servent de mots sensibles
pour étiqueter un contenu abusif,
ou qui utilisent un filtrage bayesien pour détecter
d'autres motifs représentatifs d'un courrier abusif,
sont très populaires et plutôt efficaces. Quoique ces systèmes puissent, de temps en temps, produire des faux négatifs, ceux qui sont
correctement réglés se révèlent aussi efficaces que l'approche avec CAPTCHA, tout en soulageant l'utilisateur du
fardeau cognitif en surcroît.
La plupart des principaux logiciels de blogage offre une possibilité de filtrer le courrier abusif, ou bien est susceptible de recevoir un module d'extension permettant cette fonctionnalité. Beaucoup de ces filtres peuvent automatiquement effacer les messages dépassant un certain seuil d'abus et marquer les messages douteux pour une modération manuelle. Les systèmes plus évolués peuvent contrôler les attaques en fonction de la fréquence de postage, filtrer les contenus envoyés avec le protocole [TRACKBACK] et expulser les utilisateurs par tranche d'adresses IP, temporairement ou définitivement.
L'heuristique est la découverte des aspects d'un processus qui semblent indiquer un résultat donné. Il est possible de détecter la présence d'un robot en examinant le volume des données demandées, les séries de pages courantes visitées, les adresses IP, les méthodes d'entrée des données ou d'autres données caractéristiques collectables.
Encore une fois, cette approche oblige à examiner soigneusement les données du site. Si les
algorithmes de filtrage n'identifient pas d'hypothèses heuristiques valables,
alors ce n'est pas une bonne solution. Également, le polymorphisme ou la création d'empreintes variables
sont susceptibles, si ce n'est pas encore le cas, de dévoiler des robots, tout comme les virus polymorphes (furtifs
) sont apparus
afin de contourner les vérificateurs de virus lesquels recherchaient des empreintes virales connues.
Une autre approche heuristique, révélée dans [KILLBOTS], recourt à des images CAPTCHA avec cette distinction : la façon dont l'utilisateur réagit au test importe également, que celui-ci ait réussi le test ou non. Ce système, conçu pour déjouer les attaques par déni de service réparties, bannit les attaquants essayant répétitivement de récupérer une certaine page, tout en veillant à ne pas marquer par erreur le trafic humain comme étant le fait d'un dispositif automatique. Lorsque la charge du serveur tombe sous un certain seuil, le processus d'authentification se désactive entièrement.
Les travaux concurrents de la société Microsoft et du regroupement Liberty Alliance essayent d'établir un
système d'identité de réseau fédéré
, qui propose à un utilisateur de créer un
compte, de fixer ses préférences, ses données de paiement, etc., toutes données qui persisteront à
travers tous les sites abonnés au même service. Ce type de système, avec des incursions à la fois dans les sites Web et les services Web,
constituerait une forme d'identification portable dans tout le Web.
Ironiquement, le système Passport lui-même est l'un de ceux qui font actuellement appel à des techniques de vérification visuelle. Ces services à signature unique devront justement faire partie des plus accessibles du Web pour offrir ces avantages aux personnes handicapées. En outre, leur usage devra être omniprésent pour réellement résoudre une fois pour toutes les problèmes dont il est question ici.
Une autre approche consiste à employer des certificats pour les personnes qui souhaitent établir leur identité. Le certificat peut
être émis de façon à assurer une fonction proche d'un système une personne une voix
, par exemple, en délivrant ces identificateurs
en personne et en permettant aux utilisateurs de développer des réseaux de confiance répartis,
ou en laissant l'émission des certificats à des tiers de confiance sûrs
tels que des gouvernements. Ces types de systèmes ont été mis en œuvre pour sécuriser les pages Web et pour authentifier les
courriers électroniques.
Le coût de création de certificats frauduleux doit être suffisamment élevé pour supprimer, dans la plupart des cas, l'intérêt de les produire. Les sites auraient juste besoin d'utiliser les mécanismes largement présents dans les agents d'utilisateurs.
Une conséquence de ce concept, à savoir que seules les personnes handicapées gênées par les autres systèmes de vérification s'enregistreront, pose un problème vis-à-vis de la vie privée de l'utilisateur lequel devra annoncer son handicap à chaque site. Il faudrait éviter de stigmatiser les utilisateurs handicapés, c'est-dire, demander qu'ils s'inscrivent eux-mêmes afin de recevoir des services équivalents. Ceci dit, il y a des cas où les utilisateurs voudront informer les sites à propos de leur handicap ou d'autres besoins : des sites tel que Bookshare [BOOKSHARE] demandent de prouver une invalidité visuelle avant d'autoriser les utilisateurs à accéder à des documents imprimés, qui souvent n'existent pas dans une forme sonore ou en braille. Une clause du droit d'auteur américain, connue sous le nom d'Amendement Chafee [CHAFEE], permet la reproduction de documents protégés dans des formes uniquement utilisables par des utilisateurs aveugles ou malvoyants. Un système d'infrastructure à clé publique permettrait aux personnes exploitant Bookshare d'assurer la conformité du site et ses utilisateurs vis-à-vis de la loi sur le droit d'auteur.
Une méthode d'authentification des utilisateurs plus sûre se dessine à l'horizon dans le domaine de la biométrie. Une quantité de tests, des lectures d'empreintes digitales et de la rétine jusqu'aux comparaisons d'ADN, promettent de vérifier l'identité d'une personne à coup sûr, en limitant de fait les possibilités des posteurs abusifs de créer des comptes de courrier électronique à l'infini. La société Microsoft a annoncé un nouveau système biométrique pour son système d'exploitation Longhorn, complet avec un nouveau connecteur sécurisé pour la capture des données. On utilisera vraisemblablement des systèmes biométriques en conjonction avec les services à signature unique.
Encore une fois, l'infrastructure constitue le maillon faible. Il faudra plusieurs années aux dispositifs biométriques pour pénétrer le marché, et des questions politiques et sociales se posent qui freinent le processus. Les systèmes biométriques devront également tenir compte des différences physiques des personnes : par exemple, la lecture rétinienne n'a pas de raison d'être pour un utilisateur né sans yeux.
Une approche reste d'une certaine façon populaire concernant l'identité : c'est l'utilisation des artéfacts d'identité existants, telles que les cartes de crédit, et les identificateurs nationaux, tel que le numéro de Sécurité sociale aux États-Unis. Quoique ces méthodes permettent d'authentifier facilement et à faible coût les utilisateurs par rapport à des systèmes, ce document n'en tient pas compte en raison de leur vulnérabilité. En outre, les systèmes qui collectent ce type de données auprès d'un grand nombre d'utilisateurs constituent des cibles beaucoup plus attrayantes pour le vol d'identités qu'ils ne l'ont jamais été pour les détournements de services.
Récemment, la société Google a envoyé leurs clés de création de compte à de nouveaux utilisateurs au moyen d'un message SMS. Tout en introduisant de nouvelles complications, telles que la pénétration mondiale relativement limitée des téléphones mobiles, érigeant ainsi un autre type de barrière, et l'accessibilité médiocre des fonctionnalités des messages SMS pour les utilisateurs aveugles, cette mesure limite l'étendue des abus potentiels des grands systèmes. Par exemple, il est impossible que quelqu'un puisse utiliser quotidiennement des milliers de téléphones pour exploiter des clés de compte puis les échanger contre de nouveaux téléphones lorsque le service refuse de fournir plus de clés. Malheureusement, le système de création de compte de Google impose toujours un CAPTCHA en plus de cette mesure de sécurité. On a inclus cette technique pour encourager la recherche d'idées innovantes autour de l'utilisation des contraintes architecturales, avec les coûts réels impliqués, afin d'évaluer la faisabilité de l'exploitation d'une ressource Web.
Les sites offrant des ressources attractives et servant des millions d'utilisateurs auront toujours besoin de systèmes de contrôle d'accès pour limiter les d'abus. À un tel niveau, il semble raisonnable de recourir à plusieurs approches concurrentes, y compris aux CAPTCHA sonores et visuels, pour ce contrôle. Toutefois, ces sites doivent s'assurer que les utilisateurs handicapés disposent de moyens activables par un humain pour interagir avec une ressource donnée et dans une quantité de temps raisonnable.
Au contraire, l'utilisation répandue des CAPTCHA dans les sites à faible trafic et peu de ressources constitue une pratique inutilement préjudiciable pour les utilisateurs handicapés. On ne devrait pas faire l'apologie d'un mécanisme de contrôle d'accès inacessible comme solution, en particulier lorsqu'il existe d'autres mécanismes, non seulement plus accessibles mais aussi plus efficaces. On recommande fortement aux sites modestes d'adopter un filtrage du courrier abusif et/ou des vérifications heuristiques à la place des CAPTCHA.
Enfin, les nouvelles approches concentrées sur l'utilisation exclusive de moyens visuels ou sonores pour le contrôle des accès,
tel que le système PIN Guard
mentionné précédemment, devraient être réformées tant qu'il n'existe pas de méthode fiable
permettant aux utilisateurs n'y ayant pas accès de s'authentifier. Le bénéfice d'une sécurité à court terme ne vaut pas la peine
de mettre en doute l'autonomie d'une personne en lui interdisant d'accéder à des données importantes telles que ses finances.
Merci aux contributeurs suivants : Kentarou Fukuda, Marc-Antoine Garrigue, Al Gilman, Charles McCathieNevile, David Pawson, David Poehlman, Janina Sajka et Jason White.
Cette publication a été financée en partie par des fonds fédéraux du ministère de l'Éducation des États-Unis sous le numéro de contrat ED05CO0039. Le contenu de cette publication ne reflète pas forcément les vues ou les politiques du ministère de l'Éducation des É.-U., et les mentions des noms de marques, des produits commerciaux ou des organisations n'impliquent pas l'approbation du Gouvernement des États-Unis.