Magazine High tech

Brute Force : Kézako ?

Publié le 13 août 2007 par Bertrand Arquilliere

A la demande de Frame sur le dernier top 3 des attaques, voici donc une introduction à une attaque très fréquente sur vos mots de passe : le brute force.
cadenas.jpg
Nous allons voir, sans entrer dans les détails trop technique, comment la solidité d'un mot de passe peut être testée, quelles sont les différentes méthodes. Enfin, nous verrons comment choisir un mot de passe qui résistera plus longtemps que les autres à ce type d'attaque, et quelques habitudes qu'il faut impérativement abandonner.

Le couple login et mot de passe constitue bien souvent le dernier rempart, la dernière protection entre vos données et les utilisateurs indiscrets (concurrents, famille, employés, patron ...).

Il est aujourd'hui impossible pour un utilisateur de l'informatique de ne pas avoir de mot de passe, il est le sésame pour donner accès à un tas d'applications, et de données (emails, compte en banque, administration de blog ...), et pourtant, très souvent mal choisis, le mot de passe est d'une solidité discutable.
Il existe plusieurs façons d'obtenir le mot de passe de quelqu'un, l'une d'elle consiste à faire un peu de social engineering, c'est à dire exploiter les faiblesses humaines de tout un chacun.
Qui n'a jamais offert son aide lorsqu'elle est réclamée par quelqu'un d'à priori moins fort que nous ?
Un exemple très simple de social engineering en entreprise, avec mon téléphone, j'appelle la secrétaire d'un manager en congés, et je me fais passer pour un technicien du service informatique (N'essayez pas, c'est illégal, mais je vous garanti que dans une entreprise de plus de 60 personnes, ça marche à TOUS les coups):

"Madame Tartanpion, assistante de Monsieur Dabosse, bonjour"
"Bonjour Madame, excusez moi de vous déranger, je suis Hector, le stagiaire à l'équipe réseaux, on a détecté un problème sur la messagerie de monsieur Dabosse, et nous devons urgement nous connecter sur son compte pour effectuer une mise à jour, est-ce que vous pouvez me donner son mot de passe s'il vous plait ..."
"Je ne sais pas si je peux vous le donner ..."
"C'est très important, Monsieur Rezo, le responsable informatique m'a demandé de faire ce travail avant la fin de sa pause déjeuner, je ne suis que stagiaire et je tiens absolument à le satisfaire, j'ai vraiment besoin de votre aide"
"Oui, alors son mot de passe est : 230870"
"Merci Madame Tartanpion, si vous avez besoin de quoi que ce soit en informatique, n'hésitez pas à me contacter, ça sera avec plaisir et je saurai me libérer pour vous accorder un peu de temps. Au revoir"
"Merci Hector, je n'oublierai pas. Au revoir"
Durée de l'appel : 25 secondes (Maximum)... Et notre Hector se retrouve avec le mot de passe d'un manager, en profitant de la gentillesse de son assistante.
Le Social Engineering ne se résume pas à cet exemple de coup fil, mais couvre de multiples facettes. Vous seriez surpris de tout ce qu'on peut apprendre le soir tranquillement installé à une table de bar, en entamant le dialogue avec son voisin (Voisin qui n'as pas été choisis innocemment ...), ou simplement en discutant à la cantine avec ce Monsieur Dabosse, vous êtes marié ? Comment s'appelle votre femme, vous êtes de quelle année, on m'a dit que c'est aujourd'hui votre anniversaire ... Autant de questions anodines qui peuvent aider Hector à deviner un mot de passe.

A ce stade de cette présentation, que celles et ceux qui n'ont JAMAIS choisis en mot de passe leur date de naissance, celle du mari/femme/enfants, le prénom du mari/femme/enfants, le nom du chat/chien/poisson rouge ... lève la main !
Personne ! On a tous fait ça un jour ou l'autre. Ceux qui le font encore, il est grand temps de changer votre mot de passe.
Une autre méthode pour obtenir un mot de passe, c'est le brute force. L'idée étant de deviner le mot mot de passe d'un utilisateur en essayant un une liste de mot de passe jusqu'à trouver le bon.
Pour ce faire de nombreux outils sont disponibles, on donne en paramètre de l'outil un fichier contenant des login, un fichier contenant des mots de passe, et un site/application a tester. A une vitesse incroyable, l'outil va tester chacun des couples login/mot de passe possible en fonction des fichiers, et affichera les couples qui fonctionnent.
Ce type d'attaque est dite "Attaque au dictionnaire", en effet, on fournit à l'outil un dictionnaire de mots qui seront testés. On trouve sur Internet des dictionnaires très complets classés par thèmes : "Prénoms féminin", "Prénoms masculin", "Acteur/actrice de cinéma", "Nom de villes" ... ect. Bien souvent cette attaque va fournir en moins de quelques secondes le mot de passe de plusieurs utilisateurs d'une entreprise.
Toujours dans les attaques en Brute force, on peut aussi générer le mot de passe à la volée en testant toutes les combinaisons possibles d'une chaîne de caractères. Il est évident que plus la chaîne sera longue, plus il faudra du temps pour découvrir un mot de passe, mais cette méthode est plus complète, car elle permet de découvrir des mots qui n'existent dans aucun dictionnaire (par exemple : AZ67bhj89).
Le principal soucis de ce type d'attaque c'est la verbosité, en effet, lors d'une analyse des logs, l'administrateur réseau (Monsieur Rezo) se rendra bien compte de ce nombre inhumain de tentative de connexion (plus de 5 / seconde selon l'outil utilisé)
Les mots de passe sont stockés quelque part sur le serveur, de façon chiffrés rassurez vous, un utilisateur, peut donc récupérer sur sa machine la liste des mots de passe chiffrés et conduire dessus une attaque en Brute Force sans laisser de traces de tentatives de connexion.
Il va récupérer ledit fichier (Ce n'est pas le but de ce billet que de décrire quels sont les moyens de voler ce fichier ... mais avec un petit coup de XSS sur un serveur mal configuré ...), et lancer un outil chez lui sur sa machine, qui va chiffrer tous les mots du dictionnaire et comparer le résultat avec le contenu du fichier ... C'est plutôt lent comme méthode, mais efficace.
Pour aller toujours plus vite dans le cassage de mots de passe, il existe aussi des rainbow tables, ce sont simplement les fameux dictionnaires, dont chacun des mots est déjà chiffré selon la méthode de chiffrement du système cible
Les Unix et les Windows n'utilisent pas la même méthode de chiffrement, chaque dictionnaire doit donc être chiffré dans chacune des méthodes possibles avant d'être redistribué.
Il va de soit, que ces outils savent aussi repérer immédiatement un mot de passe vide, ou dont le nombre de caractères est inférieur à 8. Ce qui introduit bien la conclusion de ce billet de présentation :
Comment choisir un mot de passe solide ?
La première règle, c'est que votre mot de passe ne doit être contenu dans AUCUN dictionnaire, de quelques langues que ce soit. Votre mot de passe doit faire un minimum de 12 caractères et idéalement plus de 16 (plus c'est long plus c'est bon ... ;-) ), et enfin votre mot de passe doit contenir en plus des caractères alphanumèriques, des caractères spéciaux. N'hésitez pas non plus à mixer les lettres majuscules et minuscules.
Recette : Mot de passe gratiné.

Temps de préparation : 3 minutes
Difficulté : Débutant
Ingrédients :
Un proverbe, une pincée de caractères spéciaux, une date de naissance.
Bien choisir votre proverbe, il doit peser plus de 4 mots. Dans cette recette j'ai choisis un proverbe en provenance du Tibet : "Plutôt que de te lamenter sur l'obscurité, allumes une chandelle".
Emmincez le proverbe pour en extraire la première lettre de chaque mot : "Pqdtlsloauc".
Séparez en les alternant minuscule et majuscule "PqdTLsloAuC"
Incorporez une année de naissance en début ou en fin d'émincés "74PqdTLsloAuC"
Parsemez le tout de caractère spéciaux (éàùèç&#{}$£*µ/!§ ...).
Vous obtenez alors quelque chose comme ça : "74PqdTLs#loAuC*%".
qui sera indigeste pour les attaques en brute force

Voilà un mot de passe garanti pour quelques années (Et facile à retenir) !
Enfin, voyons quelques mauvais habitudes qu'il faut perdre dès à présent :

  • Votre mot de passe est personnel, vous ne devez en aucun cas le donner à qui que ce soit. Vos responsables informatiques n'en ont pas besoin, et vos collègues encore moins !
  • Votre mot de passe ne doit pas être griffonné sur un post-it collé sous votre clavier, ou derrière votre écran ou sous le bureau !
  • Ne jamais choisir un mot de passe ayant un lien direct avec vous, mot de passe qui sera donc dévoilé malgré vous lors de discussions informelles.


Have fun ! Et tous à vos claviers pour changer vos mots de passe et faire un peu de ménage sur votre bureau ;-)


Retour à La Une de Logo Paperblog

A propos de l’auteur


Bertrand Arquilliere 1 partage Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossier Paperblog