- d’émuler un périphérique Ethernet sur USB (ou Thunderbolt) ;
- de détourner tout le trafic Internet de la machine (en dépit d'une interface réseau de faible priorité / inconnue) ;
- de siphonner et de sauvegarder les cookies HTTP et les sessions d’un navigateur web pour le top 1 000 000 des sites web ayant le plus de trafic selon le baromètre Alexa (une instance du navigateur web doit avoir été lancée avant que l’ordinateur ne soit verrouillé) ;
- d’exposer le routeur interne à l'attaquant, le rendant accessible à distance via le WebSocket sortant et le relancement du DNS ;
- d’installer une porte dérobée web persistante dans le cache HTTP pour des centaines de milliers de domaines et des URL de CDN Javascript courantes, toutes avec accès aux cookies de l'utilisateur via l'empoisonnement du cache ;
- à l'attaquant de forcer à distance l'utilisateur à faire des requêtes HTTP et des réponses de proxy (GET et POST) avec les cookies de l'utilisateur sur n'importe quel domaine avec une porte dérobée ;
- les portes dérobées et l'accès à distance persistent même après que le périphérique a été supprimé.
Le hacker a confié que ce dispositif, qui a été conçu pour le Raspberry Pi Zero (qui coûte 5 dollars), est « entièrement automatisé » : « vous le branchez, vous le laissez faire pendant quelques minutes puis vous le débranchez ». Et de préciser que « vous n’avez même pas besoin de savoir faire quoi que ce soit ».
PoisonTap permet de contourner ces mécanismes de sécurité :
- les écrans de verrouillage protégés par un mot de passe ;
- la priorité de la table de routage et l’interface réseau pour la commande de service ;
- la politique d'origine identique ;
- X-Frame-Options ;
- les cookies HttpOnly ;
- l’attribut cookie SameSite ;
- l’authentification à deux facteurs / multi-facteurs (2FA / MFA) ;
- le DNS pinning ;
- le partage de ressources entre origines (CORS)
- la protection de cookie HTTPS lorsque le drapeau de cookie sécurisé et HSTS ne sont pas activés.
« Moi, en tant qu'attaquant, je peux passer par Raspberry Pi pour collecter vos cookies et me connecter aux mêmes sites web que vous, me faisant passer pour vous », a-t-il confié. Il a précisé qu’il n’a « pas besoin de mot de passe et encore moins de nom d'utilisateur » pour le faire.
Certains des chercheurs en sécurité qui ont analysé cette attaque pensent qu’il s’agit là d’une bonne façon d’exposer la confiance excessive accordée par les ordinateurs Mac et Windows aux périphériques réseaux. C'est d’ailleurs la clé des attaques de PoisonTap : une fois que ce qui ressemble à un périphérique réseau est branché sur l’ordinateur portable dans la vidéo de démonstration, l'ordinateur interagit automatiquement avec lui et procède à un échange de données.
Pour Jayson E. Street, un testeur de pénétration qui a déjà fait l’expérience de ce type d’attaques, « nous devons nous rendre compte qu’il est possible qu’avoir un poste de travail verrouillé n'est probablement pas suffisant ».
Andrea Barisani, un autre chercheur en sécurité, a déclaré que « les meilleures pratiques empêcheraient un tel dispositif d'avoir un effet », même si, dans la réalité, nous sommes encore « loin d'atteindre cet objectif et des projets comme PoisonTap, [...] sont un moyen très efficace de sensibiliser le public à la nécessité de répondre aux mauvaises configurations de sécurité Web une fois pour toutes ».
télécharger le code source sur GitHub
Source : billet de Samy Kamkar