Quatre vulnérabilités cryptographiques dans Telegram

Une équipe internationale de chercheur·ses en cryptographie a réalisé une analyse de sécurité détaillée de la populaire plateforme de messagerie Telegram, identifiant plusieurs faiblesses dans son protocole qui démontrent que le produit n'offre pas certaines garanties essentielles en matière de sécurité des données.
Telegram est un service gratuit de messagerie instantanée. Des chercheur·ses de l'ETH Zurich viennent de découvrir quelques failles de sécurité potentielles dans la plateforme. (Image: Keystone)

Travaillant uniquement avec du code open-source et sans attaquer aucun des systèmes en fonctionnement de Telegram, une petite équipe de chercheur·ses internationales et internationaux a réalisé une analyse détaillée des services de cryptage de l'entreprise. Des scientifiques de l'ETH Zurich et de Royal Holloway College (Université de Londres), ont mis en évidence plusieurs faiblesses du protocole cryptographique de la plate-forme de messagerie populaire.

Pour la plupart de ses 570 millions d'utilisateur·ices, le risque immédiat est faible, mais les vulnérabilités soulignent que le système propriétaire de Telegram n'offre pas les garanties de sécurité dont bénéficient d'autres protocoles cryptographiques largement déployés, tels que Transport Layer Security (TLS). Kenny Paterson, professeur de l'ETH Zurich, indique que l'analyse a révélé quatre points clés qui "... pourraient être mieux réalisés, de manière plus sûre et plus fiable, avec une approche standard de la cryptographie.»

Une première vulnérabilité: la pizza ou le crime?

Les chercheur·ses ont évalué que les vulnérabilités les plus importantes concernent la capacité d'un·e attaquant·e sur le réseau à manipuler la séquence des messages provenant d'un client vers l'un des serveurs cloud que Telegram exploite à l'échelle mondiale. Imaginez les dommages potentiels qui pourraient survenir en intervertissant la séquence des messages. Par exemple, si l'ordre des messages dans la séquence «Je dis 'oui' à», «pizza», «Je dis 'non' à», «crime» était modifié, il semblerait que le client déclare sa volonté de commettre un crime.

Deuxième attaque: chaque information donnée est de trop.

Principalement d'intérêt théorique, cette vulnérabilité permet à un·e attaquant·e sur le réseau de détecter lequel de deux messages est crypté par un client ou un serveur. Les protocoles cryptographiques sont conçus pour exclure même de telles attaques.

Troisième attaque: régler l'horloge.

Les chercheur·ses ont étudié la mise en œuvre des clients Telegram et ont découvert que trois d'entre eux - Android, iOS et Desktop - contenaient un code qui, en principe, permettait aux attaquant·es de récupérer une partie du texte en clair des messages chiffrés. Bien que cela semble alarmant, il faudrait pour cela qu'un·e attaquant·e envoie des millions de messages soigneusement rédigés à une cible et qu'il·le observe d'infimes différences dans le temps que prend la réponse pour être délivrée. Néanmoins, si ce type d'attaque réussissait, elle serait dévastatrice pour la confidentialité des messages Telegram et, bien sûr, pour ses utilisateur·ices. Heureusement, cette attaque est presque impossible à réaliser dans la pratique. Mais, avant que vous ne poussiez un soupir de soulagement, ce type d'attaque est principalement atténué par la simple coïncidence que certaines métadonnées de Telegram sont sélectionnées au hasard et gardées secrètes.

Quatrième attaque: quelqu'un vous lit.

Les chercheur·ses montrent également comment un·e attaquant·e peut monter une attaque de type «attacker-in-the-middle» sur la négociation initiale des clés entre le client et le serveur. Cela permet à un·e attaquant·e de se faire passer pour le serveur auprès d'un client, ce qui lui permet de rompre à la fois la confidentialité et l'intégrité de la communication. Heureusement, cette attaque est elle aussi assez difficile à mettre en œuvre, car elle nécessite que l'attaquant·e envoie des milliards de messages à un serveur Telegram en quelques minutes. Toutefois, cette attaque souligne que, si les utilisateur·ices doivent faire confiance aux serveurs de Telegram, la sécurité de ces derniers et de leurs implémentations ne peut être considérée comme acquise.

Les bases de la sécurité

Comme il est d'usage dans ce domaine de recherche, l'équipe a informé les développeur·ses de Telegram de ses conclusions 90 jours avant de les rendre publiques, offrant ainsi à l'entreprise suffisamment de temps pour résoudre les problèmes identifiés. Entre-temps, Telegram a réagi aux résultats et a corrigé les problèmes de sécurité découverts par les chercheur·ses au moyen de mises à jour logicielles.

Les protocoles cryptographiques sont fondés sur des blocs de construction tels que les fonctions de hachage, le chiffrement par blocs et le chiffrement à clé publique. L'approche standard de l'industrie consiste à les composer de telle sorte que des garanties formelles puissent être données: si les blocs de construction sont sûrs, le protocole composé l'est aussi. Telegram ne disposait pas d'une telle garantie formelle. Ici, l'équipe de recherche offre une lueur d'espoir à Telegram: Elle montre comment obtenir de telles garanties en n'apportant que des modifications mineures au protocole de Telegram. Toutefois, la sécurité d'un protocole dépend de celle de ses éléments constitutifs et le protocole de Telegram impose des exigences de sécurité exceptionnellement élevées à ces éléments. Pour l'équipe de recherche, cela revient à rouler à toute allure sur l'autoroute dans une voiture dont les freins n'ont pas été testés.

Alors, pourquoi les chercheur·ses universitaires fouillent-il·les dans le code source ouvert du secteur privé? Kenny Paterson répond : «La raison fondamentale est que nous voulons construire des systèmes plus solides et plus sûrs qui protègent les utilisateur·ices. Étant donné que l'industrie technologique évolue parfois à un rythme plus rapide que le monde universitaire, les entreprises technologiques offrent aux étudiant·es la possibilité de travailler sur des défis du monde réel, voire de les résoudre, et d'apporter ainsi une contribution importante à la société.»

Martin Albrecht, professeur au Royal Holloway College, a ajouté: «Dans ce cas, notre travail a été motivé par d'autres recherches qui examinent l'utilisation de la technologie par les participant·es à des manifestations à grande échelle telles que celles observées en 2019/2020 à Hong Kong. Nous avons constaté que les manifestant·es s'appuyaient de manière critique sur Telegram pour coordonner leurs activités, mais que Telegram n'avait pas reçu de contrôle de sécurité de la part des cryptographes.»

Plus d'informations

La composition de l'équipe de recherche sur la sécurité de l'information était la suivante:

Le professeur Kenny Paterson et le docteur Igors Stepanovs, du groupe de cryptographie appliquée de l'ETH Zurich.

Le professeur Martin Albrecht et la doctorante, Lenka Mareková, du groupe de cryptographie du  Royal Holloway College, Université de Londres.