Combien de temps faut-il pour craquer un mot de passe de moins de 6 caractères ?

Maxime Aulne
Publié le 19 juillet 2022 à 14h25
© B_A / Pixabay
© B_A / Pixabay

Le vol de votre mot de passe est devenu un enjeu de taille pour les hackers. Ce précieux sésame donne accès à vos données personnelles, bancaires et bien plus encore, il représente donc une véritable mine d’or aux yeux d’un pirate informatique.

La plateforme de stockage chiffré pCloud a récemment publié une étude complète sur ce phénomène. Le constat dressé dans cet article est alarmant, on y apprend qu’il faudrait moins de 10 minutes pour déchiffrer un mot de passe de moins de 6 caractères…

La force de votre mot de passe influence le temps de hacking nécessaire

Si votre mot de passe contient 6 caractères sans motifs spéciaux (du type @, !, ?, etc.), voici combien de temps il faudra à un cybercriminel pour le déchiffrer :

  • 3,7 semaines pour un hacking en ligne en passant par une application web (1 000 suppositions par seconde) ;

  • 0,0224 seconde pour un hacking hors ligne en ayant recours à des serveurs ou des ordinateurs de bureau très puissants (100 milliards de suppositions par seconde) ;

  • 0,0000224 seconde pour un hacking hors ligne en se servant de clusters ou de grilles de calcul multiprocesseurs parallèles (100 billions de suppositions par seconde).

À présent, si vous ajoutez un seul caractère spécial, voici les nouveaux chiffres :

  • 2,4 siècles pour un hacking en ligne en passant par une application web qui frappe un site cible (1 000 suppositions par seconde) ;

  • 1,26 minute pour un hacking hors ligne en utilisant des serveurs ou des ordinateurs de bureau très puissants (100 milliards de suppositions par seconde) ;

  • 0,0756 seconde pour un hacking hors ligne en passant par des clusters ou des grilles de calcul parallèles (100 billions de suppositions par seconde).

Ces résultats sont sans appel et montrent bien à quel point il est facile de craquer un mot de passe. De plus, les actes de cybercriminalité sont en constante augmentation, avec une hausse de 37 % sur l’année 2021. Il est donc devenu urgent de sécuriser son mot de passe pour naviguer sereinement sur la Toile.

Comment se prémunir d’un vol de mot de passe ?

La force de votre mot de passe est déterminée par plusieurs facteurs : 

  • Sa longueur : le nombre de caractères présents dans le mot de passe ;

  • Sa complexité : est-ce qu’il y a une combinaison de chiffres et de lettres, des caractères spéciaux ?

  • Son caractère prédictible : est-ce un mot de passe qui peut se deviner facilement ?

Il est important de prendre en compte ces trois facteurs lors de la création de votre mot de passe. Une fois terminé, rendez-vous sur le site de l’Agence nationale de la sécurité des systèmes d’information pour tester sa résistance.

Si vous avez respecté les différents critères cités, vous devriez avoir un mot de passe qui met plusieurs milliers d’années à être décodé. Pensez néanmoins à le changer régulièrement pour complexifier davantage les recherches, et surtout, ne l’utilisez qu’une seule fois.

Edit : Suite aux commentaires, nous précisons que les données issues du test de rapidité de hacking sont purement théoriques. Ces dernières seraient compliquées à mettre en œuvre en réalité.

Maxime Aulne
Par Maxime Aulne

Passionné par le monde du Web, j'analyse son actualité et en restitue l'essentiel pour que chacun puisse comprendre ses enjeux et ses évolutions. Mon but : que chacun fasse du web son terrain de jeu."

Vous êtes un utilisateur de Google Actualités ou de WhatsApp ?
Suivez-nous pour ne rien rater de l'actu tech !
Commentaires (0)
Rejoignez la communauté Clubic
Rejoignez la communauté des passionnés de nouvelles technologies. Venez partager votre passion et débattre de l’actualité avec nos membres qui s’entraident et partagent leur expertise quotidiennement.
Commentaires (10)
SPH

Avec un MDP de 6 caractères (de a à z) :
« 3,7 semaines pour un hacking en ligne en passant par une application web (1 000 suppositions par seconde) ; »

Je ne trouve pas ça !
Cela fait 26^6/1000/3600/24
soit : 3.57 jours :clown_face:

Pixou

t’as oublié les majuscules :wink:

Keorl

100 trillions ? Non, billions. Vous avez fait presque la même erreur de traduction que l’autre jour … (article d’ailleurs toujours pas corrigé. Et pas le même auteur : c’est donc une épidémie. Portez des masques :D)

SPH

Maj et Min, ça fait 288.82 jours :dizzy_face:

Doss

Et les chiffres :wink: Mais on est pas bon aussi car ça fait 657jours.
Après ca doit être un moyen avec des paternes pré-définie qui permet de tomber juste plus rapidement.

MattS32

Ça dépend aussi de la fonction de hashage utilisée pour hasher le mot de passe…

Les bonnes pratiques actuelles, c’est d’utiliser des fonctions de hashage comme bcrypt, scrypt ou pbkdf avec plusieurs itérations successives, pour augmenter la durée nécessaire à chaque test.

Par exemple, avec un bcrypt configuré pour 10 « tours » (2^10 itérations), le hash d’un mot de passe sur mon PC prend environ 50ms. Ce qui fait que même hors ligne, un attaquant ne pourra pas tester plus de 20 mots de passer par seconde avec un CPU équivalent.

Bien sûr, ça ralenti le temps de connexion pour l’utilisateur, puisque la vérification du mot de passe saisi prendra aussi 50ms. Mais en pratique 50ms de temps de traitement, c’est invisible pour l’utilisateur.

Par contre ça augmente la charge CPU, surtout sur les services où il y a souvent des connexions par mot de passe (par exemple les banques, qui ne permettent pas de conserver l’authentification plusieurs jours ou semaines via un cookie).

Non, pas nécessairement. L’utilisation d’algorithmes lents, comme je le décris juste au-dessus, est sans impact notable pour l’utilisateur, tout en étant très efficace contre le brute force.

Par exemple, si le serveur met 50 ms à valider un mot de passe, l’exemple le plus rapide de la news, qui tombe en 3.7 semaines sur une attaque à distance, il se met à résister 3 ans…

Nmut

Oui, il faudrait préciser pour un mdp sur une archive ou tout autre truc accessible en direct (base de mots de passes), j’espère que tous les serveur du monde bloquent au moins temporairement après 3 essais, ce qui est en général admis comme la protection la plus élémentaire (même moi je connais, c’est dire! :stuck_out_tongue: ).

Asakha1

Le plus «simple» pour un site web, c’est de limiter les tentatives à 1 fois par seconde, puis incrémenter le temps à chaque erreur. Même un NIP à 4 chiffres va prendre près de 3 heures à 1 essai par seconde. Si on double le délai à chaque mauvaise tentative, après 3 heures, le «pirate» n’en sera qu’à son 14e essai sur les 10 000 combinaisons possible !

MattS32

Le nombre de combinaisons testées par seconde en local me parait largement surévalué… Une RTX 3080 sur du SHA256, c’est de l’ordre de 100 millions de hash par seconde, donc pour taper du 100 milliards par seconde, c’est pas juste « des serveurs ou des ordinateurs de bureau très puissants », c’est déjà un bon gros cluster de quelques centaines de grosses machines pour avoir l’équivalent d’un millier de RTX 3080…

Quand aux 100 billions de hash par seconde, c’est l’équivalent de 1 million de RTX 3080… C’est pas le premier cluster ou grille de calcul venu…

MattS32

Aujourd’hui, à part pour des trucs nécessitant vraiment une très forte sécurité (données confidentielles d’entreprise, banques…), c’est plutôt considéré comme une mauvaise pratique de limiter le nombre d’essais ou d’accroître exponentiellement le temps de validation.

Car non seulement ça permet à un attaquant de bloquer facilement un utilisateur légitime, puisqu’il suffit de provoquer quelques échecs et l’utilisateur légitime se retrouvera face à un compte bloqué ou un temps d’attente excessivement long, mais en plus ça n’est d’absolument aucune efficacité en cas de vol de la base de données.

La bonne pratique, c’est vraiment de jouer sur le temps de réponse, soit artificiellement, en ajoutant des petits temps d’attente dans le processus de validation (aucun impact sur la charge CPU du serveur, mais par contre ça ne protège que sur une attaque distante, pas en cas de vol de la base de données), soit en jouant sur la complexité de l’algorithme de hash (impact sur la charge CPU, mais augmente la résistance à un vol de données).

Ainsi une attaque est sans impact sur l’utilisateur légitime.