Les portes dérobées

Loïc Christolomme
INSA TC
Published in
9 min readJan 6, 2020

Nombre de personnes, après avoir vu le film Snowden (2016) ont mis en place un cache sur la caméra de leur ordinateur. Parce que la sécurité de leurs données et de leur vie privée est une réelle préoccupation.

Seulement, les bonnes pratiques de l’utilisateur (mettre des mots de passe différents et sécurisés par exemple) ne suffisent pas à lui assurer son intimité. Car un logiciel n’est jamais sûr à 100%, il reste souvent une petite faille, voulue ou non. Elle peut être liée à un oubli des développeurs, comme un cas qui n’a pas été envisagé. Mais elle peut aussi être volontaire, soit parce qu’il y avait une volonté de faciliter les corrections futures du code, soit, plus néfastement, parce qu’elles sont voulues pour garder un contrôle. Dans ce second cas, il s’agit d’une backdoor — ou porte dérobée. Et les vraies complications commencent lorsqu’elles sont (potentiellement) imposées par le gouvernement.

En l’occurrence, nous n’allons pas nous appuyer sur des backdoors logicielles mais sur des backdoors cryptographique. Tout logiciel de sécurité informatique intègre à un moment où un autre un générateur de nombres pseudo-aléatoires (PRNG). C’est un incontournable qui constitue également un enjeu algorithmique, puisque la sûreté du PRNG assure celle du système cryptographique. Voyons ensemble l’un d’entre eux et en quoi l’intégrer revient à implémenter une backdoor à son logiciel, à travers l’exemple de l’affaire Juniper. Puis étudions des aspects plus politiques. En effet, ces pratiques induisent des contestations au sein des états les mettant en place à grande échelle à des fins de surveillance de masse. Enfin, pour clôturer cet article, étudions les aspect éthiques et politiques liées à ces sujets.

Dual_EC

Il y a plusieurs années, en 2006, la US National Institute of Standards and Technology (NIST) identifia quatre PRNG qu’elle définit comme standards, utilisant chacun une méthodologie différente pour produire une suite de valeurs. L’un d’entre eux s’appelle Dual_EC_DRBG, mais nous l’appelerons Dual_EC. Et il a été le plus recommandé de tous par la NSA, comme étant le plus rapide et sécurisé [Source : Wired].

Dual_EC est un algorithme déterministe. C’est-à-dire que les valeurs en sorties se basent sur un paramètre initial, que l’on appelle la graine (seed en anglais). Cela signifie que, si l’on utilise la même graine une seconde fois, la sortie est exactement la même que la première fois. C’est là une faiblesse notable. En effet, connaître la série de chiffres permet de déchiffrer toute information qui les utiliserait. Heureusement, ça n’est pas si simple et cette valeur est particulièrement inaccessible dans le code. Seulement, la graine fonctionne avec un second paramètre, la clé Q. Cette dernière peut être générée de manière à retrouver la graine initiale, brisant ainsi la sécurité du PRNG. Là où les choses se complexifient est lorsque l’on réalise que cet algorithme est en réalité plutôt lent.

Autrement dit, le PRNG de Dual_EC n’est ni sûr ni rapide. Nous sommes alors en droit de nous demander en quoi la NSA a tant voulu recommander Dual_EC. Avons-nous là une backdoor intentionnelle ?

En effet, en 2013 s’élève un soupçon envers la NSA comme quoi cette clé Q aurait été générée de manière maligne [Source : Wired]. Shumow et Ferguson, deux cryptographes de Microsoft, découvrirent qu’elle pouvait faire partie d’une paire de clés conçues de telle manière que l’on puisse utiliser la seconde pour retrouver la graine et donc déchiffrer la sortie. En effet, il suffisait d’obtenir une trentaine bits de la sortie brute de Dual_EC pour la retrouver. Et pourquoi la NSA ne posséderait-elle pas cette seconde clé, qui lui ouvre tant de portes ?

A partir de là, les experts ont rendu la faille publique et ont pensé que, puisqu’il était su que cet algorithme n’était pas sûr, il ne serait guère utilisé. Ils avaient tort. Le gouvernement américain est influent dans le domaine de la cybersécurité et a exigé la présence de Dual_EC dans les produits qu’il commandait. Autrement dit, une faille était exigée dans tout le matériel informatique du gouvernement américain. Ainsi, RSA a signé un contrat d’une valeur de 10 millions de dollars pour implémenter Dual_EC dans leurs solutions [Source : Reuters].

Il faut ajouter à cette affaire le fait qu’elle ferait apparemment partie d’un plan d’ensemble de la NSA, pour lequel ils auraient dépensé 250 millions de dollars et passé plus de 10 ans. Plan d’ensemble visant à se ménager un accès aux systèmes de sécurité informatique dans le monde. Nous allons en voir un deuxième cas supposé.

Juniper

[Sources de la section : Wired & Matthew Green’s blog]

Les faiblesses de l’affaire Juniper (2015) reposent sur plusieurs aspects. Avant d’aller plus loin, il faut savoir que le système concerné, ScreenOS, intègre un VPN utilisé par le gouvernement américain, sur lequel nous allons nous concentrer. Ensuite, il y avait une première faiblesse, qui a été exploitée par des attaquants malveillants pour créer la seconde. Enfin, le code qui contenait lesdites faiblesses n’aurait même pas dû être utilisé. Détaillons un peu tout cela.

Comme nous l’avons établi, tout logiciel intégrant des fonctionnalités cryptographiques — donc à fortiori un VPN — repose à un moment ou un autre sur un générateur de nombres pseudo-aléatoires. Il y en a deux de présents dans ScreenOS : Dual_EC et ANSI X9.17, que j’appelerai plus simplement Ansi. Le premier est donc doté d’une sécurité toute relative, là où le second est bien plus sûr et était déjà implémenté. Il n’aurait donc dû y avoir qu’Ansi d’utilisé dans ScreenOS. Il est présumé que Dual_EC a été ajouté pour des raisons politiques, telles que celles que nous avons précédemment présentées.

ScreenOS devait faire passer la séquence générée par Dual_EC dans Ansi, brouillant ainsi la piste. Si l’utilisation de deux générateurs de nombres aléatoires est plus que discutable, surtout lorsque l’un d’eux est plus sûr et rapide que l’autre, le vrai souci est lorsqu’il est possible d’éviter d’utiliser le second. Car, oui, le code était tel que la valeur obtenue en sortie de Dual_EC ne passait jamais dans Ansi. En connaissant la clé Q, on lisait simplement les 32 bits en sortie, qui étaient donc directement issus de Dual_EC, et il était alors possible de déchiffrer toute la communication.

C’est déjà une faille majeure dans ScreenOS, puisqu’il suffit de limiter la sortie à moins de 30 bits (20 conseillé par les experts). Ça n’a pas été fait. Pas si grave, me direz-vous, il y a la clé Q qui est inconnue, n’est-ce pas ? Eh bien non, pas lorsqu’elle est inscrite en dur dans le code. Ainsi, des attaquants sont parvenus à la remplacer par l’une de leurs valeurs. Pourvu que lesdits attaquants soient un gouvernement étranger, ils avaient alors accès à toute communication passant par ce VPN.

“Ce qui est critique, dans ce cas, est que si n’importe lequel des quatre ajouts de la version n’avait pas été implémenté, il n’aurait pas été possible de déchiffrer le trafic en sortie du VPN”, explique Checkoway, professeur d’informatique à l’université d’Oberlin, Ohio. “Si cette vulnérabilité n’était pas intentionnelle, alors il me semble que c’est une incroyable coïncidence.” [Traduction de l’auteure] Pour rappel, les quatre ajouts critiques sont les suivants :

  • utiliser Dual_EC
  • inscrire la clé Q en dur
  • bloquer le passage à travers Ansi
  • avoir plus de 20 bits en sortie

Là où cette affaire porte encore plus à débat est que Juniper, lorsqu’on leur a révélé la faille, n’a pas corrigé le souci comme ils auraient dû. La méthode la plus sûre aurait été de retirer Dual_EC du programme et de se contenter d’Ansi. Mais ils ont choisi de modifier la valeur de la clé Q en la remettant à sa valeur initiale — et de la cacher. Ils n’ont pas non plus modifié le fait que la sortie ne passe pas dans Ansi dans un second temps. Ni la taille de la sortie en question. Autrement dit, pour ceux qui connaissent la graine, il est toujours possible de déchiffrer le trafic en sortie.

Aspect politique des backdoors

Des enjeux de sécurité nationale

Aujourd’hui, les nouvelles technologies de l’information et de la communication permettent de très efficacement localiser, écouter, surveiller une personne et de détecter un comportement anormal parmi des millions d’individus. Chaque téléphone est équipé d’une puce GPS, envoyant en temps réel des données de localisation sur le réseau, tous les SMS et le trafic de données circulent également sur ce même réseau. Cette mine d’or de millions d’informations n’a jamais été aussi simple à intercepter et à traiter, grâce à l’évolution de la puissance de calcul des ordinateurs et au développement de l’intelligence artificielle.

Mettre en place une porte dérobée dans les téléphones et chez les opérateurs, semble être la manière la plus simple et efficace, pour les états, afin de pouvoir détecter et anticiper les actions malveillantes.

Après une attaque terroriste, des lois renforçant la surveillance étatiques sont souvent adoptés, en guise de réponse à cette menace invisible et peu identifiée. Citons pour exemple la loi relative au renseignement de juillet 2015 en réaction aux attentats [Source: Légifrance].

Les objectifs de cette loi sont la prévention du terrorisme et de la délinquance organisée, ainsi que des violences collectives. Les mesures autorisées sont :

  • Interception de courriels
  • Accès aux micros et aux balises GPS
  • Accès au contenu des ordinateurs suspects via l’installation de logiciels-espions
  • Accès au trafic internet

L’utilisation de plus en plus répandue des protocoles de chiffrement dans les applications grand public (HTTPS pour internet, Telegram pour la messagerie instantanée), ne permettent plus aux gouvernements d’accéder à ces flux de données en surveillant les données circulant par les fournisseurs d’accès internet. Pour accéder aux données, ils doivent accéder directement aux terminaux, d’où l’utilisation de backdoors à des fins de surveillance.

Une question qui divise

On constate généralement deux avis sur la question de la mise en place de surveillance de masse. Le premier est l’avis considérant l’aspect sécuritaire très important et que l’érosion de la vie privée et du respect des données personnelles sont des maux nécessaires, l’argument souvent amené pour appuyer ces propos est “je n’ai rien à cacher”. La deuxième attitude répandue face à cette question est le rejet.

Comme on peut le constater sur la carte ci-dessous [Source: amnestyusa.org], la plupart des pays sondés par cette étude, menée par Amnesty International, se prononcent contre la surveillance de masse, montrant un attachement des populations au respect de leur vie privée, aux quatre coins du monde. Les seules exceptions sont la France et le Royaume-Uni (seulement 44% de personnes contre). Cela peut s’expliquer notamment par le fait que ces deux pays ont été victimes de nombreux attentats récemment, l’impression d’insécurité générée par ces drames influençant l’attitude des habitants face à la surveillance de masse.

Limites éthiques de la surveillance

Ces opérations de surveillance ne sont pas sans danger, elle remettent en question un des droits fondamentaux de l’homme : le respect de la vie privée. Avec l’affaire Snowden, les pratiques illégales effectuées par la NSA ont déclenché une réelle prise de conscience du monde entier sur la surveillance de masse effectuée par les États-Unis.

D’après une étude de l’American Civil Liberties union, la NSA possèderait des connexions directe aux switchs centraux vers lesquels passent obligatoirement les flux de données allant vers l’Asie et l’Europe. Ainsi que sur les nœuds d’interconnexions entre les différents opérateurs du pays [Source: Aclu.org].

Ces mines d’or d’informations engendrent également de nouvelles formes de guerre. On a pu constater à travers le monde, tout comme pour les conflits armés, une hégémonie américaine dans le cyber-espace. Cependant, il ne s’agit pas du seul acteur à investir massivement dans ces nouvelles armes. La Russie et la Chine sont également très actifs dans le domaine.

Pour finir, on doit pas ignorer également le risque totalitaire: un état peut se servir de ces données pour asseoir sa domination et réprimer ses opposants, sous couvert de “menace à la sécurité publique” [Source: Contreproints].

On peut citer par exemple, la surveillance et la répression des manifestants Hongkongais par le régime Chinois, grâce aux téléphones mobiles et aux différentes caméras de surveillance .

Article co-écrit par Noémie Hennequin et Loïc Christolomme.

--

--