ReCaptcha, le nouveau système anti-spam de Google

La fin du Captcha annoncée.

06 Fév 2015, Posté par D. Bocquelet dans Digital

Ou pour préciser un peu plus les termes, « fin annoncée par google. » En effet, les avances en matière de détection du comportement et algorithmes associés permettent au géant de Mountain View de présenter son alternative nommée reCAPTCHA en décembre dernier. Le système sevrait se déployer sur le nombre considérable de sites internet utilisant un formulaire et est particulièrement rafraîchissant dans son fonctionnement.

En effet, plus besoin de s’infliger la corvée de discerner et reporter une suite de chiffres et lettres torturées avant de valider son envoi (En outre sous peine se tromper et perdre son message, en plus de passer pour un robot !).  Avec son nouveau système Google ne demande que de cocher une case « je ne suis pas un robot », ni plus ni moins. Ce que fait l’API de Google est en fait de discerner et d’analyser l’interaction avec reCAPTCHA pour valider la nature de l’intervenant. Si par malheur vous passiez encore pour un robot (peut-être moins d’1% des cas selon Google) un système de captcha alternatif serait proposé, apparemment bien plus efficace que le traditionnel jimbo de caractères: Une série de photos, mises en relation. Typiquement une photo de chat qui correspondra avec d’autres chats/chiens/perroquets/plantes/etc. D’apparence inoffensif ce petit quizz est un piège à robot, car l’analogie ne peut se faire sur des critères de formes/nuances automatiques volontairement modifiés pour casser tout exercice logique – au moins du point de vue d’un ensemble d’algorithmes. Parmi les utilisateurs du nouveau système de Google citons Snapchat, WordPress et Humble Bundle.

Quid du traditionnel captcha ? D’après Google il serait maintenant complètement inefficace car « cracké » à 99,8%  par les robots actuels.

Présentation officielle. Pour installer ReCaptcha: https://code.google.com/p/recaptcha/wiki/HowToSetUpRecaptcha

Un peu d’histoire…
Rappelons un peu les origines du problème: Nous sommes dans les années 1990, et internet est encore dans sa petite enfance. Les intérêts financiers en moins, le spam est un concept encore pionnier dû à de rares hackers. On ne se méfie alors aucunement de laisser bien en clair son adresse mail sur son site internet. Entre temps la bulle internet est passée par là et virtuellement tout le monde se voit doté d’au moins une adresse mail. Une aubaine pour les publicitaires qui commencent à récolter par tout les moyens les mails de prospects potentiels. Très vite, les ex-hackeurs se font rémunérer pour passer d’un travail laborieux, souvent manuel, à une suite d’algorithmes calibrés pour détecter et collecter ces adresses, puis diffuser du contenu à ces mêmes adresses. Des robots, ayant bien des points commun avec les crawlers utilisés pour la recherche internet au sens large.

Puis vers le milieu des années 2000 avec la seconde bulle internet, l’industrie du spam atteint des records. Un internaute peu méfiant se verra arrosé copieusement d’offres « commerciales » manquant singulièrement de finesse, voire embarrassante, et pourra en outre laisser son adresse en s’inscrivant à de multiples services gratuits, sans garantie dans l’utilisation des données. Les fournisseurs d’accès et hosteurs mail unissent leurs efforts et proposent alors d’établir une stratégie de filtrage antispam dont la vigueur va croissante, parfois même zélée, tandis que les spammeurs jouent au chat et à la souris en multipliant les parades, dont des adresses d’envoi changeantes sans cesse, des variantes sans fins dans l’objet, le contenu, etc… De vrais mails « légitimes » pâtissent alors de cette guerre silencieuse au grand dam des utilisateurs de boîtes mail, et même l’utilisation d’un certificat serveur n’est plus forcément une parade.

Entre-temps les formulaires de contact font leur apparition:  Ils ont un double avantage. Ils masquent aux robots l’adresse a laquelle les données vont être envoyées (sauf lorsqu’elles sont encore présentes dans le code de la page) et permettent le cas échéant de récolter des données classées sur des prospects potentiels. Les captchas font leur apparition ensuite, car les référenceurs « black hat » on pris l’habitude de développer des robots calibrés pour déposer des « pseudo-contenus » en masse sur tous les sites internet possibles, assortis de liens sur optimisés. Si la chose est connue très tôt sur les blogs ouverts aux commentaires et aux forums, elle nuit également aux sites internet avec formulaires car les données remplies peuvent être de la réclame de même type que le spam classique (« mail »). Et pour y faire face, on déploie différents types de captcha (de « Completely Automated Public Turing test to tell Computers and Humans Apart ») destinés à effectuer ce contrôle avant validation. Le fameux « test de Turing » fut élaboré par le génial mathématicien et pionnier des ordinateurs Alan Turing dans les années 40.

Les captchas sont en général du type visuel, un champ suivi d’un affichage visuel aléatoire présentant une suite de lettres et/ou de chiffres, générés grâce à des images composites qui avec le temps sont brouillés pour empêcher leur lecture par des robots, moins exercés que l’oeil humain à discerner un dessin au sein de formes complexes. Toutefois cette course aux armements avec des robots de pus en plus performants (et aidés par la standardisation des Captchas) conduisit à des déchiffrages parfois même difficile pour des humains. D’où frustration, colère parfois, de se voir refuser une simple prise de contact à cause d’un système de protection. A cette fin un « shuffle » (bouton qui recharge le visuel) ou captcha alternatif (audio par exemple) sont apparus pour éviter ce blocage. Toutefois la courbe d’apprentissage et la vitesse d’exécution (pour de robots testant les solutions jusqu’à épuisement) font que cette guerre est perdue dans tous les cas.

Même avec reCAPTCHA Le problème reste présent
Ne nous racontons pas de contes de fées, le système de Google ne fera que simplifier la procédure de sécurité, mais elle ne stoppera en aucun cas le spam, qu’il provienne ou non d’ailleurs d’un formulaire de contact. Il est bon de rappeler une vérité toute simple, dont se servent abondamment les robots: Chaque nom de domaine pour des raisons pratiques, souvent dans un cadre professionnel, se voit doté d’au moins une ou plusieurs adresses mails, assises sur le nom de domaine ou un nom de domaine proche. L’exemple le plus simple est « contact@monsite.com » ou « info@monsite.com » qui peuvent êtres simplement présumées exister. Un robot qui détectera des noms de personnes pourra de la même manière décocher des mails en reconstituant des adresses de contact fictives: Exemple: Pierre Dupont pourra devenir avec de grandes probabilités de vraisemblance basée sur des cas analogues, p.dupont@monsite.com ou simplement pierre.dupont@monsite.com. Un bémol cependant. Sur un serveur d’ou partent des mail, surtout quand ce dernier est mutualisé (donc peu cher, ce qui convient parfois aux hackers) ont des garde-fous non seulement pour empêcher les envois de mails massifs, mais également les trop nombreuses erreurs de mail (légitimes ou testées). Le ratio varie de 1 à 10% et plus selon la tolérance appliquée. Il y a aussi les mailings sur des bases de données datées (très) qui engendrent également des erreurs. Pour le reste, cela ne gêne aucunement les hackeurs qui utilisent des PC ou serveurs zombies pour leur envois de mails et « grillent » ces derniers.

Pour les systèmes de contact sans collecte (base de données) l’envoi des données à partir e la page du formulaire se fait sur une adresse collectrice, tandis qu’un mail de confirmation de contact est bien souvent envoyée à l’utilisateur du formulaire (cela vaut pour toutes les inscriptions en général). Or, le mail part du site internet (pop) et pour être vu comme « légitime » par les serveurs receveurs (smtp) il doit en principe être identique au nom de domaine. On en revient donc à la forte probabilité d’utiliser une adresse mail basée sur le nom de domaine, que les robots utilisent à plein.

Comment se prémunir du spam:
Dans l’absolu, les captchas ne sont pas infaillibles, on peut faire attention à ne jamais laisser son adresse mail en clair ou se restreindre d’ effectuer des inscriptions pour des services gratuits d’utilité souvent douteuse et prenant cet alibi pour effectuer de la revente d’adresse. On peut aussi utiliser à dessin une adresse pour cette fin, et utiliser une autre adresse pour échanger avec ses contacts. Enfin on peut aussi utiliser une adresse mail, même professionnelle, difficile à deviner, comme pdcont@monsite.com pour « prise de contact » par exemple, voir des adresses ne faisant pas de sens pour des robots (mais qui paraîtront bizarre aux receveurs humains !). Il en est de même pour les adresses personnelles ou l’on peut éventuellement mixer de manière un peu savante noms et prénoms (les prénoms sont connus des robots). Faites preuve de créativité et organisez vous !