>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
Unknown

Comment Arrêter de Détester les CAPTCHAs et Apprendre à Vivre

Situation familière : vous écrivez un script de parsing de données ou automatisez une vérification routine d'un site web, et puis ça apparaît. CAPTCHA. Au début, ça semble être un simple inconvenient, mais après dix itérations, les feux de signalisation et les bouches d'incendie commencent à apparaître dans vos cauchemars. Vous pourriez, bien sûr, connecter des services avec des solveurs « en direct », mais c'est lent, souvent coûteux, et pas toujours fiable.

Récemment, je suis tombé sur le dépôt nopecha-extension. C'est un projet de personnes qui ont décidé de s'attaquer au problème avec des réseaux de neurones. Ils ont construit une extension de navigateur et une API qui cassent les CAPTCHAs automatiquement, en imitant le comportement humain. Le projet semble solide : plus de 10 000 étoiles sur GitHub et des mises à jour régulières.

Ce que NopeCHA peut faire

En résumé, c'est un solveur automatique qui fonctionne sur l'IA multimodale. Contrairement aux anciennes méthodes où une image était simplement envoyée pour la reconnaissance de texte, ici le système apprend à interagir avec l'interface.

Le projet supporte à peu près tout ce que vous rencontrez en ligne :

  • reCAPTCHA et hCaptcha standards.
  • Le tricky Cloudflare Turnstile.
  • FunCAPTCHA et AWS WAF.
  • CAPTCHAs textuels (y compris les expressions mathématiques).
  • Même les défis vidéo dans hCaptcha.

Détail intéressant : les développeurs utilisent l'apprentissage par renforcement (RL). Leurs agents interagissent constamment avec de vrais CAPTCHAs, collectent des retours et mettent à jour leurs modèles. Donc dès qu'un nouveau type de vérification apparaît, le réseau de neurones commence à « apprendre » à le contourner presque en temps réel.

Comment ça fonctionne en pratique

Le moyen le plus simple d'essayer l'outil est d'installer l'extension dans Chrome ou Firefox. Elle fonctionne out of the box : elle voit un CAPTCHA sur la page et clique elle-même sur les bons boutons. Pour les développeurs d'automatisation, c'est un vrai sauveur car l'extension est facile à injecter dans Selenium, Puppeteer ou Playwright.

reCAPTCHA

Dans les mises à jour récentes (version 0.6.0), ils ont ajouté la vitesse de mouvement de la souris configurable et la visualisation des clics. C'est nécessaire pour que les systèmes antifraude ne signalent pas le script pour des mouvements trop « robotiques ». Maintenant, le curseur peut se déplacer le long de courbes, en imitant le tremblement de la main ou l'hésitation d'un vrai utilisateur.

Aspect technique et API

Si l'option extension ne vous convient pas (par exemple, vous écrivez un script côté serveur en Python ou Go), le projet propose une API.

Pour ceux qui veulent une intégration approfondie, il existe des bibliothèques pour les langages populaires. Le dépôt contient des liens vers des paquets sur PyPI et NPM. La limite gratuite est de 100 requêtes par jour par IP. C'est amplement suffisant pour des projets personnels ou des petits scripts en « usage personnel ». Si vous avez besoin de plus, vous devrez obtenir une clé API.

Au fait, en 2023, le projet est passé au développement closed-source. Le dépôt contient maintenant des builds d'extension prêts à l'emploi et de la documentation, mais le code source des modèles de réseau neuronal et des dernières versions de l'extension est masqué. Les développeurs expliquent cela comme une protection contre les abus et une volonté de maintenir une longueur d'avance sur les systèmes antifraude. Seul l'ancienne branche v0.3.x reste publiquement disponible, que vous pouvez étudier pour comprendre les principes généraux du fonctionnement de l'extension.

Qui trouvera ceci utile

Je vois plusieurs scénarios où NopeCHA fait vraiment gagner du temps :

  1. Testeurs QA. Quand vous devez exécuter des tests de régression sur le frontend, mais que le formulaire d'inscription est protégé par CAPTCHA. Au lieu de demander aux développeurs de désactiver la protection sur staging, vous pouvez simplement brancher l'extension.
  2. Ingénieurs data. Quand vous collectez des données publiques depuis des plateformes qui n'aiment pas l'automatisation.
  3. Développeurs d'outils. Si vous construisez un logiciel qui nécessite d'interagir avec des services tiers sans API officielle.

Cloudflare Turnstile

Est-ce que ça vaut le coup d'essayer

Le projet vous conquiert par sa polyvalence. Le support de Cloudflare Turnstile et AWS WAF est la « norme or » actuelle car les bibliothèques OCR classiques ne peuvent pas les gérer.

Points négatifs : le passage au closed-source peut rebuter ceux qui ont l'habitude d'avoir un contrôle total sur les dépendances de leur projet. Gardez aussi à l'esprit que toute automatisation de contournement de CAPTCHA est un jeu du chat et de la souris. Aujourd'hui ça fonctionne parfaitement, et demain Google déploie une mise à jour, et vous devrez attendre un correctif des auteurs de NopeCHA. D'après l'historique des versions, les correctifs sortent rapidement, mais le risque de tests « flaky » reste toujours présent.

Si vous avez besoin d'une solution rapide pour contourner les vérifications sans écrire vos propres solutions de contournement avec OpenCV, NopeCHA est l'une des options les plus judicieuses disponibles actuellement. Vous pouvez commencer avec la limite gratuite et ensuite évoluer en fonction de votre charge de travail.

Projets similaires