Une attaque par dictionnaire est une technique d’attaque par force brute pour laquelle les attaquants utilisent des mots et des phrases courantes, comme ceux d'un dictionnaire, pour deviner des mots de passe. Parce que les gens utilisent souvent des mots de passe simples et faciles à retenir, et pour plusieurs de leurs comptes, les attaques par dictionnaire ont des chances d’aboutir sans nécessité la mobilisation de beaucoup de ressources. « Une attaque par dictionnaire est une variante d'attaque par force brute, sauf qu’elle utilise une liste prédéfinie de mots de passe potentiellement très utilisés et ayant une plus forte probabilité de succès », a ainsi expliqué Deral Heiland, responsable de la recherche IoT chez Rapid7. Par exemple, dans une liste de dictionnaire, on pourrait trouver les noms des équipes sportives régionales, ceux des membres de l'équipe, des noms ayant un rapport avec l’entreprise ciblée, des groupes de mots courants, contenant par exemple « printemps », « été », « hiver » et « automne », souvent utilisés et des variations de ces termes pour les adapter aux exigences des mots de passe ».

Attaque par dictionnaire et attaque par force brute, quelle différence ?

Les attaques par force brute classiques consistent à essayer systématiquement toutes les combinaisons possibles pour forcer l’étape de l'authentification. Par contre, les attaques par dictionnaire utilisent un nombre important mais limité de mots et de phrases présélectionnés. Le fait de ne pas passer par toutes les combinaisons possibles réduit la probabilité qu'un mot de passe difficile soit deviné correctement, mais une attaque par dictionnaire nécessite moins de temps et de ressources pour être exécutée. « En général, la liste de dictionnaire est spécifiquement construite pour la cible attaquée », a encore expliqué M. Heiland. Par exemple, si l’entreprise ciblée s'appelle London Widgets et qu’elle est située à Londres, la liste prédéfinie comprendra des variantes de mots potentiellement liés à l’entreprise attaquée et à la région de Londres ou à des sujets régionaux comme « Westminster », « ChelseaFC1990 », « SouthBank2020 » ou « CityOfLondon2020 ».

Parmi les nombreux outils utilisés pour les attaques par dictionnaire, on trouve des mots de passe courants provenant de fuites de sécurité et divulguées en ligne ainsi que des variantes courantes de certains mots et expressions. Par exemple un « a » remplacé par un « @ » ou l’ajout de chiffres à la fin des mots de passe. Ce que font les attaquants quand ils ont accès à un compte dépend du but recherché et de l'étendue de l'accès que ce compte peut leur fournir, soit voler des données personnelles, des informations de paiement ou de la propriété intellectuelle, ou alors s’en servir de base pour mener d'autres attaques contre l’entreprise compromise. « Le but est de s’introduire dans les réseaux de l’entreprise, d’obtenir plus de droits par escale des privilèges et de mener des actions latérales pour parvenir à compromettre des informations critiques comme des informations d'identification personnelle (IIP) et des données financières », a poursuivi M. Heiland.

Quelles chances de succès pour les attaques par dictionnaire ?

Parce que trop de gens réutilisent souvent les mêmes mots de passe, qu’ils apportent des modifications minimes à leurs mots de passe préférés et ne les modifient pas suite à une violation facilite grandement la tâche de ce type d'attaques et leurs chances de réussite, surtout si l'on dispose de suffisamment de temps et que l’on peut faire suffisamment de tentatives. Le rapport 2019 de Verizon sur les atteintes à la protection des données « Data Breach Investigations Report » (DBIR) laisse entendre 80 % des atteintes liées au piratage reposent sur des identifiants volés et réutilisés. Les mots de passe « Password », « 12345 » et « QWERTY » sont toujours en tête des listes des mots de passe fuités, ce qui montre qu'en dépit des multiples mises en garde, les gens persistent à utiliser de très mauvais mots de passe faciles à deviner. Les suites de lettres ou de chiffres au clavier, les noms communs, les animaux et les phrases simples comme « iloveyou » et « letmein » apparaissent régulièrement aussi sur ces listes. Récemment, le Centre national de cybersécurité britannique (National Cyber Security Centre - NCSC) a demandé aux fans de football de ne pas utiliser le nom de leurs équipes préférées comme mots de passe, car les noms des équipes apparaissent souvent sur des listes de mots de passe.

Selon le rapport de la plateforme de cybersécurité basée sur l’IA Balbix State of Password Use Report 2020, environ 99 % des utilisateurs réutilisent leurs mots de passe, et l'utilisateur moyen partage une série de huit mots de passe entre ses différents comptes, aussi bien ses comptes professionnels et personnels que ses divers comptes internes à l'entreprise dans laquelle il travaille. D’après l'enquête de Security.org sur les stratégies de mots de passe en ligne, près de 70 % des personnes modifient leurs mots de passe existants quand elles en créent de nouveaux. Le rapport 2019 de Yubico and Ponemon sur l'état des mots de passe et les comportements d'authentification en matière de sécurité « State of Password and Authentication Security Behaviors Report » a révélé que 69 % des personnes partagent leurs mots de passe avec d'autres personnes sur leur lieu de travail. Un peu plus de la moitié des personnes ne modifient pas leur mot de passe après un incident. « Dans le cadre d’évaluations de sécurité encadrées, j'ai moi-même pu compromettre des centaines d'entreprises en utilisant des attaques par dictionnaire », a encore déclare Deral Heiland.

Se défendre contre les attaques par dictionnaire

Étant donné que les attaques par dictionnaire s'appuient sur des mots couramment utilisés comme mots de passe, une politique de mots de passe forte permet déjà de bien se protéger contre ces attaques. Il faut encourager les utilisateurs à créer des mots de passe uniques - idéalement une combinaison de mots aléatoires avec des symboles et des chiffres - à ne pas les réutiliser ou les partager, et s’assurer qu'ils sont modifiés en cas de compromis. Les gestionnaires de mots de passe offrent une solution plus automatisée de conserver des mots de passe forts sans exiger des utilisateurs qu'ils les mémorisent. « L'une des meilleures méthodes pour réduire le succès de ce type d'attaque est d’apprendre aux gens à éviter les mots de passe courts et les inciter à utiliser des phrases en guise de mots de passe », a conseillé M. Heiland. « Les phrases sont souvent faciles à retenir et pratiquement impossibles à deviner. Par exemple, il suffit de choisir une phrase comme « I want to play cricket for England » (« Je veux jouer au cricket pour l'Angleterre ») et de la modifier au hasard avec des majuscules, des chiffres ou des caractères spéciaux, par exemple « ! want TO Play cr1cket 4 Engl4nd$ ». Une autre amélioration que recommande souvent M. Heiland est de faire en sorte que les noms d'utilisateur ne correspondent pas à la syntaxe de l'adresse e-mail.

D’autres mesures permettent d’atténuer les attaques par dictionnaire :

- Mettre en place une authentification à plusieurs facteurs quand c'est possible.

- Utiliser la biométrie au lieu des mots de passe.

- Limiter le nombre de tentatives autorisées sur une période donnée.

- Obliger la réinitialisation des comptes après un certain nombre de tentatives infructueuses.

- Limiter la vitesse d'acceptation des mots de passe afin d'augmenter le temps et les ressources nécessaires aux attaquants pour deviner le mot de passe.

- Inclure des Captchas pour empêcher les tentatives de connexion automatisées.

- Veiller à ce que les mots de passe soient cryptés afin de réduire les risques de fuite.

- Restreindre l'utilisation de mots ou de mots de passe communs. Le National Cyber Security Centre britannique a même publié une liste de mots de passe courants qu’il est préférable d’éviter.