BLOG
L'IA a réussi tous les CAPTCHA : comment prouver qu'on est humain ?
Ouverture : une IA vient de prouver sur le web qu’elle « n’est pas un robot »
Le 7 septembre, Sharif Shameem, membre d’OpenAI Labs, a fait la démonstration en public : GPT-6 Astra a enchaîné et franchi l’intégralité des 48 niveaux de vérification humaine de « I’m Not a Robot ».
Les premiers niveaux tenaient encore de ce qu’on connaît tous : reconnaissance d’images, jugement de textes ; ensuite, la difficulté grimpait d’un coup — glisser-déposer, stationnement, recherche visuelle, contrôle du rythme, mini-jeux de logique. Astra a scruté l’écran de bout en bout, manipulé souris et clavier, ajusté ses gestes au fil des changements de la page, et a fini par décrocher la « certification humaine » décernée par le jeu.
Le risible et l’effrayant de cette histoire se logent au même endroit : les captchas ont été conçus à l’origine précisément pour tenir les machines à l’extérieur de la porte de « manipuler une interface comme un humain ». Aujourd’hui, la machine qui devait rester dehors est sortie… et elle a démonté la porte.
Fait intéressant : AI 科技评论, le média tech IA qui a rapporté l’affaire, plaçait d’emblée des adieux dans son titre — « Adieu reCAPTCHA ». Mais la ligne de défense est-elle vraiment tombée ? J’ai passé au crible les faits techniques qui se cachent derrière ces 48 niveaux, ainsi que le véritable dispositif anti-robots des sites web modernes, avant de lancer la question à Yongliang, 17 ans de carrière dans le logiciel et aujourd’hui directeur technique IA — les systèmes d’entreprise qu’il conçoit se frottent chaque jour à la question « humain ou machine ».
Shiwen : L’IA vient de passer tous les captchas. Ta première réaction : « c’est foutu » ou « je le savais » ? Yongliang : Ni l’un ni l’autre : « c’était inévitable, et ça arrive enfin ». Les captchas n’ont jamais eu pour rôle de bloquer « l’intelligence » : ils bloquaient « la maladresse » — maintenant que l’IA n’a plus la main maladroite, la question est forcément caduque. Mais ce qui devient caduc, c’est la question, pas l’examen. Shiwen : Alors parlons-en à fond : qu’a-t-elle réellement franchi, sur quoi les sites modernes s’appuient-ils encore pour se défendre, et que deviendra « prouver qu’on est humain » à l’avenir ?
Q1 : Terminer les 48 niveaux, qu’est-ce que cela signifie vraiment sur le plan technique ?
永亮 : Cela signifie que l’IA a, pour la première fois, soudé « comprendre l’interface » et « opérer en continu » en un flux de travail stable.
Beaucoup de gens pensent que réussir des captchas revient simplement à dire que « la reconnaissance d’images s’est améliorée » — c’est la plus grande des incompréhensions. La reconnaissance n’est qu’un ticket d’entrée ; la vraie difficulté vient après.
Avec le regard d’un système de contrôle : une page web possède un état interne, et la capture d’écran que voit l’IA n’en révèle qu’une infime partie. À chaque clic ou glisser d’Astra, la page change — elle doit inférer « où j’en suis dans la tâche » à partir d’une seule image, des images passées et des actions qu’elle a elle-même effectuées. Le niveau de stationnement illustre parfaitement le problème : il y a une voiture à l’écran, mais rien à l’écran qui explique « pourquoi la voiture s’est arrêtée ici » ; le niveau de rythme est encore plus impitoyable — l’environnement continue de changer pendant qu’il réfléchit.
Ce flux de travail repose sur trois couches de capacités éprouvées. Données publiques : Astra obtient 92,7 % sur ScreenSpot-Pro (qui teste la capacité de localisation d’interface « du sémantique aux coordonnées ») et 72,6 % sur OSWorld 2.0 (qui teste les opérations informatiques réelles de longue durée), le temps des tâches simulées étant ramené d’environ 75 minutes à environ 40 minutes.
Il y a ici une intuition clé : justesse d’une étape ≠ stabilité en continu. Un clic sur le mauvais bouton, et à l’image suivante la page bascule vers une autre branche ; tout le raisonnement ultérieur repose alors sur une prémisse erronée. Voilà pourquoi les opérations de longue durée exigent un module discret — la « vérification de l’état après action » : j’ai cliqué pour fermer la fenêtre contextuelle, mais elle apparaît encore dans la nouvelle capture d’écran ? Alors cette étape compte comme un échec : on réessaie ou on change de chemin. Réussir la totalité des 48 niveaux prouve que ce mécanisme de vérification tourne réellement.
Une précision honnête : le présentateur lui-même n’a pas publié les détails complets de l’environnement d’exécution, et le 48/48 ne peut donc pas être considéré comme un score de benchmark rigoureux en vision pure. Mais la direction qu’il révèle est bien réelle — l’hypothèse sur laquelle reposent les captchas, à savoir « la machine est incapable d’opérations GUI en continu », s’est effondrée.
Q2 : Alors, les sites web courent-ils encore à poil aujourd’hui ? C’est quoi, au juste, ce système anti-bot moderne ?
Yongliang : Non, plus personne ne court à poil. La vraie ligne de défense a déménagé il y a dix ans — elle a quitté les « questions d’examen » pour s’installer dans le navigateur et côté serveur.
Vous croyez résoudre une grille de neuf images, mais les défis visuels ne sont depuis longtemps que le dernier élément décoratif. L’évaluation réelle se joue sur deux couches invisibles pour vous.
Première couche : les signaux de l’environnement du navigateur. Le mécanisme de reCAPTCHA v3 : avant même que vous n’ayez cliqué sur quoi que ce soit, le navigateur calcule déjà en arrière-plan un score de risque de votre comportement — trajectoire de la souris, temps passé sur la page, contexte d’interaction, tout entre dans le calcul ; au bout du compte, un score est transmis au serveur, qui décide de laisser passer ou non. Le Turnstile de Cloudflare va encore plus loin : une série de défis légers s’exécute dans le navigateur (défis de calcul, sondage des Web API, caractéristiques de l’environnement) ; une fois réussis, un token à usage unique est délivré, valable 300 secondes et échangeable une seule fois.
Deuxième couche : les caractéristiques du réseau et des requêtes. L’empreinte de la poignée de main TLS (JA3/JA4) révèle si vous êtes un vrai navigateur ; la séquence temporelle des requêtes, leur fréquence, les anomalies de contexte — le serveur voit tout.
La conjonction de ces deux couches explique une chose : Astra, elle, réussit les « épreuves cognitives », mais le serveur voit encore ce qu’elle ne voit pas — dans quel client elle tourne, si sa séquence de requêtes est normale, si son token est valide. C’est comme un candidat qui aurait juste à toutes les questions, mais dont le surveillant remarque que son stylo n’est pas le sien.
Cette ligne de défense a pourtant elle aussi une date de péremption. Les IA tournent désormais souvent directement dans un vrai navigateur Chrome et héritent naturellement de l’ensemble des signatures protocolaires d’un vrai navigateur — rien à voir avec les scripts Selenium d’autrefois, dont on repérait la supercherie au premier coup d’œil. La documentation de Cloudflare stipule toujours explicitement ne pas prendre en charge les frameworks d’automatisation, mais la fenêtre « distinguer humains et machines grâce à l’empreinte du navigateur » est en train de se refermer.
Q3 : « Prouver que vous êtes humain », est-ce que ça tiendra encore à l’avenir ?
Yongliang : c’est la question elle-même qui doit être réécrite — car demain, la moitié des « accès machine » seront légitimes.
Pensez à un scénario qui va vite devenir banal : vous demandez à votre assistant IA de consulter des vols, de modifier une commande, de remplir une note de frais. Le serveur a bien affaire à une machine, mais s’il la bloque, c’est votre propre demande légitime qu’il bloque. La classification binaire « humain/machine » des captcha traditionnels ne contient déjà plus assez d’information.
La réponse du secteur : changer de question. On ne demande plus « êtes-vous une machine ? », mais « quelle machine êtes-vous, qui vous a autorisé à venir, et que vous est-il permis de faire ? ».
Web Bot Auth, lancé cette année par Cloudflare, en est l’incarnation concrète : l’assistant IA génère sa propre paire de clés Ed25519, signe chaque requête HTTP avec sa clé privée et publie sa clé publique dans un annuaire public. Le serveur vérifie la signature — une logique radicalement différente de celle du captcha : le captcha devine qui vous êtes à partir de caractéristiques comportementales, la signature prouve cryptographiquement qui vous êtes. Même avec des capacités visuelles dix fois supérieures, une IA serait incapable de calculer une signature valide avec la clé privée de quelqu’un d’autre.
Mais l’authentification n’est que la première moitié ; l’autorisation est la seconde : une fois l’identité de cette IA confirmée, il faut encore borner ce qu’elle a le droit de faire — autorisée à consulter les commandes, pas à les annuler ; et quand un assistant principal fait appel à un sous-assistant, les permissions doivent se restreindre niveau après niveau. Le modèle de sécurité du Web de demain sera une chaîne de délégation vérifiable : identité de l’IA valide → autorisation de l’utilisateur valide → token non expiré → opération dans les limites de l’autorisation.
Pour le dire en clair : à l’ère du captcha, on demandait « êtes-vous humain ? » ; à l’ère de l’IA, on demande « qui êtes-vous, qui vous envoie, et que pouvez-vous faire ? ». On passe du rejet des machines à leur gestion.
Q4 : Que doivent faire, dès maintenant, les développeurs ordinaires et les petites entreprises ?
Yongliang : trois choses, par ordre de priorité.
Premièrement, si votre site utilise encore des CAPTCHA d’images comme principale ligne de défense, il faut passer à autre chose dès aujourd’hui. Adoptez reCAPTCHA v3 ou Cloudflare Turnstile (gratuits), et déplacez la décision côté serveur. Vous pouvez garder les puzzles d’images, mais uniquement comme décoration — pas comme serrure.
Deuxièmement, ne traitez pas le trafic IA en ennemi de façon uniforme. Vos utilisateurs vont bientôt arriver accompagnés de leurs assistants IA. Réfléchir à l’avance à quelles actions ouvrir aux IA autorisées et lesquelles fermer vaut mieux que tout bloquer dans la panique le moment venu.
Troisièmement, si vous développez des applications IA, commencez à songer à donner une identité à vos clients. Des standards comme Web Bot Auth en sont encore à leurs débuts, mais la direction est claire : à l’avenir, les IA dont l’identité peut être vérifiée circuleront bien plus librement sur le web que les « IA anonymes ». Plus tôt vous les adopterez, moins vous risquerez d’être pris pour cible par erreur.
Au passage, une réponse à la panique que certains ressentent peut-être : les CAPTCHA ne vont pas disparaître du jour au lendemain — demain encore, en vous connectant à un site, vous devrez cliquer sur les feux tricolores. Ce qui change vraiment, c’est toute la logique qui se cache en dessous — simplement, vous ne la percevez pas. Le remplacement des infrastructures se fait toujours en silence : vous n’avez pas besoin de changer de téléphone, et pourtant les serrures du monde ont déjà changé.
Q5 : Quelle est l’issue finale de cette histoire ? Comment prouverons-nous qui nous sommes dans vingt ans ?
Yongliang : L’issue finale, c’est peut-être — ne plus avoir à prouver quoi que ce soit.
Regardons vingt ans en arrière : à l’apogée des CAPTCHA, nous étions au fond dans une époque où « l’humain naviguait sur le web et la machine assistait » ; la frontière homme-machine était nette, si bien qu’une seule question suffisait à séparer les deux camps. Aujourd’hui, cette frontière se dissout : chaque geste humain fait intervenir l’IA, et derrière chaque opération de l’IA se cache une intention humaine.
À ce moment-là, l’« identité » s’enfoncera vers une couche plus fondamentale : votre appareil, vos clés, vos données biométriques, votre chaîne d’autorisation accompliront toutes les vérifications en arrière-plan. Vous ne percevrez plus l’existence de la vérification, tout comme vous ne percevez pas aujourd’hui l’existence de la poignée de main TLS.
Ça a l’air magnifique ? Je vous laisse néanmoins une mise en garde à contre-courant : quand la preuve sera entièrement automatisée, le risque d’usurpation d’identité le sera tout autant. Si votre identité IA est dérobée, c’est le « vous » du monde numérique qu’on vole — à l’avenir, bien garder votre clé privée sera aussi important que bien garder votre carte d’identité.
Il y a vingt ans, la question était : y a-t-il un humain de l’autre côté de l’écran ? Dans vingt ans, la question sera : de l’autre côté de l’écran se trouvent dix identités — laquelle vous représente vraiment ?
Épilogue
拾闻 : Pour finir, un résumé de cet épisode en une phrase ? 永亮 : Ce que l’IA a vaincu, ce n’est pas le captcha, c’est l’ancien monde où « humains et machines devaient se tenir de part et d’autre » — la sécurité de demain ne reposera plus sur le fait de piéger les machines, mais sur la capacité à bien les gérer. 拾闻 : Ces mots, je vous les offre. À la prochaine fois.
【Plongée technique】À quoi ressemblent les trois lignes de défense du système anti-robot moderne ?
Cet épisode n’arrête pas de parler du « déménagement de la ligne de défense » ; pour les lecteurs techniques, voici le démontage de la véritable stratification actuelle (en prenant l’écosystème Cloudflare comme exemple).
Première couche : le défi côté client. Une fois la page chargée, un petit bout de JavaScript léger tourne dans le navigateur : un défi de calcul (on vous confie un problème dont la résolution ne coûte presque rien), une détection des Web API (ce navigateur possède-t-il les interfaces qu’un navigateur normal doit avoir ?), des vérifications de cohérence de l’environnement (la taille de l’écran, les polices et le fuseau horaire concordent-ils ?). Rien de perceptible pour l’humain, le tout bouclé à l’échelle de la seconde. Le résultat est un token à usage unique, à courte durée de vie — attention, modifier le code front-end pour falsifier un « succès » ne sert à rien, car le token doit ensuite être présenté au serveur pour être validé.
Deuxième couche : l’empreinte au niveau réseau. Lors du handshake TLS, le client expose des caractéristiques telles que ses préférences de suites de chiffrement ou l’ordre des extensions (empreintes JA3/JA4) — l’empreinte d’un vrai Chrome et celle d’un script Python sont complètement différentes. En y superposant l’ordre des en-têtes de requête et le comportement des trames HTTP/2, le serveur peut dresser le portrait de la connexion sans même regarder son contenu. C’est pourquoi tant de crawlers se font « bloquer avant même d’avoir envoyé une requête ».
Troisième couche : le contrôle des risques côté serveur. Validation du token (validité, déjà utilisé ou non, fenêtre temporelle) + analyse des séquences comportementales (les requêtes de cette IP au cours de la dernière heure ressemblent-elles à celles d’un utilisateur normal ?) + règles métier (fréquence des commandes, liaisons appareil-compte). Cette couche ne voit pas une requête isolée, mais la chronologie complète.
Quatrième couche, en cours d’ajout : l’identité cryptographique. Web Bot Auth repose sur la norme HTTP Message Signatures : le client IA signe chaque requête avec une clé privée Ed25519, la signature couvre le contenu de la requête (contre la falsification), avec une fenêtre temporelle created/expires (contre le rejeu), et la clé publique est publiée dans un annuaire consultable. La vérification de la signature coûte au serveur de l’ordre de la milliseconde, mais la falsifier relève du niveau cryptographique.
Une fois ces quatre couches empilées, le véritable rôle de l’image à grille de neuf cases du CAPTCHA dans tout le système est le suivant : donner aux vrais utilisateurs un sentiment rituel de « je suis protégé ». La serrure de la porte, elle, a depuis longtemps été déplacée là où vous ne la voyez pas.