Aller au contenu
Retour à la recherche en sécurité

Recherche en sécurité

Hacking for Beer: le Rubber Ducky

L’équipe de tests d’intrusion d’OKIOK a pris l’habitude d’essayer de pirater les ordinateurs de ses collègues. Tout a commencé par une blague, quand un stagiaire a oublié de verrouiller sa session Windows avant d’aller aux toilettes. Pour lui donner une leçon, j’ai envoyé de son ordinateur un courriel à pentest@okiok.com annonçant à tout le monde qu’il payait la bière le vendredi suivant.

Après ça, nous avons commencé à chercher différentes façons d’accéder à la session des autres testeurs ou d’usurper leur identité pour envoyer le fameux courriel « la prochaine tournée est sur moi ». Ce type d’attaque du côté client revient souvent dans les mandats de tests d’intrusion que nous menons, mais les clients nous demandent habituellement d’arrêter dès que nous avons la preuve d’un accès à un poste de travail ou à un portable. Cette compétition interne nous a poussés à chercher et à exécuter des scénarios de piratage du début à la fin, avec un objectif très précis: la bière.

Ma dernière cible dans le concours Hacking for Beer était Michael. Mon plan: attendre qu’il ouvre une session sur son portable, puis utiliser le Rubber Ducky pour déclencher l’envoi du courriel annonçant que la bière est sur son bras vendredi prochain.

Le Rubber Ducky est un appareil qui se fait passer pour une clé USB, mais qui est en réalité un clavier préprogrammé. Le principe: vous préparez une liste de frappes clavier dans un fichier texte, vous compilez ce fichier en format binaire et vous placez le binaire sur une carte micro SD insérée dans le Rubber Ducky.

Lorsque le Rubber Ducky est branché sur l’ordinateur de la victime, le système d’exploitation détecte un nouveau clavier, puis l’appareil envoie les frappes pour lesquelles il a été programmé. L’idée principale est la suivante: si vous trouvez un ordinateur dont la session est déverrouillée, vous branchez le Rubber Ducky, qui déclenche rapidement l’exécution de commandes préprogrammées, par exemple écrire un fichier .vbs sur le disque et l’exécuter.

Or Michael sait qu’il ne faut pas laisser sa session Windows déverrouillée en s’absentant. J’ai donc programmé le Rubber Ducky pour qu’il envoie une liste de touches, attende 5 minutes, puis recommence. La liste commence par la touche Échap, de sorte que si la session est verrouillée, les touches ne sont pas tapées dans le champ du mot de passe. Si le déclenchement de 5 minutes survient pendant que Michael est connecté, les touches copient un modèle de courriel depuis un partage public, ouvrent le modèle dans Outlook et envoient le message. En théorie, je pouvais donc brancher le Rubber Ducky sur son portable pendant son absence et attendre qu’il ouvre sa session.

Avant d’aller plus loin, je dois préciser que Michael surveille son bureau de près. Si, par exemple, je changeais l’angle de son écran de quelques degrés à peine, il le remarquerait et entrerait en mode panique: il vérifierait alors chaque appareil et chaque câble pour voir si l’on y a touché. Il ne garde pas beaucoup de périphériques branchés sur son portable non plus. Comme on le voit sur la photo ci-dessous, il n’a de branché qu’un lecteur de carte à puce USB bleu, une souris plutôt vieille et un câble réseau. Son portable a des ports USB à gauche et à droite, mais aucun à l’arrière. Si je branchais le Rubber Ducky directement dans l’un de ces ports, il le remarquerait aussitôt et l’attaque serait terminée.

La solution qui m’est venue: brancher la souris sur un concentrateur USB caché derrière son portable, et brancher ce concentrateur sur le portable. Mais il y avait un problème. La vieille souris de Michael a un câble d’un gris légèrement différent de celui des câbles ordinaires. Je ne voulais pas courir le risque qu’il remarque que le câble sortant de la souris n’était pas le même que celui branché à l’ordinateur. J’ai donc coupé le câble de la souris en deux: j’ai fixé une autre fiche USB au bout relié à la souris, et j’ai utilisé le bout muni du connecteur pour remplacer le connecteur d’une rallonge USB.

Alors, comment tout cela s’est-il terminé? Tout ce que je peux vous dire, c’est que Michael paie les tournées ce vendredi.

Envoyez-nous un message

Seul votre courriel est requis. Choisissez un sujet, ajoutez une note, puis envoyez.

Incident en cours? Appelez la ligne 24/7 plutôt que d’attendre une réponse: +1 450 681-1681, poste 277