Les hackers utilisent diverses méthodes pour déchiffrer les mots de passe et l’une d’elles est l’attaque « rainbow table » (que l’on peut traduire « attaque de table arc-en-ciel »). Dans certains cas, cette méthode peut être plus rapide que les attaques par dictionnaire(nouvelle fenêtre) ou le bourrage d’identifiants(nouvelle fenêtre) (credential stuffing).
Dans cet article, nous explorons comment fonctionnent les attaques « rainbow table » et discutons des moyens de les prévenir.
Définition de l’attaque « rainbow table »
Une attaque « rainbow table » (que l’on peut traduire « table arc-en-ciel ») est une attaque cryptographique que les hackers utilisent pour pénétrer dans des systèmes en déchiffrant les mots de passe à partir de leurs hachages, qui agissent comme des empreintes numériques. Une fonction de hachage associe chaque mot de passe à une chaîne de caractères correspondante.
Contrairement à une attaque par force brute(nouvelle fenêtre) qui essaie chaque mot de passe possible un par un, une attaque « rainbow table » ne nécessite pas de tâtonnements une fois que la table est pré-calculée. Cette table pré-calculée (connue sous le nom « rainbow table » en raison de son apparence arc-en-ciel lorsqu’elle est codée par couleur) est essentiellement une grande base de données de paires de valeurs de hachage liées à leurs équivalents en texte brut.
Comment fonctionne une attaque de mot de passe « rainbow table » ?
1. Créer une liste de mots de passe
Lors de la création de « rainbow table », les pirates ciblent souvent les mots de passe les plus probables et les plus couramment utilisés avec des motifs simples (par exemple, 123456, motdepasse ou azerty), des mots du dictionnaire ou des listes de mots de passe obtenues à partir de fuites de données.
2. Sélectionner la fonction de hachage et convertir les mots de passe
Les attaques « rainbow table » fonctionnent bien avec des fonctions de hachage cryptographiques plus simples et plus rapides comme MD-5, SHA-1, LM Hash ou NTLM Hash, car elles n’utilisent pas de fonctionnalités de sécurité telles que le salage (ajout de données aléatoires à chaque mot de passe avant le hachage) ou l’étirement de clé (hachage répétitif du mot de passe).
Mot de passe haché avec MD-5 | Mot de passe en clair |
482c811da5d5b4bc6d497ffa98491e38 | password123 |
Chaque mot de passe en clair passe par la fonction de hachage pour générer son hachage correspondant, qui a une chaîne de caractères unique et de taille fixe comme dans l’exemple ci-dessus. Une fois tous les mots de passe hachés, le pirate peut les utiliser pour créer la « rainbow table ».
3. Création de la « rainbow table » pour révéler les mots de passe
Une « rainbow table » peut être considérée comme une grande feuille Excel, avec les mots de passe hachés dans la première colonne et les mots de passe en clair dans la deuxième. Si un hachage compromis est présent dans ce tableau, cela signifie que le mot de passe compromis est dans la cellule à côté.
Exemples d’attaques « rainbow table »
Voici deux exemples hypothétiques pour illustrer comment une attaque « rainbow table » pourrait se dérouler :
- Un hacker identifie un site de réseaux sociaux qui utilise un algorithme de hachage obsolète sans aucun salage. En exploitant une faille d’injection SQL, l’attaquant extrait les valeurs de hachage des mots de passe des utilisateurs à partir de la base de données du site internet. Ensuite, il utilise une « rainbow table » pré-calculée pour convertir rapidement des milliers de ces hachages en mots de passe en texte clair, compromettant ainsi les comptes des utilisateurs.
- Lors de la surveillance routinière du réseau, un hacker découvre qu’un site de commerce électronique transmet les hachages de mots de passe de manière non sécurisée entre ses serveurs et utilise des outils d’écoute réseau pour capturer ces données. Puisqu’il a maintenant accès aux hachages de mots de passe, le hacker utilise une attaque « rainbow table » pour décoder les mots de passe des clients, obtenant ainsi un accès à leurs comptes d’achat et informations personnelles.
Fuites de données par attaques « rainbow table »
Les attaques « rainbow table » ont été utilisées dans le monde réel pour voler des millions d’informations de connexion.
Par exemple, lors du piratage de LinkedIn en 2012(nouvelle fenêtre), le réseau avait fait savoir à l’époque que les données de 6,5 millions d’utilisateurs avaient pu être dérobées. Suite à la découverte initiale, LinkedIn a trouvé 100 millions d’adresses e-mail et de mots de passe supplémentaires compromis en 2016, liés au même incident. Les mots de passe volés étaient mal protégés, ne disposant pas de mesures de sécurité supplémentaires comme le salage, les rendant plus faciles à déchiffrer pour les attaquants utilisant des « rainbow table » standards.
Comment limiter les risques d’attaques « rainbow table » ?
Choisissez des plateformes avec des fonctions de hachage robustes
Les fonctions de hachage sécurisées comme bcrypt(nouvelle fenêtre) ou Argon2(nouvelle fenêtre) utilisent le salage(nouvelle fenêtre) pour ajouter des données aléatoires à votre mot de passe avant de créer son hachage. Sans le salage, le hachage du mot de passe n’apparaîtra pas dans une « rainbow table », donc une attaque échouerait.
Pour savoir quelles fonctions de hachage un service ou une application spécifique utilise pour stocker les mots de passe, consultez sa politique de confidentialité(nouvelle fenêtre), la section questions fréquentes, la page d’assistance(nouvelle fenêtre), les certifications de sécurité ou les audits(nouvelle fenêtre) (si disponibles), la documentation technique ou les ressources pour développeurs(nouvelle fenêtre). Une simple recherche sur internet devrait fonctionner ou vous pouvez contacter le service client(nouvelle fenêtre) et poser la question.
Si vous gérez vos propres sites internet ou bases de données, gardez vos paramètres de sécurité à jour en utilisant des plug-ins ou des modules qui implémentent de puissants algorithmes de hachage.
Utilisez des mots de passe complexes
Au lieu d’utiliser des mots de passe faciles à deviner, optez pour des mots de passe sécurisés(nouvelle fenêtre) composés d’au moins 12 caractères, comprenant des lettres majuscules et minuscules, des chiffres et des symboles. Des exemples de mots de passe forts sont ?GmmM1Z[c5:F ou beht=ty]P:)Gf^c?p?+7. Il est peu probable qu’un cyberattaquant cible de tels mots de passe complexes avec des attaques « rainbow table ».
Activez l’authentification multifactorielle
L’authentification multifactorielle (AMF) comme l’authentification à deux facteurs (A2F)(nouvelle fenêtre) ajoute au moins une autre forme d’authentification à la demande de mot de passe, comme un code sur votre authentificateur A2F. Si un attaquant découvre votre mot de passe après une attaque « rainbow table », il ne pourra pas réussir les étapes suivantes d’authentification.
De plus, si vous recevez une demande de vérification supplémentaire inattendue, c’est un signe clair que quelqu’un essaie d’accéder à votre compte. Vous pouvez rapidement réagir en changeant votre mot de passe.
Utilisez des alias d’adresse e-mail
Les alias d’adresses e-mail(nouvelle fenêtre) peuvent vous protéger contre les fuites de données susceptibles d’entraîner des attaques « rainbow table », car ils ne sont pas liés à vos adresses e-mail principales. Par exemple, vous pouvez continuer à utiliser votre adresse principale pour les messages importants et les finances, tout en réservant les alias d’e-mail pour des activités moins sécurisées, telles que l’inscription à des services qui ne sont pas fiables. Si votre alias d’adresse e-mail est piraté, vous pouvez tout simplement le désactiver.
Surveillez internet pour détecter les fuites de données
En restant informé des dernières fuites, vous pouvez déterminer si l’un des services que vous utilisez a été compromis et si vos données ont été divulguées. Cela vous permet de prendre des mesures proactives, comme changer vos mots de passe immédiatement, pour empêcher les pirates d’utiliser des données potentiellement exposées pour accéder à vos comptes sans autorisation.
Comment Proton Pass peut vous aider ?
Proton Pass peut vous protéger contre les attaques « rainbow table » en générant des mots de passe forts(nouvelle fenêtre) et en les gérant en un seul endroit. Il prend également en charge un authentificateur TOTP (mot de passe à usage unique basé sur le temps) pour les jetons A2F(nouvelle fenêtre). De plus, l’application propose des alias « hide-my-email »(nouvelle fenêtre) pour éviter que votre adresse e-mail principale ne soit exposée en ligne.
Tous les abonnés Proton Pass peuvent utiliser Pass Monitor(nouvelle fenêtre) pour surveiller la sécurité de tous les mots de passe et la surveillance du Dark Web(nouvelle fenêtre) pour suivre les différentes sources de fuites de données. Notre modèle de sécurité(nouvelle fenêtre) utilise l’algorithme de hachage sécurisé bcrypt, qui ajoute un sel à vos mots de passe avant de les hacher pour empêcher les attaques « rainbow table ». De plus, nous exécutons un programme de sécurité avancé appelé Proton Sentinel(nouvelle fenêtre) pour détecter et empêcher les attaques de prise de contrôle de compte.
Commencez à sécuriser vos comptes contre les attaques « rainbow table » en créant aujourd’hui votre compte gratuit Proton Pass.