Vérifier la sortie pour plusieurs hôtes
Dans cette étape, vous apprendrez à interpréter la sortie de Hydra lorsqu'il attaque plusieurs hôtes. La sortie de Hydra fournit des informations précieuses sur le succès ou l'échec des tentatives d'attaque.
Lorsque Hydra réussit à craquer un mot de passe, il affichera les informations d'identification au format suivant :
[<service>] host: <host> login: <username> password: <password>
Par exemple :
[ssh] 192.168.1.100:22 login: root password: password
Cela indique que Hydra a réussi à craquer le mot de passe SSH de l'utilisateur root
sur l'hôte 192.168.1.100
, et que le mot de passe est password
.
Lorsque Hydra échoue à craquer un mot de passe, il affichera généralement un message d'erreur tel que "Login failed" (Connexion échouée) ou "Invalid credentials" (Informations d'identification invalides).
Analysons la sortie des étapes précédentes.
-
Relancez la commande Hydra de l'étape précédente :
hydra -L ~/project/users.txt -P ~/project/passwords.txt -t 4 -M ~/project/targets.txt ssh
-
Examinez la sortie. Vous verrez probablement une série de messages "Login failed" ou "Invalid credentials" pour chaque hôte cible. Cela est dû au fait que le nom d'utilisateur et le mot de passe que vous utilisez sont probablement incorrects.
La sortie pourrait ressembler à ceci :
Hydra v9.6 (c) 2024 by van Hauser/THC - use freely but only for legal purposes.
Hydra starting at 2024-10-27 10:00:00
[DATA] 1 task, 3 servers, 1 userfiles, 1 passfiles -> max 1 task per 1 server, overall 1 task per attack
[DATA] attacking ssh://192.168.1.100:22
[STATUS][ssh] 192.168.1.100:22 - Login failed for user 'root'
[DATA] attacking ssh://192.168.1.101:22
[STATUS][ssh] 192.168.1.101:22 - Login failed for user 'root'
[DATA] attacking ssh://192.168.1.102:22
[STATUS][ssh] 192.168.1.102:22 - Login failed for user 'root'
Hydra finished.
Si Hydra réussissait à craquer un mot de passe, vous verriez une ligne similaire à l'exemple ci-dessus, indiquant les informations d'identification réussies.
-
Pour mieux illustrer une connexion réussie, créons un scénario où Hydra a plus de chances de réussir. Cela nécessite un serveur SSH vulnérable. Comme nous n'en avons pas à disposition, nous modifierons le fichier targets.txt
pour pointer vers localhost
et tenter de nous connecter en tant qu'utilisateur actuel. Cela échouera probablement toujours, mais c'est le plus proche que nous puissions arriver d'un scénario "réussi" sans une cible vulnérable dédiée.
Tout d'abord, ajoutez 127.0.0.1
à votre fichier targets.txt
:
echo "127.0.0.1" >> ~/project/targets.txt
Maintenant, essayez de craquer le mot de passe SSH de l'utilisateur actuel (labex) sur localhost. Vous devrez connaître le mot de passe de l'utilisateur labex
. Si vous ne l'avez pas défini, vous pouvez essayer de laisser la liste de mots de passe vide, ce qui tentera un mot de passe nul.
hydra -l labex -P ~/project/passwords.txt -t 4 -M ~/project/targets.txt ssh
Remarque : Cela échouera probablement toujours à moins que vous n'ayez un mot de passe très simple pour l'utilisateur labex
ou que vous ayez autorisé la connexion SSH sans mot de passe.
Même si l'attaque échoue, le point clé est de comprendre comment interpréter la sortie de Hydra. Recherchez les lignes indiquant des connexions réussies et prêtez attention aux messages d'erreur pour comprendre pourquoi les attaques échouent.
Dans cette étape, vous avez appris à vérifier la sortie de Hydra lorsqu'il attaque plusieurs hôtes et à interpréter les résultats. Il s'agit d'une compétence cruciale pour comprendre le succès ou l'échec de vos tentatives de craquage de mots de passe.