ATTENTION: Cet article n'est probablement plus d'actualité.

SSH est un protocole très utile est très sécurisé qui nous permet d’accéder à nos serveurs à distance, de transférer des fichiers entre autres choses. Finalement la grosse faiblesse de SSH reste la même que pour bien des protocoles et service en vigueur dans les réseaux: le couple login/mot de passe. Sous Linux le SSH est souvent activé pour l’utilisateur « root » qui est le super-administrateur de la machine locale. On a donc le login, reste maintenant à trouver le mot de passe. Alors je vous préviens tout de suite que si vous comptez utiliser la suite de cet article pour rentrer dans des endroits pas très recommandables du genre serveur de la fac et autres joyeusetés voici ce qui vous attend.

Avant de commencer il faut savoir ce qu’est une attaque bruteforce. En fait on peut différencier deux types d’attaques bruteforce: attaque par dictionnaire et ce que j’appelle attaque par combinaison. Dans le premier cas de figure un programme va essayer de trouver le mot de passe en passant en revue tout les mots contenus dans un fichier dit « dictionnaire ». La deuxième va essayer toutes les combinaisons possibles avec tous les symboles possibles. Dans ce cas il faut avoir une grosse puissance de calcul et attendre quelques heures voire jours si ce n’est plus.

Pré-requis:

Pour la suite on va partir du principe que vous avez sous la main soit un linux (n’importe quelle distribution) ou un Windows avec Cygwin avec la possibilité d’exécuter des scripts Python. On va aussi considérer que vous vous trouvez dans le même réseau local que la machine visée. Il faut aussi que vous ayez des dictionnaires assez conséquents. Vous pouvez en trouver ici et ici.

Go !

Pour lancer notre bruteforce on va procéder de deux manières différentes avec deux outils différents. Vous pouvez bien sur choisir l’un ou l’autre.

SSH Bruteforcer

SSH Bruteforcer est un script en Python par Christian Martorella pour Edge Security. Son fonctionnement est assez simple et est résumé dans la capture ci dessous:

Une fois lancé plus qu’à attendre le résultat en sachant que plus votre dictionnaire est complet, plus vous avez de chance de tomber sur le bon mot de passe mais plus ce sera long. Cet outil est assez simple mais on ne peut pas spécifier un numéro de port spécifique on va donc essayer Hydra THC.

Hydra THC

Vous pouvez télécharger Hydra-THC ici. Une fois installé vous pouvez le lancer avec la commande « hydra ». il faut savoir que ce programme supporte tout une gamme de services et beaucoup plus d’options que SSH Bruteforcer. Pour lancer notre bruteforce sur SSH il faut entrer:

hydra –l root –P dictionnaire.txt –s 22 –f adresseipdelamachinevisée ssh2

La aussi une fois l’attaque lancé il faut attendre que tous les mots soient passés en revue.

Voilà donc les principes d’une attaque bruteforce sur SSH. C’est une attaque assez simple et nécessitant peu de connaissances techniques. Elle a très peu de chance de fonctionner sur un réseau bien protégé.

Merci à Yoann pour les infos !