Dans un récent post sur GitHub, la plateforme de référence pour les développeurs et les chercheurs en sécurité, un utilisateur (hackermondev) se présentant sous le nom de « Daniel » — un lycéen de 15 ans en classe de première — affirme avoir découvert une vulnérabilité inédite. Cette brèche permettrait de déterminer la localisation approximative (dans un rayon de 100 à 200 km) des utilisateurs de plusieurs applications populaires, dont Signal, Discord et Twitter/X. Selon lui, cette attaque dite « sans interaction » (ou 0-click) offrirait à un éventuel attaquant le moyen de cibler et de surveiller un individu de manière nettement plus simple qu’on ne l’imagine.
Le talon d’Achille des CDN
Pour comprendre comment Daniel a mis au jour cette faille, il faut revenir au rôle des systèmes de cache, les Content Delivery Networks (CDN). Des réseaux mondiaux conçus pour accélérer l’affichage des contenus web. Cloudflare, l’un des plus grands CDN au monde, copie des fichiers (images, vidéos, etc.) sur des serveurs répartis dans le monde (330 répartis dans plus de 120 pays) afin que l’utilisateur accède toujours au centre de données le plus proche. Le hic : dans la réponse envoyée au navigateur ou à l’application, Cloudflare glisse des métadonnées sur le centre qui a traité la requête. Parmi ces informations, on trouve cf-cache-status et cf-ray. Ce dernier inclut un code de localisation basé sur l’aéroport le plus proche du datacenter ayant traité la requête (par exemple, IAD pour Washington Dulles ou CDG pour Paris Charles de Gaulle).
L’étincelle de Daniel a été de se demander si, en déterminant précisément quel datacenter gérait la requête, il était possible d’en déduire la position de l’utilisateur. La réponse : oui.
Comment cette faille est exploitée ?
Daniel a d’abord développé un outil appelé Cloudflare Teleport, permettant de cibler des centres de données précis. Même si Cloudflare a réagi en comblant la brèche initiale, il a ensuite contourné le problème grâce à des VPN à localisations multiples, qui lui permettent de tester différents centres Cloudflare à travers le monde.
Le scénario d’attaque est simple :
- L’attaquant envoie à sa cible un fichier (une image, un emoji personnalisé, etc.) via une application vulnérable (Signal, Discord…).
- Dès que la cible ouvre la conversation — ou même qu’elle reçoit une notification — l’application télécharge automatiquement le fichier.
- Ce téléchargement est géré par le centre de données le plus proche de la cible, donc potentiellement révélateur de sa position.
- L’attaquant teste plusieurs datacenters pour déterminer lequel a mis le fichier en cache et, par déduction, localise approximativement la victime.
Signal pointé du doigt
Si Discord et Twitter/X sont également concernés, c’est le cas de Signal qui suscite le plus d’inquiétudes. L’application de messagerie chiffrée, prisée des journalistes et des défenseurs des droits humains, fait appel à deux CDN : Amazon CloudFront pour les images de profil et Cloudflare pour les pièces jointes. C’est cette seconde intégration qui ouvre la porte à la faille. Pire, Daniel souligne qu’avec le réglage par défaut de Signal, une simple notification push suffit à déclencher le téléchargement de l’image et, de fait, la mise en cache dans un centre de données local. La cible n’a même pas besoin d’interagir.
De la simple indiscrétion au traçage organisé
On pourrait se dire qu’une précision de 100 à 200 km n’est pas critique, mais dans bien des situations, cela suffit amplement. Des agences gouvernementales peuvent ainsi déterminer une zone de recherche pour un utilisateur et croiser ces données avec d’autres comptes pour affiner une surveillance. Des cybercriminels, eux, peuvent identifier la zone géographique d’utilisateurs précis et cibler leurs attaques. Et certaines entreprises, peu soucieuses des questions de vie privée, pourraient être tentées de suivre ainsi leurs clients ou leurs employés sans leur consentement.
Les réactions en demi-teinte de Signal, Discord et Cloudflare
Selon Daniel, tous les acteurs concernés ont été alertés, mais la réception a été mitigée :
- Signal indique clairement qu’il ne garantit pas l’anonymat réseau (contrairement à Tor ou WireGuard) et se concentre sur le chiffrement des contenus.
- Discord a d’abord semblé préoccupé, avant de réorienter le débat vers les réglages de Cloudflare.
- Cloudflare, de son côté, a corrigé la brèche de l’outil Cloudflare Teleport mais renvoie le problème aux applications, estimant qu’il leur revient de paramétrer correctement leur mise en cache.
Résultat : tant que les services concernés ne modifient pas leurs configurations, cette attaque demeure partiellement exploitable.
Comment limiter les risques ?
Quelques gestes simples permettent de réduire la probabilité d’être la cible de cette faille :
- Désactiver l’affichage des contenus dans les notifications : sur Signal, rendez-vous dans Paramètres > Notifications et désactivez l’aperçu des messages.
- Couper le téléchargement automatique des médias : cela évite à l’application de télécharger sans discernement des fichiers qui pourraient vous géolocaliser.
- Utiliser des VPN multi-hop ou le réseau Tor : en masquant votre adresse IP et en multipliant les relais, vous compliquez considérablement le traçage.
Équilibre précaire entre performance et confidentialité
Cette affaire illustre une nouvelle fois la tension entre confort d’utilisation et protection de la vie privée. Les CDN offrent une rapidité d’accès devenue indispensable, mais ils introduisent aussi des failles parfois insoupçonnées. Même si la position obtenue n’est pas précise au centimètre près, elle peut suffire à surveiller et à recouper des informations.
Pour les utilisateurs de Signal, Discord ou toute autre application s’appuyant sur des CDN, la vigilance s’impose. Paramétrer ses notifications et gérer le téléchargement des médias sont aujourd’hui plus que jamais des gestes de base. Car à l’heure où chaque métadonnée peut être retournée contre vous, la prudence reste votre meilleur allié.