Mr. Robot: Le hack du cybercafé

Salut à tous et à toutes, bande de geeks!

Depuis plusieurs semaines maintenant, beaucoup de mes amis commencent à regarder la série Mr. Robot. Cette série basée sur le Hacking et la Psychologie a pour particularité de pratiquer des hacks connus pour être réalisables dans la vraie vie.

Dans l’épisode ouvrant la première saison, Eliott se rend dans le cybercafé « Ron’s Coffee » en plein centre de New-York, et s’assoit à la table d’un homme au hasard dans la salle. Après quelques échanges de regards et l’installation d’un malaise, Eliott commence son discours.

Vous êtes Ron. Mais votre vrai nom est **** ****, vous avez changé votre nom quand vous avez acheté votre premier Ron’s Coffee Shop il y a 6 ans. […] J’aime bien venir ici parce que votre Wifi est rapide. Vous êtes l’un des rares endroits de la ville à avoir une connexion fibrée. C’est très bon. […] C’est tellement bon que ça m’a mis la puce à l’oreille… Une telle vitesse n’était pas possible sans certaines conditions. […] J’ai donc décidé de vous hacker.

i8xfjky

Et c’est à ce moment précis que tout commence. Eliott explique ensuite avoir découvert que Ron (le gérant du café) hébergeait un site illégal sur le Darknet, qu’il l’avait découvert et qu’il avait imprimé toutes les preuves pour les livrer à la police. Un vrai super héros n’est-ce pas?

Ce tour de magie étant trop beau pour être vrai, je me suis comporté en vrai petit fouineur et ai mené mon enquête afin d’avoir le fin mot de l’histoire. Comment Eliott avait-il réussi cet exploit?

Méthodologie de la série

Dans cette première partie je vais décortiquer les propos tenus par Eliott afin d’essayer de comprendre la méthode qui l’a mené à réussir ce hack.

J’ai donc commencé à intercepté tout le trafic sur votre réseau.

Dans cette courte phrase, Eliott nous explique s’être mis en position d’Homme au Milieu (Man in the Middle) sur le réseau du café. Cette attaque consiste à duper tous les appareil présents sur le réseau, et ainsi intercepter tout le traffic.

Je sais que vous hébergez un site du nom de ****. Vous utilisez le réseau TOR pour garder le serveur anonyme, vous l’avez rendu très dur à n’importe qui de le voir. Mais je l’ai vu.

Plusieurs indices nous sont donnés. « Utiliser le réseau TOR pour garder le serveur anonyme » est une affirmation très vague, mais on peut présumer que le serveur est un Hidden Service puisque c’est le seul moyen d’héberger un site sur TOR. Si Eliott a fait un scan préalable du réseau et a remarqué une machine avec le port 80 d’ouvert, NGINX configuré en Deny All, c’est que le serveur a 90% de chances d’héberger un Hidden Service.

Le protocole de Routage en Onion n’est pas aussi anonyme que vous le croyez.

Eliott avance donc connaître une faille dans le système TOR qui permettrait de désanonymiser les utilisateurs. Nous reviendront sur ce point dans un prochain article 🙂

Qui a le contrôle sur la Node de Sortie a aussi le contrôle sur tout le trafic. Ce qui fait de moi celui qui a le contrôle.

Phrase très disputée dans le monde de la cyber-sécurité. TOR utilise un schéma de routage utilisant plusieurs types de Nodes:

  • Les nodes d’entrées (qui connaissent l’IP d’un utilisateur, mais pas la destination du trafic)
  • Les nodes du milieu (qui ne font que relayer le trafic)
  • Les nodes de sorties (qui ne connaissent pas la provenance du trafic, mais seulement la destination)

Eliott nous explique donc qu’il a le contrôle d’une (ou plusieurs?) nodes de sorties. Ce qui lui permettrait d’avoir vue sur le trafic allant VERS le site illégal. Mais quel est le rapport avec le contrôle du site lui-même?

En ayant cette position, Eliott pourrait déterminer l’adresse IP du serveur, et ensuite le compromettre. Mais comment faire le lien avec le Coffee Shop? Surement en géolocalisant l’IP.

L’argument de la Node de Sortie n’a aucun sens. Certes, cela a peut-être aidé Eliott, mais la façon dont il nous l’explique nous donne à comprendre autre chose. « Avoir le contrôle sur le trafic » peut alors laisser penser que Eliott a forcé les visiteurs du site illégal à emprunter la node d’Eliott, afin de compromettre le site avec une faille de type XSS? Avec une telle attaque, il aurait pût récupérer les mots de passes Admin facilement, mais pas très discrètement.

La conversation continue tandis que Eliott montre clairement qu’il a imprimé toutes les preuves concernant le site illégal.

mr-robot-untapped-cities

Nous avons donc assez d’indices pour essayer de retracer l’attaque point par point.

Méthodologie probable

Après avoir récolté toutes ces infos, nous pouvons en conclure plusieurs hypothèses de méthodologie d’attaque. Je vais seulement présenter ici celle qui me semble la plus probable par rapport aux propos tenus par Eliott.

Voici donc le Schéma de l’attaque:

cafe

En expliquant avec des mots, ça donne ceci:

  • Eliott se connecte au réseau wifi du cyber-café
  • Il scan le réseau et découvre le site illégal
  • Il s’approprie une (ou plusieurs) node(s) de sortie
  • Il force les visiteurs du site à utiliser cette (ou ces) node(s) de sortie
  • Injection XSS
  • Récupération du mot de pass admin par XSS
  • Accès admin au site

La faille XSS permet de connaître la vraie identité du visiteur, ce qui explique comment Eliott connaît les informations personnelles du gérant du café.

Cette explication tient théoriquement la route. Pour ce qui est de la théorie, je n’ai pas trop envie de m’avancer sur le sujet, par peur de tomber dans des magouilles peu recommandables. 🙂

Conclusion

Je termine cet article en rappelant que cette série n’est qu’une fiction, et que d’essayer de comprendre le fonctionnement de l’attaque est très compliqué, compte tenu du nombre d’indications. Nous sommes donc sans le vouloir rentré dans un débat gigantesque: « TOR est-il sécurisé? » Je serais tenté de répondre directement à cette épineuse question, mais je préfère garder le suspens pour u prochain article.

Je n’ai plus qu’à vous donner rendez-vous à la prochaine, et n’oubliez pas, Stay Tuned! 😀