Comment savoir si votre e-mail ou mot de passe a été hacké
Dans cet article, vous allez savoir si votre adresse e-mail ou votre mot de passe a été hacké/piraté (l’emploi du terme change peu ici).
On utilisera pour cela le site haveibeenpwned de l’expert en sécurité australien Troy Hunt, dont la toute dernière mise à jour nous permet de chercher des mots de passe afin de découvrir si ceux-ci se sont retrouvés dans la nature suite à une fuite de données après un piratage.
Pour mieux comprendre et mettre les choses dans leur contexte : cela ne vous garantira pas de façon 100% certaine que personne n’a jamais trouvé votre mot de passe, ni même que vous allez être piraté(e). Mais cela vous aidera à savoir si votre mot de passe ou votre adresse e-mail sont potentiellement « connus » sur Internet. Avec les conséquences que cela peut engendrer : spamming, phishing, cracking de mot de passe, usurpation d’identité, piratage etc…
Haveiquoi ?
Si vous ne connaissez pas encore le site Haveibeenpwned, une petite explication s’impose. Et pour commencer, quel est donc ce nom ?
Le nom du site vient de l’anglais « Have I been pwned? » que l’on peut traduire par « Me suis-je fait(e) avoir ? »
Ce site a été créé par un chercheur en sécurité appelé Troy Hunt qui a décidé de récupérer les données partagées par les pirates après leurs piratages afin de proposer à tous les internautes de voir si leur adresse e-mail ou mots de passe se trouvent dans ces données dérobées. Le tout gratuitement.
Vous avez des doutes sur la légitimité de ce site ? Sachez qu’il est utilisé par les gouverments Britannique et Australien afin de surveiller les données volées venant du personnel du gouvernent.
J’en avais également parlé dans cet article.
Mais quelles données piratées ? Pourquoi y aurait-il des informations me concernant ?
Tout simplement car tout internaute « normal » est inscrit sur divers sites web populaires. Et il arrive que ces sites web populaires se fassent pirater, exposant les données de leurs utilisateurs à tout le monde. Quand on parle de sites « populaires », on pense par exemple à Dailymotion, LinkedIn, Adobe, Domino’s Pizza, Yahoo, uTorrent, Snapchat ou encore Badoo. Ces sites vous disent quelque chose ? Vous êtes inscrit(e) sur l’un d’eux ? Alors vous êtes concerné(e). Haveibeenpwned connaît plus de 100 millions de données pour chaque site cité ci-dessus, et ce n’est pas tout ! La liste de sites piratés est très grande (270 sites à l’heure actuelle).
Comment tester si mon adresse e-mail a pu être récupérée via un piratage ?
C’est très simple, il suffit de vous rendre sur la page principale de Haveibeenpwned et d’entrer votre adresse dans le champ.
Ce n’est pas mon adresse e-mail, mais rien que pour l’exemple, celle-ci se trouve dans 16 fuites de données via des sites comme 000webhost, Adobe, Dailymotion ou encore Pokébip.
Je vous propose d’essayer avec vos adresses e-mail dès maintenant.
« Vérifiez si votre adresse e-mail a été récupérée par des pirates »Cliquez pour tweeterPartager sur FacebookPartager sur LinkedInMon adresse se trouve dans une fuite de données, que dois-je faire ?
Malheureusement, vous avez plus de chances d’apprendre que votre adresse a été exposée à une fuite de données que l’inverse. En fonction des données compromises (Haveibeenpwned vous dira lesquelles dans la ligne Compromised data).
Toutes les informations récupérées par le site ne sont pas disponibles en clair. Cela veut dire qu’on ne trouvera pas forcément votre mot de passe tel que vous le tapez au clavier, car celui-ci sera habituellement chiffré à l’origine, sur le site qui a été piraté. Il est chiffré car c’est un standard lorsqu’on gère un site web : on chiffre les mots de passe des utilisateurs dans les bases de données.
Deux choses à noter :
- Cela n’implique pas que votre mot de passe est indéchiffrable.
- Cela vous donne un sérieux avertissement vous poussant à changer les mots de passe des adresses e-mail concernées ET DE TOUS LES COMPTES UTILISANT LE MÊME MOT DE PASSE.
Pourquoi changer tous les comptes utilisant le même mot de passe ? Tout simplement pour éviter ce que l’on appelle le credential stuffing consistant à profiter des utilisateurs qui ont le même mot de passe et la même adresse e-mail à travers différents sites, pour les pirater.
Saura-t-on que j’étais inscrit(e) sur un site sensible/peu recommandable ?
Non. Le site a prévu ce cas (en sachant que des sites de rencontres extra-conjugales ont été piratés) et a donc empêché l’accès public à ces informations. Cela dit, vous pouvez faire vérifier votre adresse e-mail et ainsi savoir si votre adresse e-mail se trouve bien dans ces données sensibles.
Comment tester si mon mot de passe a pu être récupéré suite à un piratage ?
Le mot de passe est une donnée très sensible, je vous rassure donc par avance, il n’est pas question de communiquer votre mot de passe à qui que ce soit, ne serait-ce que pour « tester » s’il est connu. On utilisera pour cela un redoutable stratagème nous permettant de « chiffrer » notre mot de passe et de comparer ce « chiffrement » avec les mots de passe en version chiffrée que connaît le site haveibeenpwned. Et en parlant de mots de passe que connaît haveibeenpwned, sachez qu’il y a, à l’heure de la rédaction de ces lignes, 501 millions de mots de passe uniques, soit 9 Go de mots de passe !
La page suivante vous permet de tester si votre mot de passe est connu mais avant de cliquer je vous propose d’ajouter un niveau de sécurité supplémentaire avant de transmettre votre mot de passe. Le risque zéro n’existe pas, alors autant prendre des précautions :
On va tout d’abord « chiffrer » notre mot de passe à l’aide de l’algorithme de hachage SHA-1.
Note pour les connaisseurs : même si j’utilise le mot « chiffrer », il s’agit de hachage et non pas de « chiffrement » à proprement parler. Car avec SHA-1 il n’est pas possible de retrouver les données avec un quelconque « déchiffrement ». Et cela tombe bien, c’est ce que l’on souhaite obtenir. On va comparer des hashs entre eux sans avoir à connaître le mot de passe initial. Cela fonctionne car si par exemple le hash de « motdepasse » est 12ef45, alors si l’on teste 12ef45 et que celui-ci existe, c’est que « motdepasse » existe.
En fait, haveibeenpwned nous permet de passer par une API pour tester un mot de passé hashé en SHA-1. Mieux encore, il nous permet d’envoyer qu’une partie du hash afin d’obtenir tous les mots de passe commençant par ce hash. Il nous restera à vérifier si notre hash se trouve dans la liste retournée.
Une seule étape est donc nécessaire : générer le hash SHA-1 de notre mot de passe…et là le même problème se pose : il est possible de le faire en ligne, mais souhaitons-nous partager notre mot de passe sur un autre site ? Autant le faire directement sur Haveibeenpwned… Ou alors, on va créer notre propre script local qui nous permet d’effectuer ce « hachage SHA-1 ».
On décide de créer un script car malheureusement aucun outil de base sous Windows ne nous permet de faire un hachage SHA-1.
Méthode avec un script PowerShell
Disclaimer : Vous pouvez utiliser n’importe quel autre moyen de générer un hash, la méthode suivante est l’une des plus directe sous Windows, mais rien ne vous y oblige.
Vous pouvez ouvrir le Bloc Notes de Windows et y copier le texte suivant (pas d’inquiétude, c’est une fonction qui va uniquement calculer le hash SHA-1 d’une chaîne de caractère donnée) :
Function Get-StringHash([String] $String) { $StringBuilder = New-Object System.Text.StringBuilder [System.Security.Cryptography.HashAlgorithm]::Create("SHA1").ComputeHash([System.Text.Encoding]::UTF8.GetBytes($String))|%{ [Void]$StringBuilder.Append($_.ToString("x2")) } $StringBuilder.ToString() } $pass = Read-Host -Prompt 'Entrez une expression a hacher en SHA1' Get-StringHash $pass Write-Host "Appuyez sur une touche pour quitter ..." $pause = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
Puis enregistrer ce fichier sous un nom finissant par l’extension « .ps1 » :
Notez les guillemets autour du nom de fichier qui sont nécessaires.
Vous pouvez ensuite faire un clic droit sur votre fichier puis cliquer sur « Exécuter avec PowerShell ».
Celui-ci vous demandera enfin d’entrer un mot de passe et vous générera le hash SHA-1 en appuyant sur entrée.
Pour copier le hash, il suffit de le sélectionner et de faire un clic droit.
J’ai ici tapé le mot de passe super sécurisé « mdp ».
Si jamais vous avez des doutes ou que vous ne savez pas comment faire, je vous propose de ne rien faire ou d’utiliser une autre méthode : programme C#, script Javascript…etc pour générer le SHA-1 d’un mot de passe. Vous n’êtes pas non plus obligé(e) de tester votre propre mot de passe si vous n’avez pas envie.
J’admets à présent qu’on a un hash SHA-1, le « mien » étant ici : 00d70c561892a94980befd12a400e26aeb4b8599
Vérifions enfin sur le site haveibeenpwned, et plus précisément en le passant à l’API (attendez un peu si vous l’avez fait avec votre vrai mot de passe, on verra comment le faire de façon encore plus sécurisée dans quelques secondes) :
https://api.pwnedpasswords.com/pwnedpassword/00d70c561892a94980befd12a400e26aeb4b8599
Note : il faut bien passer le hash dans l’URL et non pas dans un autre champ de recherche.
Note 2 : L’API change régulièrement, et il ne m’est pas possible de suivre à la trace chaque changement en direct. Je vous propose donc de lire la documentation si les liens/méthodes présenté(e)s ici ne fonctionnent plus : https://haveibeenpwned.com/API/v2
Vous pouvez voir que non seulement il est connu mais qu’en plus 339 personnes ont utilisé le mot de passe « mdp » parmi toutes les données ayant été récupérées !
Vous pouvez aussi le vérifier en tapant directement « mdp » sur la page suivante : https://haveibeenpwned.com/Passwords
Encore mieux
Nous ne sommes même pas obligés d’envoyer tout le hash, mais seulement les 5 premiers caractères/chiffres. Dans ce cas le site nous renvoie tous les hashs qui commencent par la même série et c’est à nous de chercher la suite de ce hash parmi la liste retournée (une façon d’améliorer encore la sécurité du transfert de données) :
https://api.pwnedpasswords.com/range/00d70
Notez que le lien a changé, il utilise à présent « range ».
Et nous avons notre mot de passe mdp ici :
Les hashs retournés par le site sont incomplets, seule la partie APRÈS les 5 premiers caractères ou chiffres et affichée. Il vous faut donc chercher à partir du 6ème caractère de votre hash.
Est-ce que cela implique qu’on connaît le mot de passe de mon adresse e-mail ? (et potentiellement de mes autres comptes)
Non, pas forcément. Notamment si un autre utilisateur utilise le même mot de passe que vous. Dans l’exemple précédent, il n’y pas qu’un seul utilisateur qui a créé 339 comptes avec le mot de passe « mdp », quoique ?
Mais dans ce cas, c’est tout de même un avertissement que votre mot de passe est potentiellement facile à trouver avec des outils automatisés. En d’autres termes, si votre mot de passe est votre adresse e-mail sont détectés, mieux vaut changer cette paire adresse e-mail / mot de passe par mesure de sécurité.
Puis-je obtenir une alerte en cas de piratage de données contenant mes informations ?
Oui et c’est l’une des fonctionnalités les plus intéressantes du site haveibeenpwned. Pour cela, cliquez sur le lien « Notifiy me » en haut de l’écran et entrez votre adresse e-mail.
Des questions, des remarques ou des choses à ajouter, n’hésitez pas à écrire un commentaire.
Source et explications additionnelles.
Que faire si votre compte a été piraté.