From the BlogSubscribe Now

Le pire CAPTCHA du monde ?

Non, je n’ai pas fait la découverte du pire CAPTCHA du monde. En effet, le pire CAPTCHA du monde présente un texte parfaitement lisible par les vilains bots spammeurs dans le HTML, alors que nous autres pauvres humains devons déchiffrer un texte obfusqué.

Ceci étant, ma petite découverte du jour n’en reste pas moins stupide :

Capture d'écran d'un navigateur web avec la vue utilisateur et le code source d'un CAPTCHA, où celui-ci apparaît autant lisible par un bot que par un humain

Un CAPTCHA lisible par les bots

Il s’agit d’un CAPTCHA visant à filtrer le spam d’une plateforme de blogs WordPress Mu. Le principe d’un CAPTCHA est de gêner au maximum les machines (ici, les bots qui inondent les commentaires de blogs de spam) sans gêner les humains. Or, ci-dessus, le texte peut être lu avec la même facilité par les robots que par les humains. En effet, le texte à recopier apparaît en clair dans le HTML de la page.

Certes, je suis quelque peu de mauvaise foi : c’est un code JavaScript qui insère le texte à recopier. Toutefois, les solutions d’automatisation qui passent outre ce type de barrière sont légion, telles iMacros, Selenium WebDriver, PhantomJS, ou encore Sikuli, pour n’en citer que quelques unes (j’ai volontairement omis les solutions dédiées au spam).

Et dire que WordPress propose, par défaut, une extension de filtrage de spam (certes, payante pour un professionnel) basée sur le contenu soumis… À quoi bon ajouter un filtre inutile qui ajoute son lot de faux positifs ?

Comments

  1. Mazette, chez Radio France en plus ! ;)

  2. C’est inutile si quelqu’un veut nuire particulièrement au site en question mais très efficace contre les bots wordpress qui scannent tous les sites possibles et imaginables.

  3. Anonymouse ou pas Anonymouse ou pas says:

    Un bon captcha existe t-il seulement ?

    Tout visiteur nuisible un tout petit peu motivé trouvera un moyen pour contourner un captcha même ceux du géant de redmond sont (quand ils sont correctement implémentés) contournables « aisément » (cf defcon à ce sujet) à l’inverse tout visiteur non nuisible subira la nuisance du captcha (à savoir saisir un texte « débile » dans un champs en plus…).

    Pourquoi faire reposer la « sécurité » ou la réduction du travail de modération sur les usagers du site ?

    A mort les captcha !

  4. @Anonymouse ou pas : En effet, le CAPTCHA systématique représente une véritable gêne pour les utilisateurs légitimes. Twitter, lui, propose un CAPTCHA lorsqu’il détecte un comportement inhabituel, telle la création de nombreux comptes depuis une même IP, par exemple, ce qui limite grandement la gêne pour les utilisateurs légitimes tout en combattant les abus les plus grossiers.

    Néanmoins, le CAPTCHA reste un moyen bon marché de lutte contre les bots. À défaut d’être infaillible, il protège efficacement. Toutefois, tout comme toi, je trouve les CAPTCHA réclamant la saisie de textes trop contraignants pour les utilisateurs légitimes. Aussi, je ne les exploite pas sur ce blog.

    Sur ce présent site, à l’heure actuelle, je procède à une validation manuelle des commentaires, en plus d’un filtre anti-spam automatique basé notamment sur leur contenu, ou encore un filtre anti-bots basé notamment sur l’UserAgent du navigateur utilisé pour poster les commentaires. Ce dernier m’a permis de bloquer plus de… 300.000 (!) commentaires de spam sur le mois de juin 2013. En aucun cas, je n’aurais pu séparer le bon grain de l’ivraie sans un système automatisé quelconque…

  5. Anonymouse ou pas Anonymouse ou pas says:

    On est bien d’accord il existe bien d’autres solutions (+/- efficaces individuellement) ne nécessitant pas d’action supplémentaire de la part du visiteur…
    Mais pour moi les captcha, seuls, ne font pas partie des solutions envisageables au mieux peut-être cela empêchera/réduira les abus grossiers, mais jamais n’empêchera les « vrais nuisances » par contre à coup sûr ça rebutera/découragera les utilisateurs légitimes…
    La solution de twitter est un début de solution intelligente…

  6. Haha c’est vrai qu’il est pas mal ce captcha.
    Remarque, je le dis honnêtement, à choisir entre un captcha lisible par les robots et un captcha qu’un utilisateur ne peut pas remplir, mon choix est vite fait ;)

  7. Mon formulaire de contact est entièrement chargée par le JS (avec un découpage sauvage du code pour éviter que les bots ne détectent le form dans le code). J’utilise ce système depuis des années sans avoir reçu le moindre spam via formulaire jusqu’à présent, alors pas besoin de s’empêtrer dans un captcha ou un système anti-spam compliqué ! ;)

  8. @Clovis : La JavaScript n’est certainement en rien une solution imparable, mais force est de constater que c’est une solution tout à fait pertinente, vu qu’elle bloque la quasi-totalité des spammeurs (tous sur ton site, donc).

    Pour ma part, j’analyse la chaîne UserAgent associé aux commentaires soumis. De nombreux spammeurs, dans l’espoir de se rendre moins repérable, usurpent l’identité de divers navigateurs web, en piochant la chaîne de caractères UserAgent dans diverses bases de données que l’on trouve sur le Net. Toutefois, ils piochent souvent n’importe comment. Ainsi, certains optent pour des navigateurs tournant sous Windows 3, ou encore des versions de navigateurs obsolètes, tels Internet Explorer 5, Firefox 0, Opera 6, etc. En repérant les cas les plus évidents, je bloque ainsi 80 % du spam de mes blogs (ce taux est constant depuis des années).

    En revanche, toutes les solutions de censure (car on parle bien ici de rejeter du contenu, donc de censurer) ont leurs limites. Il convient donc de comprendre qu’on rejettera aussi des commentaires légitimes, à tort. Des solutions alternatives sont donc à envisager pour ces cas-là (telle une adresse email ou un formulaire non filtré alternatifs).

  9. Un bon CAPTCHA ? Tout simplement un input caché dans un formulaire. Si le champ est renseigné, c’est forcément un SPAM.

  10. Certains Captcha sont tellement corsés que je n’arrivent même pas à les recopier ! Mais le plus drôle est un captcha que si présentait sous forme d’une équation mathématique. Le site proposait de cliquer sur une nouvelle formule si l’on n’arrivait pas à valider le code en trouvant la bonne réponse… ça remonte maintenant, et je ne me souviens plus très bien des détails, mais votre sujet m’évoque le captcha mon plus drôle souvenir sur le net !

  11. Pour ma part j’expérimente depuis quelques mois les captchas question du type « Quel est la première lettre du mot bidule ? » et je suis assez étonné de l’efficacité de ceux-ci sans parler qu’ils sont totalement compatibles avec les personnes déficientes visuels.

    L’idée est de multiplier les différentes questions, les possibilités sont illimitées et à moins que les spammeurs se mettent à utiliser une intelligence artificielle, impossible que ça passe.

    Sans parler des économies de serveur que je fais car les bots ne peuvent pas écrire dans la base de donnée et du temps gagné à ne pas trier les commentaires. J’ai finalement désactivé Akismet qui est devenu inutile.

    Une solution simple qui permet de se concentrer sur les choses essentielles. :)