- La vérification d’appareil « Verify you're human » de Cloudflare Turnstile boucle à l’infini depuis environ une semaine sur les navigateurs basés sur WebKitGTK
- La cause directe du blocage d’accès à plusieurs sites semble être une tentative de Cloudflare d’obtenir une empreinte de l’appareil via WebGL
- Le message de Turnstile indique que la prise d’empreinte du navigateur est utilisée pour vérifier qu’il s’agit bien d’un humain, et que les outils de blocage ou de randomisation peuvent faire paraître l’utilisateur comme un bot
- WebKit bloque ce type de fonctionnalité depuis des années, et cela ne semble pas être une option de confidentialité facilement désactivable par l’utilisateur
- Alors que Safari semblerait bénéficier d’une exception, l’ensemble des navigateurs WebKitGTK se retrouve bloqué, et les utilisateurs de Firefox avec certains réglages de protection pourraient aussi être touchés
Vérification Turnstile en boucle sur WebKitGTK
- La vérification d’appareil « Verify you're human » de Cloudflare Turnstile boucle à l’infini depuis environ une semaine sur les navigateurs basés sur WebKitGTK, empêchant l’accès à plusieurs sites web
- La cause du blocage semble être une tentative de Cloudflare d’obtenir une empreinte de l’appareil via WebGL
- Le texte d’information de Turnstile indique que la prise d’empreinte du navigateur est utilisée pour déterminer s’il s’agit d’un humain
- Les outils de confidentialité qui bloquent ou randomisent la prise d’empreinte peuvent faire apparaître le navigateur comme un bot cherchant à dissimuler son identité
- WebKit bloque ce type de fonctionnalité depuis des années, et cela ne semble pas être une fonctionnalité de confidentialité facile à désactiver
- Alors que Cloudflare semblerait avoir prévu une exception pour Safari, l’ensemble des navigateurs WebKitGTK se retrouve bloqué
Comportement de protection associé dans Firefox
- La protection de Mozilla Firefox contre la prise d’empreinte via WebGL présente le problème Bugzilla#1916271: Gecko reveals sanitized GPU Characteristics; webkit and blink return hardcoded strings for all users
privacy.resistfingerprintingn’est pas activé, même si l’on choisit « Strict » ou « Enhanced Privacy Protection » dans les réglages- Les utilisateurs de Firefox orientés confidentialité qui activent manuellement
privacy.resistfingerprintingpourraient à l’avenir ne plus réussir la vérification d’appareil de Cloudflare
1 commentaires
Discussions sur Hacker News
Cloudflare est connu pour utiliser l’empreinte du navigateur pour détecter les scrapers. Par exemple, il compare l’empreinte JA3 avec l’agent utilisateur pour bloquer des outils comme cURL tout en autorisant OkHttp (client Android), mais on peut facilement se faire passer pour autre chose avec des paquets comme CycleTLS [1]
Je n’ai pas envie de défendre ça, puisqu’au nom de la « protection contre les bots » ils bloquent une grande partie d’Internet, mais si l’on n’utilise pas de preuve de travail (PoW), la prise d’empreinte peut être une méthode réaliste — au prix d’une destruction totale de la vie privée de tout le monde
Cromite, un fork de Chromium orienté vie privée pour Android, a des problèmes récurrents avec Cloudflare Turnstile [2], parce que Cloudflare collecte l’empreinte de différentes manières pour laisser passer le challenge
Pour résoudre le problème, il faudrait rejoindre le programme Cloudflare Browser Developer, ce qui exigeait de signer un NDA, et le refus du responsable du projet paraît justifié
Pour voir jusqu’où Cloudflare fouille dans l’empreinte du navigateur, il suffit de regarder dans le ticket [2] quels drapeaux il faut désactiver pour passer le challenge. Au minimum, Cloudflare pourrait être assez souple pour remplacer cela par une preuve de travail au lieu de simplement bloquer les gens lorsqu’ils soumettent un formulaire ou accèdent à un site web
[1]: https://github.com/Danny-Dasilva/CycleTLS
[2]: https://github.com/uazo/cromite/issues/2365
Attribuer une réputation aux IP résidentielles et aux plages commerciales pourrait être une autre manière d’obtenir le résultat recherché. Cela pousserait les opérateurs à être beaucoup plus prudents face aux abus d’IP, mais dans ce cas, l’activité DDoS des attaquants comme celle des défenseurs pourrait s’effondrer en même temps
Ironiquement, pas mal d’entreprises investissent à la fois dans la création de leurs propres bots et dans des moyens de bloquer ceux des autres
Si on applique une charge de 5 W pendant 2 secondes, cela fait 0,002 Wh, et comme il faut aussi que les smartphones puissent passer, on ne peut pas imposer une preuve de travail de plusieurs dizaines de secondes. Même avec 8 milliards de vérifications par jour pendant un an, on arrive à 8 GWh
Il y a une raison pour laquelle
privacy.resistfingerprintingne s’active pas même quand on choisit « Strict » dans « Enhanced Privacy Protection ». Je l’ai utilisé longtemps, mais les sites se cassaient bizarrement, donc je devais sans cesse le désactiver et ajouter des contournementsSur certains sites, la gestion du fuseau horaire se dérègle, au point que j’ai failli rater plusieurs rendez-vous. Pour faire comprendre aux utilisateurs que Firefox n’est pas cassé, il faudrait quasiment une bannière permanente du style : « Si des sites se cassent, affichent des glitches bizarres, si l’heure de votre ordinateur semble fausse, si les polices sont étranges ou si des vidéos ne se lancent parfois pas, cliquez ici pour désactiver la protection contre l’empreinte »
Fait intéressant, Turnstile casse avec
resistfingerprintingmais fonctionne avecfingerprintingProtection. Ce dernier semble avoir été conçu en tenant compte de ce genre de situation pourrieEn mode Strict, on s’attend dans une certaine mesure à ce que des sites cassent, mais pas à ce que les voies de pistage restent grandes ouvertes. Ça paraît trompeur
Je maintiens un navigateur minoritaire[0], et plusieurs utilisateurs rencontrent ce problème depuis quelques semaines[1]. Pour l’instant, je ne pense pas que ce soit un bug du navigateur, mais il peut évidemment y avoir des bugs liés, et j’aimerais plus de regards dessus : toute idée ou aide pour améliorer ou atténuer la situation est bienvenue
[0]: https://konform-browser.codeberg.page/
[1]: Je ne sais pas si c’est la majorité ou tout le monde. Sans télémétrie, on dépend des retours utilisateurs et de nos propres tests
« Si on a remarqué que vous vous déguisiez, c’est que vous ne vous déguisiez pas assez bien. »
Cette stupide guerre contre les bots mène à l’effondrement d’Internet et finira par en faire un autre jardin clos où seuls des agents approuvés et hostiles aux utilisateurs seront autorisés. Il ne faut pas se laisser embobiner par le baratin sur les « scrapers IA » : ce n’est qu’un moyen de fabriquer le consentement
Est-ce que Google et Cloudflare ont conclu un accord pour rendre l’usage des navigateurs non Chrome plus difficile ? La pression pour utiliser Chrome ne cesse d’augmenter, et ce qu’on peut faire en matière de filtrage publicitaire dans Chrome ne cesse de diminuer
Dès que vous cachez quelque chose, vous êtes automatiquement classé dans la catégorie des « agents qui ont une raison de se cacher »
Pour être clair, c’est bien là le problème central. Puisqu’une si grande partie d’Internet passe par Cloudflare, il devrait y avoir suffisamment de signaux alternatifs permettant de montrer plus fortement qu’on n’est pas un acteur malveillant, plutôt que de dépendre d’un seul signal précis
Cela dit, comme il y a très peu d’utilisateurs avec cette configuration dans la base installée, il se peut qu’il faille très longtemps avant qu’une vraie solution émerge
Ils disent : « Vous semblez vouloir cacher votre identité », mais au départ ils n’avaient pas le droit d’exiger cela
Je ne connaissais pas
privacy.resistfingerprinting, mais désormais j’ai l’intention de laisser échouer tous les Cloudflare TurnstileLe réglage
privacy.resistfingerprintingest destiné à Tor BrowserIl est aussi activé par défaut dans Konform Browser et Mullvad Browser, qui reprennent beaucoup de correctifs de Tor Browser liés à la vie privée et à la sécurité
J’aime bien cet adage lié à la criminalité : si X % de la population enfreint une loi, c’est probablement qu’il faut l’abolir. Les drogues récréatives en sont un exemple évident
Si le rendu canvas aléatoire a été considéré comme un comportement de bot, mais que désormais tous les utilisateurs de Firefox le font, est-ce que Cloudflare ne devrait pas simplement le « légaliser » aussi ?