Fév 172012
 

Dans mes deux articles prédécents, j’expliquais comment l’« attaque » de Filiol avait affreusement mal quantifié et référencé les Bridge Relays du réseau Tor, puis comment il avait recyclé un procédé de « Packet Spinning » exposé en 2008.
Celui-ci se concentrera sur le troisième aspect de cette « attaque », à savoir la mise à mal des trois niveaux de chiffrement utilisés par Tor, laissant les communications claires comme de l’eau de roche pour l’attaquant, tant de par son contenu que ses origines et destinations.

Voyons de plus près ce qui se cache derrière la déclaration la plus audacieuse de l’équipe de Filiol, mais également la plus opaque, la plus imprécise, et la plus mystérieuse de tout son procédé.

Cette partie devait être la plus intéressante, puisque par élimination, ça devait être la seule apportant quoi que ce soit de nouveau sur la table, contrairement aux deux premiers aspects déjà discutés ici.

Le chiffrement de Tor complètement décimé par l’attaque de Filiol…

Les déclarations furent imprécises, variables, et incohérentes au possible, mais qu’il s’agisse d’un déchiffrement entier ou partiel de la communication, la tendance semblait préoccupante pour la technologie Tor.

Car je le rappelle, la philosophie de la technologie Tor est de fournir un anonymat à ses utilisateurs via de multiples couches de chiffrement relatifs à de multiples relais choisis au hasard.
Retirez le chiffrement de l’équation, et vous avez un anonymat du niveau de ce que l’on faisait en 1995, « efficace » contre les attaques connues dans les années 90.

Le résultat en est une technologie vous rendant invisible… dès lors que votre adversaire a délibérément décidé de garder les yeux fermés.

Vous conviendrez que cette annonce a de quoi inquiéter le demi-million de personnes à travers le monde ressentant le besoin d’utiliser Tor chaque jour de la semaine.

Le Threat Model du réseau Tor

Ceux ayant lu mes articles dans l’ordre, et ayant particulièrement commencé par mon article détaillant clairement le principe de fonctionnement de Tor, se rappelleront que toute la magie du procédé de Tor est de passer par trois relais aléatoires.

Ceux ayant suivi attentivement se rappelleront également que dès lors que quelqu’un était capable d’écouter chaque point entre le client, les relais, et la destination en même temps, il était capable de déterminer à la fois l’origine, la destination, et le contenu exact de la communication.

Ces quelques informations constituent, en très gros, ce qu’on appelle le « Threat Model » de la technologie Tor.
Pour faire simple, le Threat Model est une description des scénarios dans lesquels un outil de sécurité offre efficacement un service, et dans quels scénarios il est soit inefficace, soit dangereusement contre-productif.

Ce Threat Model, établi en même temps que la technologie Tor en 2003, décrit dès le départ ce scénario dans lequel Tor sait qu’il ne peut rien, et ne prétendra jamais être efficace. Tor est le Superman de l’anonymat en ligne, et à l’instar de celui-ci, il évitera sa Kryptonite comme la peste.

C’est pour se prémunir de ce cas de figure bien connu que les relais sont choisis aléatoirement, qu’il est important que leur nature, origine, fournisseur d’accès internet et propriétaires soient aussi divers que possibles, c’est également pour éviter cela que la notion de « Entry Guard » a été introduite.

Bref, ce n’est pas nouveau, et il existe un paquet de dispositifs sensés rendre ce cas de figure aussi mathématiquement improbable que possible, afin d’assurer l’anonymat des communications transitant via Tor.

Ce que Filiol nous expose est certainement intéressant s’il permet de ne pas avoir à compromettre les trois relais de la communication à la fois. Ce faisant, il rendrait inutiles les dispositifs d’Entry Gard et l’architecture même du réseau Tor, et en accord avec la définition communément acceptée d’une sécurité « cassée », il aurait effectivement « cassé » Tor en exposant un nouveau moyen plus facile et efficace de compromettre une communication.

…sauf qu’en fait non.

…ou pas ?

S’il est bien connu que Tor ne peut intrinsèquement pas protéger ses utilisateurs contre une communication dont au moins le premier et le dernier relais sont compromis, la fameuse « attaque » de Tor commence par « une fois le premier et le dernier relais compromis… »

Mais voyons en détail, et dans son ensemble, le raisonnement de Filiol.

La première partie de son attaque était de lister les Bridges Relays du réseau Tor, sensés être confidentiels. Ceci afin de soit les blacklister, soit les cibler pour les compromettre. (comment ? pourquoi ? l’histoire ne le dit pas.)

La seconde partie visait elle à rendre le réseau plus facile à compromettre, en réduisant le nombre de relais actifs en ligne, et réduisant donc également le nombre de relais à compromettre pour qu’un même attaquant contrôle la majorité du traffic.

La troisième et dernière partie est décrite comme suit :

  • Filiol affirme qu’il y a environ 50% de relais tournant sur des sytèmes Windows.
  • Filiol estime qu’environ 80% de ces 50% seraient donc vulnérables d’une façon ou d’une autre à un exploit permettant une prise de contrôle à distance de la machine. À savoir: une faille de sécurité importante dans Windows. (Notez qu’il ne précise pas laquelle, c’est ici pure conjecture.)
  • Filiol part du principe qu’il lui serait possible d’infecter ces 40% du réseau Tor (80% de 50% = 40%), et qu’en ciblant les relais tournant sous Linux/Mac osx/BSD/Solaris (sisi !)/autres, il parviendrait à que les 50% de relais tournant sous Windows deviennent 60, 70, 90 voir 100% des relais en ligne, augmentant donc le rendement de son attaque (80% de 100% = 80%, pour ceux qui n’ont rien suivi)
  • Une fois qu’il a en sa possession environ 80% des relais du réseau Tor, il y injecterais un virus de sa confection, chargé de modifier le logiciel Tor exécuté par les relais, pour, en simplifiant, désactiver le chiffrement des communications entre relais.

Il était une fois…

…dans une contrée très lointaine, un monde où les deux premières parties de l’attaque soient pratiquement utilisables, et utiles pour la suite de son attaque.
Un monde où toute théorie s’applique à la perfection, et où les approximations et postulats de Filiol sont parole d’Évangile.

Même dans ce monde, son attaque rencontrerait quelques problèmes majeurs.

Pour commencer, la sélection aléatoire des Relais lors de l’établissement d’un circuit par le client (cad. l’envoyeur) tient compte de leur capacité de bande passante. En clair, ça veut dire que plus un relais a de la bande passante, plus il sera sollicité.
Ceci ayant pour conséquence que, les relais ayant le plus de bande passante tournant sur Linux/BSD, quand Filiol soustrait 50% de relais Non-Windows, il retire environ 80 à 95% de la capacité de bande passante de tout le réseau Tor. (Il faut de sacrés moyens pour y arriver, mais on évolue ici dans un monde magique, donc chut.)

A ce moment précis de l’attaque, il reste environ 10-15% de capacité de bande passante, devant gérer l’exacte même demande en bande passante. (Filiol s’attaque aux relais, il n’a aucun moyen de réduire le nombre de gens à travers le monde ayant envie/besoin d’utiliser Tor). En clair, et même en rajoutant un grand nombre de serveurs à lui pour gérer du traffic, la quantité de données transitant par le réseau est telle qu’il se retrouverait avec environ 1 à 3% de relais actifs par intermitence de quelques secondes à quelques minutes.

S’il n’y a pas de réseau Tor utilisable, il n’y a pas de réseau Tor à compromettre. Encore moins quand les machines piégées destinées à le compromettre sont victimes d’un DDoS au centre duquel elles se sont elles-même placées. (Bien joué, Mr. le Directeur de centre de recherche de l’ESIEA ! J’ai hâte de jouer aux échecs avec vous :))

De plus, même dans ce monde imaginaire, il ne semble pas très sérieux de prétendre avoir une nouvelle « attaque » compromettant les communications Tor, quand celle-ci prend pour point de départ une situation déjà considérée comme un Échec et Mat par les développeurs de Tor eux-même, depuis environ… 2003 ?

Car il me semble utile d’insister que dans un scénario où un attaquant a déjà compromis au moins le premier et le dernier relais de la communication, j’ai déjà expliqué dans mes articles précédents qu’il n’y a pas besoin de déchiffrer les transmissions pour en découvrir le contenu et la provenance/destination.
Pourquoi dès lors prendre la peine d’interférer avec le logiciel Tor exécuté par ces relais, quand il suffit d’écouter ce qui se passe sur les interfaces réseau, et de regarder ce qui entre/sort du relais en temps réel ?

Pour affirmer que ce procédé soit nouveau, Filiol ne semble pas s’être attardé sur l’analyse du Threat Model de Tor lors de ses travaux de recherche.
Pour ceux qui ne sont pas familiers avec les méthodologies de recherche scientifique, disons que cette étape se trouve quelque part entre « lire la page Wikipedia de l’outil dont on va faire un travail de recherche » et « lire les précédents travaux académiques faits ces 10 dernières années sur le sujet pour être au courant de ce qui a déjà été dit et établi.»
Deux autres étapes sur lesquelles Filiol ne semble pas s’être attardé non plus.

Voici trois ressources qui, si elles avaient été consultées avec attention, auraient évité beaucoup d’erreurs de jugements et d’approximation dans les affirmations de Filiol :

Pour la petite histoire, le dernier lien aurait permis à Filiol de ne pas prétendre avoir listé « tous » les 128 Bridge Relays du réseau tor, quand les statistiques publiques en comptent 600.

Reality Check.

Retour au monde réel que nous connaissons et qui régit, rappelons le, le réseau que l’« attaque » de Filiol tente de compromettre.

Comme précisé dans mon article précédent, tenter de mettre hors ligne des pans entiers du réseau Tor n’est pas quelque chose qui passerait inaperçu. Je n’imagine pas que les quelques personnes gérant les « Directory Autorities » de Tor (les annuaires, si vous voulez) restent les bras croisés pendant le processus, alors qu’ils regardent chaque jour le nombre et la nature des nouveaux noeuds mis en ligne sur le réseau Tor.

De plus, les chiffres et proportions données par Filiol sont au mieux idéalistes, et je m’étonne qu’il affirme publiquement qu’une des étapes vitales et capitales de son attaque soit, simplement « posséder un exploit pour une faille de sécurité affectant 80% des Windows dans le monde en ne nécessitant que l’adresse IP de la cible pour s’y introduire. ».
Rien que ça ?
Si je ne remet pas en cause la réputation d’insécurité de ce système, je me contenterai de faire remarquer que ce n’est pas exactement le genre d’exploit qui pousse sur les arbres, et quand bien même un jour un tel exploit soit découvert, la sécurité du réseau Tor sera la moindre de nos préoccupations.

Enfin, et même si Filiol semble prêcher la « sécurité par la transparence » — en évoquant les Bridge Relays dont la nature implique qu’ils n’ont aucun intérêt s’ils sont publiques — il s’est systématiquement refusé à révéler le code source ou même le moindre exemple d’implémentation de son fameux virus destiné à « désactiver le chiffrement des relais Tor » (je simplifie)

Petite remarque : Ce que j’évoque ici est l’éternel débat, pourtant obsolète, de ce qu’on appelle la « Security through obscurity. », c’est à dire la sécurité par l’obscurité.
Il s’agissait d’un dogme prévalant jusque dans les années 70-80, où on supposait que la meilleure façon de s’assurer qu’on avait un moyen de chiffrement/sécurité inviolable était de s’assurer que personne ne sache comment il fonctionne.

Plus tard, quand les informations sont devenues plus faciles à échanger, et que la société a réduit les distances informationnelles, les agences gouvernementales et services secrets se sont vite aperçus qu’il était illusoire de garder secret la mécanique d’un procédé de chiffrement/sécurité très longtemps.
Utiliser des systèmes dont le secret est le fonctionnement est donc une pratique qui a progressivement disparu.

A la place, on a choisi des systèmes dont le fonctionnement est public et visible par tous, mais dont le secret soit une clé de chiffrement (ou un équivalent), différente pour chaque utilisation. Ainsi, on réduit l’information critique à une simple clé plus facile à garder secrète et à remplacer en cas d’accident, et on a plus de confiance en son procédé de sécurité car si le monde entier peut le voir, et qu’aucun chercheur, expert ou hobbyiste ne parvient à le mettre à mal, ça semble indiquer que les services secrets d’en face n’en sont probablement pas capable non plus. Et si un jour quelqu’un devait trouver un moyen de casser le chiffrement, ils seraient rapidement au courant, et pourraient s’adapter.

Vous comprendrez donc mieux pourquoi, dans le monde de la sécurité, le terme Security Through Obscurity est une sorte d’insulte désignant un système dont la philosophie est issue du siècle dernier, et qui n’a plus beaucoup sa place de nos jours.

Que Filiol prétende que garder les Bridge Relays secret corresponde à de la Security Through Obscurity reviens à peu près à dire que PGP/GPG est un système opaque, parce que la clé de chiffrement qu’on utilise pour signer/chiffrer des données n’est pas une donnée publique. Alors que, tant pour PGP/GPG que pour Tor, tout le modus operandi est publique et lisible par tous, seules les données confidentielles générées par son utilisation le sont, de la même façon qu’il ne doit pas exister un moule de la clé de votre porte d’entrée sur la place publique.
Que Filiol critique Tor pour son « opacité », alors qu’il refuse de publier le code source, ni même la moindre preuve de l’existance de son « virus », semble… pour le moins ironique 🙂

Ce fameux logiciel n’a peut-être jamais fonctionné ni même existé, mais heureusement pour Filiol, cette étape est absolument futile étant donné — je le répète — que n’importe qui ayant lu mon article, ou la page wikipedia de Tor aura compris qu’en possédant au moins le premier et le dernier relais d’un circuit Tor, il n’est pas nécessaire de le déchiffrer pour en dévoiler le contenu.

Malheureusement pour Filiol, c’était la seule et unique partie de l’attaque dont il est l’auteur.

Mais au final, c’est tout de même une attaque qui pourrait, dans certains cas théoriques, être efficace, donc pertinente, n’est ce pas ?

Absolument, si demain quelqu’un rédige une recherche scientifique dans le domaine médical, et prétend avoir découvert un tout nouveau moyen révolutionnaire de tuer quelqu’un : « lui planter un tournevis dans la gorge ! », et qu’on ignore le fait que depuis au moins 3500 ans l’homme a appréhendé le fait que « truc pointu dans la gorge = mort », alors oui, le travail de Filiol peut être considéré comme « original » et « non-trivial ».

Pour le reste d’entre nous, de la communauté scientifique, et d’experts en sécurité informatique, ça fait bientot 10 ans qu’il est communément accepté que « premier et dernier relais compromis = anonymat compromis ».
Que ça soit en écoutant les interfaces réseau, en altérant le fonctionnement du binaire chargé en RAM, en branchant le cache du CPU à un fax ou en apprenant à un singe à crier à voix haute ce qui passe par de la fibre optique connectée à son nerf optique, ce n’est plus que de la sémantique autour du fait que ce cas de figure a déjà été décrit et documenté en 2003 quand le projet est devenu public pour la première fois.

Courte analyse d’un fiasco académico-médiatique

Que s’est-il passé ? Comment en est-on arrivé là ?

De mon point de vue, l’explication la plus simple, et probablement pas la plus flatteuse, serait que Filiol avait pour responsabilité de diriger un travail de fin d’étude assigné à quelques uns de ses étudiants.
Filiol leur aura donné comme sujet « mettre à mal l’anonymat de Tor », comme beaucoup de chercheurs outre-atlantique le font eux aussi. Car je le rappelle, c’est un aspect important d’un procédé de sécurité que d’être en permanence scruté par des chercheurs, mathématiciens ou informaticiens, afin d’être certain que personne n’a encore trouvé une faille remettant la technologie en question.

Toujours selon moi, ces étudiants guidés par Filiol auront modestement mis au point une méthode imparfaite pour lister une partie des Bridge Relays, et probablement pensé ou mis au point une méthode pour exploiter différemment le cas de figure où on a déjà pris le contrôle des relais importants d’une communication Tor.

En soi, ce n’est pas un mauvais travail de fin d’études, c’est même certainement intéressant à traiter, et ça a certainement appris beaucoup de choses à ces jeunes étudiants sur ce qu’est Tor, et comment rédiger un travail académique.

Là où les choses ont mal tourné, c’est tout d’abord que Filiol ne semble pas avoir corrigé ses étudiants quant à la validité du référencement des Bridge Relays, n’ayant vraissemblablement pas lu la documentation fournie par les développeurs de Tor, qui détaille la stratégie de distribution de relais. D’où la détection de 128 Bridges alors qu’il est publiquement anoncé qu’il y en a entre 500 et 600 actifs en permanence.

Ce sont des choses qui arrivent, surtout quand un directeur de recherche se contente de pointer du doigt et de lire en diagonale le travail de ses chercheurs/étudiants, sans se documenter sur la nature du sujet, ni accompagner attentivement ce processus.

Ce qui n’est pas admissible, cependant, c’est que Filiol s’approprie l’entièreté du travail, ne citant ses étudiants qu’épisodiquement, parlant à leur place, et décide de porter tout cela aux médias comme s’il s’agissait du nouveau bug de l’an 2000, ou plus récemment de la faille SSL de debian.
Tout dans ce travail crie « travail formateur de fin d’études fait par de jeunes étudiants », aucune part de ce travail n’est originale, spécialement pertinente, ni méritoire de la moindre attention médiatique. Ce n’est pas son objectif. Son objectif est de servir à des étudiants à s’introduire au monde académique de la recherche, en s’attaquant à un morceau de viande pas trop difficile à mâcher, sans être complètement trivial non plus.

Tous les travaux de recherche ne sont pas bons à présenter au Brésil, au Japon, et encore moins en Allemagne au CCC, peu importent les pressions d’investisseurs, peu importe le contexte malsain du monde de la recherche en France, peu importent les tensions dont Filiol a pu faire l’object pour « sortir un papier médiatisable pour générer un peu de prestige, de visibilité dans les médias, d’argent ».
Filiol aurait du garder la tête froide, et reconnaître que ce n’est pas avec ce travail académique là qu’il relancera sa carrière, redorera la moindre réputation du moindre établissement, ni rendra le moindre service à ses étudiants dont il va présenter sur trois continents différents les fautes qu’il n’a pas su corriger.

Je n’ai rien contre le personnage de Filiol, et plusieurs de mes amis m’ont répété qu’il avait fait d’autres choses intelligentes à coté, qu’il n’était ni complètement stupide, ni complètement incompétent.
Cependant, dans ma vision du monde, le meilleur moyen d’avoir un écosystème scientifique, intellectuel et académique sain, c’est de gifler les gens compétents avec les inepties qu’ils produisent, jusqu’à ce qu’ils les corrigent ou les retirent.

Ainsi, on augmente la proportion de signal/bruit, et on pousse des individus brillants dans leur domaine à donner le meilleur d’eux-même, ou de s’améliorer.

To be continued ?

Oct 292011
 

Dans mon article précédent, j’évoquais l’empressement de la presse francophone à relayer et appuyer le message selon lequel Tor serait compromis.
J’ai tenté d’expliquer pourquoi une telle déclaration n’est pas à faire à la légère, les répercussions qu’auraient une vulnérabilité réelle et intrinsèque au réseau Tor, et pourquoi tant de chercheurs s’intéressent à cette technologie de si près.

J’ai également voulu apporter un regard critique sur les allégations faites, et la réalité technique de ce que Eric Filiol, directeur de recherche à l’ESIEA, prétend avoir découvert comme faille.

Cet article se positionne dans la continuité directe dudit article précédent, et abordera cette fois-ci la seconde « faille » que Filiol dit avoir découvert dans Tor, à savoir rediriger le traffic Tor de cibles potentielles vers des relais compromis, en créant de la congestion dans les autres relais, et rendant les relais « sains » indisponibles.

avertissement

Comme dans mon article précédent, je vous conseille vivement d’avoir lu mon article déblayant des notions fondamentales du fonctionnement de Tor.

Ces notions ne sont pas bien complexes, mais sont nécessaires à comprendre la réalité de ce que Filiol et son équipe avancent.

Mon but est que, après avoir lu mes articles, chacun puisse débattre de la fiabilité du reseau Tor, et de la réelle menace que l’attaque de Filiol constitue. Pour cela, il est indispensable que chacun ait compris la technologie sous-jacente. Ne serait-ce que dans son principe général.

J’en profite d’ailleurs pour vous rappeller qu’il en va de même pour toute technologie de sécurité informatique : votre confiance en celle-ci doit être proportionnelle à votre compréhension de la technologie.

Ne vous fiez pas à une technologie parce qu’un expert vous dit qu’elle est fiable. Fiez vous à une technologie parce que vous comprennez qu’elle est suffisamment solide pour l’utilité que vous en faites.

Les experts se trompent, ne sont pas toujours objectifs, et sont parfois opaques.
S’il en était autrement, ces articles n’auraient pas besoin d’exister.

Tor et les relais compromis

Comme décrit dans mon article explicatif de Tor, Tor est une technologie reposant sur aux minimum 3 relais choisis au hasard dans le réseau Tor. Les messages que vous voulez envoyer à une destination sont chiffrés autant de fois qu’il y a de relais, et chaque relais ne peut déchiffrer que le niveau de chiffrement lui étant destiné.

Source (vous) -> Relais1 -> Relais2 -> Relais3 (en clair) -> Destination (votre correspondant)

À chaque fois qu’un relais reçoit l’information, il la déchiffre avec sa clé, et passe le résultat au relais suivant, qui fera de même, jusqu’à ce que Relais3 déchiffre le dernier niveau de chiffrement, et envoie l’information en clair à la destination.

Ceci est fait pour qu’il soit impossible à aucun des trois relais de connaître à la fois le contenu, la destination et l’origine de l’information (vous).

C’est donc pour cela qu’on dit que Tor permet d’utiliser des relais pour vos communications, sans avoir à faire confiance en ces relais. Même si un de ces relais est en fait un mouchard, s’il est à la position du Relais1 ou du Relais2, il ne peut pas déchiffrer le message entièrement, et n’a donc aucune idée ni du contenu du message, ni de sa destination réelle (que seul Relais3 découvrira quand il déchiffrera le message avec sa clé), s’il est à la place de Relais3, il connaitra le contenu et la destination, mais pas l’origine, il lui sera donc impossible de vous identifier. S’il est à la place du Relais2, il ignorera tout : le message, l’origine, et la destination.

Notez que si vous avez chiffré votre message par SSL ou autre avant de l’envoyer via Tor (en contactant un site via son adresse https:// par exemple), le Relais3 ne possèdera que cette information chiffrée par SSL, et ne connaitra donc pas le message en clair non plus.

Si vous avez compris ceci, vous verrez donc qu’aucun relais ne peut trahir l’anonymat de la communication, mais s’il arrivait qu’une même personne parvienne à corrompre au moins deux des trois relais (le premier et le dernier, en règle générale), elle pourrait connaitre qui a envoyé une information à travers Tor (le premier relais est en contact avec l’origine de l’information : vous), ainsi que le contenu de votre message (s’il n’était pas chiffré), mais surtout la destination de votre message, ces deux informations étant révélées par le 3eme relais.

Si l’attaquant ne possède que deux des trois relais, il lui faudra deviner et reconnaitre que le trafic envoyé du Relais1 au Relais2 (qu’il ne possède pas), et reçu du Relais2 au Relais3 est bien le même (Rappelez-vous, ces données ont été déchiffrées par le Relais2 entre-temps, les paquets d’information ne sont donc plus les mêmes)
En faisant des attaques statistiques, il est possible de reconnaître le trafic assez effectivement, contrairement à ce que je pensais en rédigeant le premier article.

Si l’attaquant possède les trois relais, la communication peut être tracée de vous vers votre correspondant, et de votre correspondant à vous avec une probabilité d’exactement 100%.

En d’autres termes, ces deux scénarios entrainent une défaite totale de l’anonymat.

C’est donc le vecteur d’attaque le plus couramment évoqué pour corrompre l’anonymat d’une communication Tor, mais également le scénario que le logiciel de routage doit éviter à tout prix.
Pour ce faire, l’équipe de Tor doit s’assurer que le choix des relais à travers lesquels faire passer la communication dans le réseau Tor soit bel et bien déterminé au hasard, et qu’il y en ait assez pour que la probabilité d’en choisir 2 ou 3 au hasard parmi des relais mis en ligne pour servir de « pièges » (honeypots ou mouchards) soit extrêmement faible.
Pour renforcer le tout, ils ont également introduit la notion d’Entry Guard, diminuant drastiquement la probabilité de choisir un Relais1 qui ait été compromis par la même personne que le Relais3.

Vous l’aurez compris, tracer une route pour vos communications à travers des relais « sains » est un enjeu principal ici, si pour une raison ou une autre ce choix de relais se trouve compromis, Tor est battu.

Si une notion de ce bref rappel vous échappe ou n’est pas claire, tout ceci est détaille dans mon article explicatif de Tor. N’hésitez pas à aller le lire, au risque de me répéter, si tout ceci n’est pas limpide, lire la suite de l’article ne vous apportera rien.

Comment forcer une route compromise

À ma connaissance, il n’existe que trois procédés pour y arriver.

truquer le choix des relais au niveau du client

C’est l’approche la plus directe et la plus évidente.

Elle consisterait à altérer le fonctionnement du logiciel Tor installé sur votre machine, et de truquer son choix de relais censé être aléatoire, afin qu’il choisisse toujours une route composée de relais compromis par l’attaquant, même s’il sont extrêmement peu sur le réseau.

Ceci peut être accompli de deux manières :

  • infecter votre ordinateur par un virus spécialement conçu pour affecter le comportement de Tor
  • Ceci permettrait à l’attaquant de prédéfinir le tracé de vos communications à travers Tor, mais également d’observer ce que vous envoyez à travers Tor avant que la communication ne soit chiffrée. C’est donc un échec et mat immédiat.

    Gardez un système à jour, et si possible, n’utilisez pas Windows pour des communications « sensibles » 😉

  • vous fournir une version altérée du logiciel Tor
  • Ce procédé-ci consisterait à vous fournir une version du logiciel dont la sélection des relais ne soit pas aléatoire mais fixée à des relais compromis par la personne vous fournissant le logiciel. Cela semble impensable, mais c’est en réalité réalisable.
    Pour s’en prémunir, vérifiez toujours, absolument toujours le checksum du logiciel Tor que vous téléchargez avant de l’installer. Ce checksum est une valeur de vérification de l’intégrité du fichier affichée sur le site, assurant que le fichier n’a pas été altéré ou remplacé pendant que vous le téléchargiez. (attaque Man-In-The-Midle).
    Vérifiez également que le site duquel vous avez récupéré le fichier et vérifié le checksum n’est un une falsification (phishing), à l’aide de certificats.

compromettre tous les relais Tor

Si tous (ou plus de 80 ou 90%) des relais Tor sont compromis par une même personne, peu importe si le client choisit bien des relais au hasard dans le tas, la probabilité de tracer une route composée de deux ou trois relais compromis devient énorme.

Ceci dit, les statistiques publiques du réseau Tor nous révèlent qu’il y a actuellement plus de 2500 relais tor différents en ligne. Il n’est donc pas réalisable, en pratique, d’espérer compromettre 2000 à 2300 de ces relais sans que personne ne s’en aperçoive, ni d’espérer en mettre 10 000 compromis en ligne du jour au lendemain pour contre-balancer la proportion, sans que cela paraisse suspect.

Cette dernière hypothèse est d’autant plus improbable que Tor ne route pas le trafic en fonction du nombre de nœuds en ligne, mais bien de leur capacité. Mettre en ligne 10 000 nœuds tor pour espérer que Tor établisse souvent des routes entières composées de deux à trois nœuds compromis ne suffirait pas, il faudrait mettre en ligne l’équivalent de plusieurs fois la bande passante totale du réseau.

C’est à la fois invraisemblable, et très peu discret.

diminuer le nombre de relais tor présents sur le réseau

Comme mis en évidence dans le point précédent, ce qui fait la force de la sélection aléatoire de relais Tor parmis les nœuds présents sur le réseau, c’est leur nombre.

Leur nombre garantit qu’il sera toujours très difficile d’en compromettre la majorité. La présence de plusieurs nœuds ayant de très grosse bande passante garantit qu’il sera toujours relativement difficile et couteux de parvenir à déséquilibrer la proportion de bande passante passant par des relais « sains » et celle passant par des relais « compromis ».

Cependant, un équilibre est un compromis, et tout compromis, comme tout équilibre, peut être renversé si un effort suffisant ou les conditions le permettent.
Le compromis est jugé efficace si les conditions pour le déséquilibrer sont suffisamment difficiles à mettre en place.

L’approche la plus audacieuse, mais aussi la plus utopique, est donc de chercher un moyen de réduire le nombre de relais en ligne. Soit en les déconnectant du réseau, soit en les surchargeant.

C’est le vecteur d’attaque que Filiol semble avoir choisi.

Le packet spinning

Le « Packet Spinning » est une des méthodes que Filiol présente dans son attaque.

Derrière ce nom barbare se cache en réalité un procédé plutôt ingénieux.

l’établissement d’une route Tor

Lorsqu’une route Tor est décidée, elle est créée par incrément.

Le Client décide qu’il utilisera les nœuds Relais1, Relais2 et Relais3 pour sa route, choisis au hasard dans le réseau Tor.
Une fois cette sélection faite, le Client contacte le Relais1, et effectue un échange de clés publiques (afin de pouvoir envoyer des données chiffrées que seul Relais1 pourra déchiffrer)

Ensuite, le Client envoie à Relais1 un paquet spécifique appellé « Extend Cell », qui sert à « rallonger la route » d’une unité. Ce paquet contient les coordonnées du Relais2, pour que Relais1 sache que pour cette connexion établie, il devra tout acheminer vers Relais2.

Le Client envoie ensuite un second paquet qui rallongera la route d’un intermédiaire, ce paquet passera par Relais1, et sera lu et interprété par Relais2, qui connaîtra désormais les coordonnées du Relais3.

Une fois la route complètement définie, la transmission vers le correspondant peut commencer, et les paquets de cette connexion passeront toujours par ce même itinéraire.

l’attaque

L’attaque dite par Packet Spinning consiste à exploiter le fait qu’il est virtuellement possible de rajouter des HOPs (relais) à l’infini, et de mettre plusieurs fois les mêmes dans une même route.

Ceci a pour résultat de faire circuler un même paquet d’information dans une boucle (presque) infinie, et créer une charge énorme sur les relais désignés.

Pour illustrer, voici à quoi ressemble une route créée par un client Tor « sain » :

Client -> Relais1 -> Relais2 -> Relais3 -> Destination

et voici à quoi ressemblerait la route d’une attaque par Packet Spinning :

Client -> Relais1 -> Relais2 -> Relais3 -> Relais4 -> Relais1 -> Relais3 -> Relais1 -> Relais5 -> Relais3 -> Relais1 -> Relais2 -> Relais3 -> (…)

On voit par exemple que les Relais1 et Relais3 apparaissent plusieurs fois, et feront donc circuler plusieurs fois le même paquet, sans s’en douter, puisque celui-ci change à chaque passage de Relais (vu qu’il y est déchiffré)

Concrètement, si on établit une route circulaire où chaque relais apparaît 100 fois, pour 1mo de données envoyées à travers cette route, chaque relais devra traiter 100mo.

On se rend bien compte qu’il s’agit ici d’un moyen extrêmement efficace de surcharger des pans entiers du réseau Tor avec seulement une infime fraction de la bande passante que les relais possèdent, de par la facilité de la retourner contre-eux.

la parade

C’est ici que ça se corse.

Pour faire court, il n’y en a pas d’efficace.

L’attaque a cependant été rendue plus difficile à mettre en place par les développeurs de Tor.

En effet, les paquets de « rallongement de route » ne sont pas chiffrés. Du moins pas entièrement.
Les premiers relais de la route, aussi appelés Entry Guard, savent qu’ils sont les premiers de la route. Il est donc de leur responsabilité de compter les requêtes de rallongement de route qui passent. S’ils en voient plus de trois passer, dont celle qui leur était adressée, ils coupent la connexion immédiatement, afin d’éviter des routes à rallonge qui pourraient surcharger tout le réseau.

Ce procédé n’est malheureusement pas infaillible.

Il est effectivement possible d’utiliser « Tor dans Tor » : créer une route « normale et saine » Tor, à travers laquelle on fera passer les « Extend Cells ». Ces requêtes ne passeront donc par aucun Relais en clair avant d’arriver au dernier relais de la route à rallonger.
C’est plus fastidieux, mais c’est possible.

Il n’existe actuellement pas de parade absolue au Packet Spinning dans le protocole Tor, principalement parce que c’est un défaut intrinsèque à tout procédé d’anonymat par le chiffrement dans plusieurs relais.

Cependant, ce genre d’attaque ne passerait pas longtemps inaperçue, étant donnée sa nature. Il ne faudrait pas plus de quelques heures pour que les premiers relais se mettent à filtrer les origines de l’attaque, réduisant exponentiellement son efficacité au fur et à mesure.
Cette mesure n’est pas absolument efficace non plus, vu la difficulté pour les relais d’identifier l’origine des requêtes reçues (ce qui est le principal avantage de Tor, il me semble nécessaire de le rappeler)

En clair, il serait bel et bien possible pour une organisation ayant assez de moyens à disposition de sérieusement perturber le transit du réseau Tor pendant plusieurs heures, voir même forcer le réseau à s’écrouler sur lui-même et le rendre inopérant pendant plusieurs heures.

une parade ? mais Filiol n’a pas encore révélé les détails de son attaque !

Et c’est là que le bas blesse.

Si cette attaque est réellement ingénieuse, et un des seuls moyens connus de réellement entamer la disponibilité de Tor pendant un intervalle de temps relativement important, Filiol ne l’a absolument pas inventé, ni même mise au point.

Cette attaque a en réalité premièrement été décrite en septembre 2008 par Vasilis Pappas, Elias Athanasopoulos, Sotiris Ioannidis, et Evangelos P. Markatos, lors du 11ème Information Security Conference (ISC 2008).

Ceux voulant lire les détails de cette attaque astucieuse et très intéressante peuvent trouver l’étude ici.

Les lecteurs informés ou attentifs auront remarqué que j’ai légèrement simplifié le principe de l’attaque par souci de simplicité (notamment la nécessité d’utiliser un Entry Guard compromis)

Eric Filiol ayant la fâcheuse tendance de déclarer qu’il est le premier académique au monde à avoir abordé Tor en tant que « réseau » et d’avoir « mis au point » une attaque l’exploitant en tant que tel, ferait bien de citer ses sources lorsqu’il présentera « son » attaque les 29 et 30 octobre à São Paulo lors de sa conférence « Hackers to Hackers ».

Il est déjà inquiétant de voir qu’il prétend être le seul a aborder Tor en tant que réseau (ignorant plus d’une dizaine d’autres travaux, j’y reviendrai dans la prochaine et dernière partie de mon article), mais il serait assez grave de sa part de prétendre ignorer l’existence des travaux de recherches de ses confrères en 2008 dont il réutilise la terminologie de « Packet Spinning », ou du moins de ne pas préciser très clairement que cette attaque n’est pas de lui, et de revoir ses déclarations. En effet, l’étude dont il recycle les résultats et l’attaque est indéniablement une étude étudiant et attaquant Tor en tant que « réseau » et non plus « un nœud à la fois », trois années entières avant que Filiol vienne déclarer être le premier sur la balle.

S’il ne veut pas se retrouver avec des échardes de plagiat enfoncées dans son CV ainsi que sa page Wikipedia, il ferait donc bien d’être beaucoup plus prudent lors de ses présentations et déclarations à venir.

Est-ce que ça « casse » Tor ?

En théorie, ça le fragilise. En réalité, pas exactement.

Tout d’abord, même en supposant qu’une organisation assez organisée et ayant suffisamment de ressources parvienne à mettre hors service assez de nœuds, tout en mettant en ligne assez de nouveaux nœuds assez dispersés géographiquement pour ne pas être tous blacklisté par les gestionnaires de nœuds Tor attentifs, et que les nœuds Tor compromis soient assez nombreux et aient assez de bande passante pour être privilégiés lors de la création d’initéraires au sein du réseau Tor… ils ne feraient que se mettre hors-service.

En effet, même en supposant qu’une organisation parvienne à mettre tout ceci en place, elle devrait alors faire face à tout le débit supporté par l’infrastructure Tor « intacte » avant de tomber, qui cherchera à se re-router par les seuls nœuds restant en ligne. Si ce scénario est celui recherché par l’attaquant, et garantirait un haut taux de communication passant intégralement par des relais compromis, ces relais compromis receveraient tellement de requêtes en un intervalle si court de temps que l’issue la plus probable d’un tel procédé serait une surcharge colossale des nœuds compromis, probablement au point de ne même pas arriver à établir une seule route à travers les nœuds compromis (l’établissement de la route ayant un timeout de 60 secondes).

Pour que cette attaque soit efficace, il faudrait que l’attaquant déploie au moins une, voire deux ou trois fois la bande passante totale des 2500 nœuds présents avant l’attaque, sachant que bon nombre d’entre-eux ont une capacité de bande passante abyssale.

Conclusion

Nous avons donc vu que si cette attaque est redoutable pour perturber le bon fonctionnement du réseau Tor pendant un intervalle plus ou moins long avec relativement peu de ressources, il ne semble pas applicable de façon réliste à une un déploiement en situation réelle.

Il reste néanmoins que ce procédé fonctionne parfaitement en conditions simulées avec des proportions de bande passante à contrôler beaucoup plus équilibrées.

« Équilibré » est ici le mot clé.
La meilleure parade à cette attaque reste dans le fait qu’il serait démesurément couteux et complexe de mettre en place une infrastructure capable a la fois de faire passer assez de transit pour que le réseau privilégie ceux-ci, et de tenir la charge. (compte tenu du nombre de nœuds légitimes présents sur le réseau, de la capacité très importante des plus importants d’entre-eux, et du trafic constant circulant à travers Tor et qui cherchera à se re-router sur ces nouveaux nœuds, les surchargeant)

Cette attaque, comme la précédente, ne fait que nous confirmer la nécessité d’assurer la résistance du réseau Tor et sa fiabilité en hébergeant et en ayant le plus de nœuds possible sur le réseau, et si possible une bande passante conséquente pour qu’il soit encore plus difficile de renverser la balance vers un sous-réseau malicieux.

De plus, j’insiste sur le fait que pas le moindre aspect de l’attaque à laquelle j’ai ici consacré un article entier, et plus de 3500 mots, n’est issue d’Eric Filiol dans la moindre mesure possible.
Tout ceci a été décrit et présenté en 2008, plus de trois années entières avant que Filiol ne déclare être le premier à aborder Tor en tant que réseau dans une attaque, ce que —il me semble— cette attaque fait déjà.

Pas de quoi remettre en question la fiabilité du réseau Tor ici, donc, si ce n’est avoir une vision plus précise de ses limitations, et du fait qu’il est plus facile à perturber qu’on le pensait il y a quelques années.

Je conclurai donc en disant que NON, ce second « tiers d’attaque » ne « casse » toujours pas Tor, et que NON, ceci n’est toujours pas un exploit méritant ni publication académique, ni battage médiatique.

Cet article en trois parties se conclura dans les jours qui viennent avec son épilogue, décrivant cette fois ci le dernier et plus flou des aspects de l’attaque de Filiol, ainsi qu’un point fait sur la crédibilité de son auteur.

Oct 242011
 

UPDATE : Il est intéressant de noter que Filiol prétend avoir recensé en tout 181 « Bridges » Tor avec son procédé, alors que les statistiques publiques du réseau montrent qu’il y en a au moins 500.

Eric Filiol est un expert français en sécurité informatique, spécialisé en virologie.
S’il a un CV et un parcours impressionnants, vous avez très certainement entendu parler de lui récemment dans un des nombreux articles où il prétends avoir brisé la fiabilité de la technologie d’anonymat Tor.

« La confiance dans le réseau d’anonymisation Tor est ébranlée »

C’est le titre qu’on a pu lire dans bon nombre d’articles de blogs, de sites d’actualités, ou de tweets.

Le fond de l’histoire est donc qu’un groupe de chercheurs français pense avoir démontré que le réseau Tor est vulnérable, peu fiable et est dangereusement indigne de la confiance qu’on lui porte.

Pour appuyer leurs déclarations, ceux-ci — Eric Filiol en tête — présenteront une démonstration de leur attaque le 29 et 30 octobre à São Paulo dans le cadre de la conférence « Hackers to Hackers ».

Si aucun des rédacteurs d’actualité, ou de blogs, ne semblent avoir voulu attendre la démonstration pour mesurer la pertinence des déclarations faites, je vais en faire de même, et proposer mon humble analyse préliminaire des propos tenus par Filiol jusqu’ici.
Je vais donc prendre le temps de détailler le contexte de la nouvelle, puis de méthodiquement expliquer en quoi les attaques de Filliol consistent une par une en faisant le point sur leur réelles implications pour la sécurité du réseau Tor, puis enfin d’évaluer la crédibilité de Filiol et de ses propos.

Les déclarations.

De l’article d’itespresso dont le contenu technique est plus qu’imprécis, il ressort plusieurs points principaux :

  • Avec son équipe, il aurait mis au point un « algorithme de scripts très complexes » pour dresser une liste des Entry Nodes (Bridges) Tor censés être secrets.
  • Avec son équipe, il aurait trouvé un moyen de déterminer à l’avance, et de forcer la route Tor qu’un client établirait, le forçant potentiellement à constituer une route de 3 relais Tor compromis.
  • Toujours à l’aide de son équipe, il serait arrivé au constat qu’une part importante de relais tournent sous des versions vulnérables de Windows, et aurait mis au point un virus capable de percer le chiffrement de Tor.

Ces trois déclarations peuvent se résumer en une seule phrase, lancée par Filiol lui-même, et qui à elle seule devrait provoquer un raz-de-marée dans l’univers de la sécurité informatique à l’échelle mondiale :

« Nous sommes parvenus à briser à la fois l’anonymisation et le chiffrement (…) Ce qui nous permet d’accéder à la totalité des informations claires. »

Pour ceux que ça intéresse, Filiol a illustré d’avantage ses déclarations dans une série de 3 vidéos publiées sur Dailymotion, passées relativement inaperçues. Elles n’apportent que peu d’informations supplémentaires, si ce n’est qu’elles sont plus claires que l’article d’un point de vue technique.
Partie 1 / Partie 2 / Partie 3

Les implications.

Pourquoi une telle déclaration est-elle si importante ?

Tor est un protocole et un outil permettant de garantir un anonymat extrêmement solide à vos communications sur internet. Il a été développé — comme bon nombre d’outils de sécurité informatique, y compris internet lui-même — dans un premier temps par l’armée navale américaine et est aujourd’hui un protocole et un logiciel libre.
Existant depuis 2002, son utilisation est largement répandue au sein des forces armées, des journalistes, des entreprises, des activistes ou blogueurs dont les idées et propos dérangent dans des pays où la liberté d’expression est à géométrie variable, ou des citoyens voulant simplement préserver leur vie privée.

Il est également dit que Tor aurait joué un grand rôle dans la diffusion d’informations lors du printemps arabe, où internet a été régulièrement victime de filtrages agressifs.

En un mot, c’est une technologie extrêmement utilisée, et sollicitée, sur laquelle beaucoup de gens reposent pour garantir leur anonymat, leur intégrité physique, ou même leur vie.

Annoncer que Tor est vulnérable, cassé, perméable ou qu’il n’est pas digne de confiance met des millions d’utilisateurs à travers le monde en danger potentiel, et impliquerait de revoir profondément la façon dont tous ces individus doivent garantir l’anonymat de leurs communications.

À juste titre, cette technologie est donc continuellement dans le collimateur de tous les experts en sécurité informatique du monde, ou du moins une quantité impressionnante de chercheurs, de doctorants, d’experts et de développeurs, une moitié d’entre-eux cherchant à découvrir la faille dans cette technologie qui leur permettra d’entrer dans l’histoire, et de marquer la fin d’une ère dominée par Tor, et l’autre moitié cherchant à améliorer cette technologie pour la rendre moins sensible aux divers moyens de blocage mis en place par des gouvernements totalitaires, et garantir au mieux la sécurité des citoyens s’abritant derrière ce bouclier technologique.

Depuis 2002, cette technologie est donc scrutée attentivement, au point de la connaître par cœur, d’en avoir identifié les forces et les faiblesses.
Depuis 2002, cette technologie reste inviolée, même si dans certains cas extrêmement improbables et pessimistes, il est possible de la fragiliser, son principe reste le plus solide et le plus fiable que l’on connaisse, et ce depuis 10 ans.

Déclarer avoir cassé Tor est probablement pour le monde de la sécurité informatique aussi éloquent que déclarer avoir prouvé que P = NP pour le monde des mathématiques, ou d’avoir cassé le chiffrement AES pour le monde de la cryptographie (ce qui est ironique dans notre cas, nous verrons plus tard pourquoi)

Comme pour ces deux analogues, régulièrement, un individu annonce avoir décroché le saint Graal, et le monde entier retient son souffle en vérifiant ses résultats, et de la même façon, en général ces résultats se révèlent soit inexacts, soit grandement exagérés.

Récapitulatif : Comment fonctionne Tor ?

Mon article va s’intéresser aux détails techniques revendiqués par les déclarations de Filiol et son équipe, et va donc analyser en profondeur le fonctionnement de la technologie Tor.
Si j’espère parvenir à toucher un public le plus large possible, et initier par la même occasion ceux qui ne connaissaient Tor que de nom jusqu’ici, pour pleinement comprendre et juger les propos qui vont suivre, il est impératif d’avoir lu mon précédent article au sujet de Tor, où j’explique le plus simplement et de la façon la plus imagée possible quel est le raisonnement derrière la technologie Tor, et quelles sont les garanties qui font sa solidité et sa fiabilité.

J’insiste : si vous n’êtes pas intimes avec la mécanique derrière Tor, lisez mon article « Some people just want to see the world TOR » (rédigé en français, malgré le titre)

Une fois cela fait, nous pourrons analyser ensemble les déclarations de l’équipe de Filiol.

Lister les Entry nodes (Bridges) secrets de Tor.

Cet article en plusieurs parties abordera ce point ci en premier, alors que les parties qui suivront approfondiront chacune une autre problématique soulevée par Filiol, par souci de clarté.

Pour vous rafraîchir la mémoire : un bridge est un point d’entrée au réseau Tor. Ils existent car la liste des points d’entrée au réseau Tor est connue et publique, beaucoup de pays oppresseurs sont donc souvent tentés de bannir toutes ces IP, afin d’empêcher leurs citoyens d’accéder au réseau Tor. Les Bridges sont donc des points d’entrée au réseau Tor qui ne sont pas répertoriés dans les listes publiques.

Où trouver des Bridges quand on en a besoin ?

La question est donc, s’ils sont si secrets, comment des dissidents peuvent-ils obtenir leurs coordonnées lorsqu’ils en ont besoin pour accéder au réseau Tor ?

La réponse est que par défaut, chaque fois qu’un Bridge est créé, il communique ses coordonnées, non pas aux listes publiques, mais à un serveur Tor qui les répertorie sans en révéler la liste à qui que ce soit.
Quand quelqu’un a besoin de joindre Tor, il n’a qu’à envoyer un mail à l’adresse bridges@torproject.org avec pour seul message « get bridges ». Le serveur de Tor choisira alors 3 Bridges aléatoirement dans la liste et les lui enverra par mail.
De cette façon, les gens qui en ont besoin peuvent obtenir des Bridges sans qu’il soit possible d’accéder à la liste complète d’un coup, ce qu’un pays oppresseur pourrait faire afin de bannir ces Bridges aussi facilement que les points d’entrée diffusés sur les listes publiques.

Quelle est l’attaque proposée par Filiol, alors ?

Après avoir lu le point précédent, il ne faut pas être Directeur du centre de recherche de l’ESIEA pour comprendre qu’en envoyant assez de demandes de nœuds Tor à d’adresse mail bridges@torproject.org, il finira, trois par trois, par nous envoyer la liste complète des Bridges, petit à petit.

Pour compliquer cette tâche, l’équipe de Tor a mis en place un filtre qui ignore toute demande ne provenant pas de gmail, yahoo, ou du MIT, et n’autorise qu’un certain nombre de requêtes pour chaque IP.
Le but ici est de compliquer la tâche d’un organisme voulant tous les répertorier pour les bannir : il n’est jamais revendiqué qu’il est impossible d’abuser de ce système et de garantir que personne ne créera 50 adresses gmails et passera deux mois à envoyer des mails en boucle au serveur pour épuiser sa liste. L’équipe de Tor rend juste ce processus suffisamment laborieux et lent pour que, le temps qu’une entité ait répertorié la majorité de la liste de Bridges « secrets », d’autres auront été rajoutés à la liste, probablement plus rapidement qu’il n’est possible d’en dresser la liste, en pratique.

L’ « attaque » de Filiol ne semble pas être plus élaborée que ça.
En effet, ce qu’il qualifie fièrement d’ « algorithmes de scripts très complexes » (sic.) mis au point par son équipe de chercheurs, n’est vraisemblablement rien d’autre qu’un petit programme ne dépassant probablement pas les quelques dizaines de lignes de code, à la portée de n’importe quel lycéen de 16-17 ans s’intéressant à la programmation en Perl, en une après-midi de travail.

Si vous ne me croyez pas, allez voir un programmeur de votre entourage, pas nécessairement expert en sécurité informatique, et demandez lui combien de temps et de lignes de code il lui faudrait pour automatiser l’envoi de mails, et dresser une liste des IP contenues dans les réponses reçues.
Pour un informaticien de profession, ça ne devrait pas prendre plus d’une heure de travail, même s’il n’est pas diplômé d’une École d’Ingénieur réputée.

À vrai dire, c’est un dispositif plusieurs fois moins complexe que celui nécessaire pour envoyer des volées de spams aux adresses mails récupérées grâce à google, qui inondent probablement le répertoire « Indésirables » de votre boite.

Pas de quoi crier à l’exploit, en soi.

Est-ce que ça « casse Tor » ?

Pas vraiment, non.

Comme décrit plus haut, avec assez de patience, il est évident qu’il est possible de répertorier les éléments de cette liste, et d’en bannir une partie. C’est un risque calculé par l’équipe de Tor, qui préfère avoir un moyen facile de distribuer des Bridges Tor à quiconque en fait la demande, quitte à ce que certains organismes passent des semaines à en demander pour espérer en bannir une partie.

Tout d’abord, comme je l’ai également évoqué plus haut, la tâche a suffisamment été compliquée pour espérer que le temps qu’une entité malveillante ait fait le tour de la liste, d’autres bridges aient été créés et injectés dans cette liste, rendant la « blacklist » établie caduque.

Ensuite, même s’il existait un moyen de récupérer tout le contenu de cette liste assez rapidement pour en bannir tous les éléments, Filiol semble ignorer qu’il est parfaitement possible de créer un Bridge Tor « secret » qui ne sera même pas annoncé sur la liste confidentielle de Tor.
En gros, ce Bridge ne sera connu que par la personne qui le crée, et donc dit « privé ». Libre à lui ensuite de le communiquer de façon confidentielle à des gens de confiance en ayant besoin, se l’échangeant entre cercles de confiance afin d’éviter qu’il ne tombe aux mains des censeurs.

C’est un moyen de diffusion un peu plus laborieux pour ceux en ayant besoin, mais c’est la démarche logique et justifiée dans un pays où des crimes de guerre sont commis à chaque coin de rue, et où les médias et journalistes sont persécutés.

C’est très facile à mettre en place, et expliqué dans la documentation de Tor.

Il suffit de rajouter ces deux lignes dans votre fichier de configuration torrc :

BridgeRelay 1
PublishServerDescriptor 0

La première activant le mode « Bridge » de votre logiciel Tor, et la seconde demandant que votre Bridge ne soit communiqué à personne, pas même la fondation Tor.

Conclusion

Il n’y a donc ici absolument pas lieu de s’inquiéter, et encore moins de crier avoir « ébranlé Tor ».
Non seulement il serait laborieux de dresser la liste des Bridges Tor présents dans la liste détenue par Torproject.org en espérant qu’entre-temps il n’y en ait pas eu de nouveaux ajoutés et qu’il faille en refaire tout le tour, mais en plus il en existe bon nombre qui ne sont listés nulle part, et qui ne peuvent pas être détectés aussi facilement.

Tout ce que Filiol fait ici, c’est nous rappeler pourquoi il est important de créer suffisamment de Bridges Tor, et d’en avoir quelques uns de « privés » à envoyer à des contacts de confiance se trouvant victime de persécution, par exemple.

Si possible, faire utiliser une nouvelle adresse ip à vos Bridges de temps en temps n’est pas une mauvaise idée, histoire de renouveler la liste « secrète » des nœuds répertoriés.

Ce que Filiol dit avoir « découvert » ici n’a aucune répercussion sur la confiance qu’on peut avoir en le réseau Tor, n’étant pas une méthode prétendant compromettre l’anonymat de Tor, mais prétendant simplement simplifier son filtrage.

Contrairement aux deux autres procédés qu’il a évoqué, et qui eux prétendent réduire à néant la sécurité garantie par la technologie Tor.

J’analyserai ceux-ci dans les parties 2 et 3 de mon article, à venir dans les jours qui viennent.