Le CAPTCHA qu’est ce que c’est ?

Hello world !

Aujourd’hui j’ai lu un article sur une IA capable de cracker les CAPTCHA (Completely Automated Public Turing test to tell Computers and Human Apart), ça ma donné envie de vous parler de CAPTCHA, et on commence tout de suite.

Au tout début d’internet, les utilisateurs ont voulus créer des textes que les ordinateurs ne pourrait pas lire facilement, c’est pour ça que le LeetSpeak (13375p34k) a été inventé. Ce « langage » consiste à remplacer les lettres par des caractère spéciaux ou des chiffres par exemple : si un forum banni ceux qui utilise le mot « bonjour », au lieu d’écrire « bonjour » on écrira « 8()nj()ur », par exemple, et comme ça on ne sera pas banni car le bot qui s’occupe des ban ne reconnaîtra pas le mot bonjour.

Suite à ça on a cherché un système capable de différencier les humains des robots : le CAPTCHA.

Il a été inventés, chez AltaVista (paix a son âme) pour empêcher les bots d’ajouter des sites aux moteurs de recherche. Le but de ce système est de proposer un petit casse tête assez simple pour un humain mais très difficile pour les OCR (Reconnaissance Optique de Caractères). Voilà quelque exemple de CAPTCHA :

Ils sont très utilisé lors de la création de compte, de commentaire, de téléchargement de fichiers, etc. Ils servent à prévenir contre le spam, contre l’extraction automatisée de base de données, contre les attaques Brute Force.

A partir de ce moment une compétition est nés entre les créateurs de CAPTCHA et les pirates qui cherchaient à les contourner. Ainsi sont apparus des CAPTCHA audio mais aussi que les lettres sont devenues de plus en plus déformés, avec plus ou moins de couleur, plus ou moins de barre, mais également des petites questions ou des images ou il faut trouver les voitures, etc.

Il est aussi important de savoir que CAPTCHA n’est pas seulement la petite boite qui apparaît sur le web mais aussi le script qui génère l’image (le CAPTCHA script).

Pour finir je voudrais parler du reCAPTCHA de Google. C’est celui-là :

Son fonctionnement est légèrement plus complexe, bien que l’algorithme soit gardé plus ou moins secret par google, on nous explique que ce reCAPTCHA va analyser tous les mouvements de la souris avant le clic, ainsi l’algorithme pourra déterminer si vous êtes humains ou non, il regarde également l’adresse IP, les cookies et le reCAPTCHA est également plus rapide et moins frustrant pour l’utilisateur.

On peut aussi se poser quelque question sur la vie privée, quelles quantités de données récupère google ? Que fait-il avec ces données ?

 

Alors comment une machine peut passer outre un CAPTCHA ?

Il y a plusieurs moyens.

Tout d’abord il y a des bogues de conception suivant les CAPTCHA. Dans certain cas le la génération du CAPTCHA se fait côté client donc le client peut modifier le CAPTCHA script pour faire apparaître le texte en clair. Ou alors en réutilisant l’ID d’une session d’une image connue de CAPTCHA

Il y a aussi possibilités d’exploiter un site bien fréquenté demandant aux utilisateurs de résoudre un CAPTCHA qui provient d’un autre site.

Il faut améliorer les logiciels de reconnaissance de caractères. Je vais en reparler juste après.

Ou encore une bonne vieille attaque par force brute, ou par dictionnaire aidé par une reconnaissance partielle du CAPTCHA.

 

Revenons sur les logiciels de reconnaissance de caractères et également les Intelligence Artificielle.

Une start-up, Vicarious, a l’origine du bot captcha-cracking a fait un grand pas en avant pour faire deviner les CAPTCHA par des machines. Ils utilisent le machine learning avec des millions d’entrée de CAPTCHA, et leurs solutions, pour apprendre à l’IA à résoudre un CAPTCHA. L’IA mime la manière que le cerveau a pour identifier les objets.

unCAPTCHA, une IA créé par l’universités du Maryland peut briser les reCAPTCHA audio de Google avec une précisions de 85%. unCAPTCHA télécharge l’audio du CAPTCHA, le découpe en plein de petit fichier audio et le lance les uns après les autres en les comparants a une base de données de text-to-speech (basse de données liant un texte et un audio correspondant à ce texte) pour déterminer le CAPTCHA.

 

Voilà, c’était un petit article sur les CAPTCHA, je vous invite à allez plus loin si ça vous intéresse, faites des recherche sur Vicarious, sur le reCAPTCHA, sur unCAPTCHA, bref. Ce que cous coulez :).

Et au cas où l’on se reverrait pas d’ici là… Je vous souhaite une bonne après-midi, une bonne soirée et une excellente nuit !

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.