Logo Spiria

PoisonTap : la nouvelle menace à 5$

23 novembre 2016.
PoisonTap, Sammy Kamkar.

Le chercheur en sécurité, lanceur d’alerte et expert en “hacking appliqué” Sammy Kamkar a récemment dévoilé son nouveau coup de maître qui pourrait bien inquiéter plusieurs internautes et responsables des TIs. PoisonTap, un appareil basé sur un nano-ordinateur Rapberri Pi qui ne coûte que quelques dollars, permet de prendre aisément le contrôle d’un poste connecté à Internet. PoisonTap peut fonctionner aussi bien sur un PC Windows (et probablement Linux) que sur un Mac, et ce, même s’ils sont verrouillés. Voici ce qu’il faut savoir.

PoisonTap ne demande aucune grande expertise à assembler. Il s’initialise lorsqu’il est branché à un port USB et émule un périphérique Ethernet sur USB. L’ordinateur le reconnaît comme tel et envoie une requête DHCP, à laquelle PoisonTap retourne une adresse IP. Mais la “magie” (noire) de PoisonTap, c’est de formuler sa réponse DHCP de manière à ce que l’ordinateur croie que toutes les adresses IP d’Internet font partie du pseudo-réseau local de PoisonTap. Résultat : l’ordinateur envoie l’ensemble du trafic Internet à PoisonTap, plutôt que vers son interface principale. PoisonTap cherche ensuite un navigateur Web ouvert — même inactif en arrière-plan — à partir duquel il peut commencer son attaque. Il siphonne alors les cookies tout en plaçant des portes dérobées pour des milliers de sites populaires. Un ordinateur ainsi piraté peut être forcé à faire des requêtes avec les cookies de son utilisateur, permettant à l’attaquant à se faire passer à distance pour l’utilisateur. Tout ce processus se déroule en 30 secondes à peine.

 PoisonTap, Sammy Kamkar.

Les fonctions-clés de PoisonTap

  • Ne nécessite pas que la machine soit déverrouillée.
  • Émulation d’un périphérique Ethernet sur USB (ou Thunderbolt).
  • Détournement de tout le trafic Internet de l’interface principale, en prétendant que son réseau local Ethernet contient l’espace IPv4 dans son entier (0.0.0.0 - 255.255.255.255). L’astuce est que le “trafic LAN” est prioritaire sur le “trafic Internet”.
  • À partir du navigateur Web, siphonnage et stockage de tous les cookies HTTP (de session et persistants) pour les 1 000 000 premiers sites Web du classement Alexa.
  • Installe dans le cache du navigateur une porte dérobée permanente (HTML+JavaScript) pour chacun des sites de la liste Alexa.
  • Expose le routeur connecté, le rendant potentiellement accessible à distance via WebSocket et DNS Rebinding.
  • Les portes dérobées et l’accès à distance persistent après le débranchement du port USB.
  • Permet à l’attaquant de forcer à distance la machine à faire des requêtes HTTP et des réponses (GET & POST) avec les cookies de l’utilisateur (pour le million de domaines avec porte dérobée).

Une “menace crédible”

L’expert en sécurité Rik Ferguson (Trend Micro) a affirmé à la BBC que PoisonTap constituait “une menace crédible”. “Dans des circonstances normales, un navigateur continue d’effectuer des requêtes et de communiquer même lorsqu’il n’est pas utilisé par l’internaute. Une fois que PoisonTap est branché, l’appareil peut exploiter cette communication et dérober des cookies de sessions provenant d’un million de sites Web parmi les plus populaires…” Une première requête HTTP est en effet nécessaire pour amorcer le processus de PoisonTap. Ces requêtes HTTP sont souvent effectuées si vous laissez des pages ouvertes, même si le navigateur est en arrière-plan. Car il devient bien rare qu’il n’y ait pas dans au moins l’un de vos onglets un script qui rafraîchit des données, recharge une publicité, ou envoie des informations à une plateforme d’analyses statistiques ou à tout autre outil traquant votre vie privée à des fins de marketing…

Sammy Kamkar explique très clairement le fonctionnement de son outil dans cette vidéo :

Pourquoi créer ce genre de logiciel malveillant?

Les “créations” de Kamkar cherchent à exposer au grand jour la vulnérabilité des systèmes en place. “Ma motivation première,” a-t-il expliqué, “est de montrer que même un ordinateur protégé par un mot de passe et connecté via WiFi WPA2 [c’est-à-dire le plus sûr] peut être quand même attaqué facilement et rapidement. L’information d’identification pour les sites Web non cryptés (HTTP) peut être siphonnée, et même un cookie provenant d’un site crypté (HTTPS) peut l’être si le ‘secure flag’ du cookie n’a pas été explicitement activé.

La mission de Sammy semble parfaitement remplie avec PoisonTap…

Comment se protéger?

Pour les ordinateurs potentiellement cibles, bloquer complètement les ports USB (et Thunderbolt) des utilisateurs n’est pas à exclure d’emblée. Kamkar (blagueur, mais pas que…) suggère d’utiliser de la colle à cette fin. Il est aussi proposé de fermer son (ses) navigateur(s) Web avant de quitter son poste, ce qui semble une solution impraticable pour bien des utilisateurs.

Pistolet à colle.

[Ci-dessus, un nouveau venu dans l’arsenal sécuritaire des responsables TI.]

Pour les serveurs Web, il est chaudement recommandé de n’utiliser que le mode HTTPS, ainsi que de sécuriser les cookies émis avec le flag approprié.

Mais retenons que l’attaque de PoisonTap est toujours physique dans un premier temps, le dispositif devant d’abord se brancher au port USB pour pouvoir contrôler le trafic Web de l’utilisateur. Il est donc très important de considérer la vulnérabilité accrue des utilisateurs d’ordinateurs portables, en déplacement ou se servant de leur appareil dans des endroits publics. Il convient de les informer en particulier et qu’ils comprennent bien la nature du risque. Une minute d’inattention, et il sera trop tard.