Journal d'investigation en ligne et d'information‑hacking
par Jef Mathiot

Google bas du front, c'est le Souq chez Signal

Google interdit le domain fronting

Décidément, ça bouge dans le monde de messageries sécurisées. Les développeurs de Signal sont contraints de s'adapter aux modifications récentes imposées par Google.

Souk de Tunis - Leandro Neumann Ciuffo - CC BY 2.0

Alors que nous étudions les mesures techniques mises en place par Telegram pour contrer le dispositif de censure, massif, des autorités russes, nous sommes tombés sur une bizarrerie. Pour comprendre le système de découverte d'adresses IP de la messagerie, nous avions en effet écrit un script imitant le comportement de l'application. Deux mécanismes relativement similaires ont été mis en place par les développeurs.

Le premier, qui fonctionne toujours, utilise le domain fronting via google.com pour s'adresser au service dns.google.com. Le second utilise la même terminaison, google.com, mais pour dissimuler cette fois-ci les requêtes à destinations de dns-telegram.appspot.com. Mais impossible de le faire fonctionner. C'est la raison pour laquelle, dans le script, nous utilisons directement dns-telegram.appspot.com. En passant par google.com pour essayer d'atteindre cette seconde adresse le serveur renvoie ainsi le message suivant :

This HTTP request has a Host header that is not covered by the TLS certificate used. Due to an infrastructure change, this request cannot be processed.

Nous avions pensé au départ à un problème de notre côté, mais après plusieurs essais infructueux, il était évident qu'il n'était pas de notre fait. appspot.com étant le nom de domaine fourni par Google dans le cadre de son offre d'hébergement « Google App Engine », il fallait donc en conclure que Google avait interdit le « domain fronting » via google.com vers Google App Engine. Or cette technique est très utilisée, notamment par la messagerie Signal, pour contourner la censure en Égypte, à Oman, au Qatar et aux Émirats arabes unis.

Pour être plus précis, le « domain fronting » ne permet pas stricto-sensu de « contourner » la censure, il en augmente le coût. En s'abritant derrière un nom de domaine populaire, il contraint le censeur à bloquer ce dernier. Et google.com est très populaire : l'équivalent numérique du Saint-Graal. Google interdisant dorénavant l'utilisation de cette technique, les développeurs de Signal ont donc modifié l'application. Le changement, qui date de quelques semaines, consiste à utiliser cms.souqcdn.com. Il s'agit d'une terminaison du réseau Amazon Cloudfront utilisée par le site d'ecommerce Souq.

Signal a pu mettre en œuvre cette modification très rapidement car elle est triviale techniquement, étant donnée l'architecture de l'application, mais aussi parce que l'équipe semble avoir été mise au courant en avance de phase de l'interdiction par Google du « domain fronting » via google.com. Néanmoins, même si Souq est très populaire dans ces pays, le coût pour le censeur devient malheureusement bien moindre que le blocage du moteur de recherche. Les développeurs de Signal sont d'ailleurs ouverts à d'autres suggestions :

We're using Souq because it is popular in the countries where we have Censorship Circumvention enabled (Egypt, Oman, Qatar, and UAE) but it would be nice to have other options on CloudFront as well. It's possible that we overlooked other highly ranked domains in these countries that use the CloudFront CDN.

If anyone has any suggestions, we would appreciate them.

Le changement de politique du géant de la recherche impacte également d'autres projets, comme repéré par Rayna Stamboliyska . Si la censure a un effet évident sur la liberté d'expression, elle incite aussi à la centralisation en poussant vers les plus gros acteurs. Ces derniers ne défendant que leurs propres intérêts.

« Don't be evil », hein, Google ?

Mise à jour du 19 avril 2018 à 16h43 : l'arrêt du domain fronting a également été repérée par the Verge.

3 Commentaires
Une info, un document ? Contactez-nous de façon sécurisée