Jeudi, Blizzard a annoncé avoir été victime d'une intrusion sur son réseau Battle.net, qui a permis aux hackers de mettre la main sur une base de données comprenant des noms des utilisateurs, leur adresse e-mail, la réponse à la "question de sécurité personnelle", et des données relatives à la double authentification. Les joueurs connectés aux serveurs nord-américains (Amérique du Nord, Amérique Latine, Australie, Nouvelle-Zélande et Asie du Sud-Est) seraient les seuls concernés, même si rien n'est encore totalement exclu pour les joueurs européens.
Pour rassurer sur la portée de l'incident, Blizzard a expliqué que les mots de passe en clair n'avaient pas été compromis. "Nous savons que les versions brouillées de manière cryptographique (et non les versions réelles) de mots de passe Battle.net de personnes jouant sur des serveurs nord-américains ont été volées. Nous utilisons le protocole SRP pour protéger ces mots de passe, ce qui rend extrêmement difficile l’extraction du mot de passe réel et qui implique que chaque mot de passe doit être décodé individuellement", a ainsi expliqué Blizzard.
Cet optimisme est mis en doute par Jeremy Spilman, le fondateur d'une société spécialisée dans la fourniture de solutions de sécurisation. Il confirme que le protocole SRP sur lequel repose Blizzard fait que les bases de données de Battle.net contiennent non pas le mot de passe en clair, mais une version "hashée", c'est-à-dire la signature électronique de chaque mot de passe. Lorsque l'utilisateur veut se logger, c'est la signature de son mot de passe qui est comparée à cette base, et non le mot de passe lui-même. C'est une technique bien connue, utilisée sur de nombreux sites (dont Numerama), mais qui n'est pas infaillible.
Spilman rappelle en effet que selon le protocole SRP, pour établir un mot de passe P, Blizzard génère un "sel" s aléatoire puis effectue ces équations :
- x = SHA1(s | SHA(nom_utilisateur | “:” | P))
- v = g^x % N
Dans ses bases de données, Blizzard stocke la valeur de vérification du mot de passe (v), et le sel (s) qui a servi de base unique à la génération du "hash". Comme le montre la formule, le v est obtenu à partir du mot de passe hashé (x), et de deux valeurs g et N. Or il semble que Blizzard a communiqué ces deux valeurs pour permettre aux développeurs de s'interfacer avec ses systèmes (on les retrouver sur un code source hébergé par Github). Le hacker, lui, possède les valeurs "nom_utilisateur", v et s.
Il a donc tout ce qu'il faut en main pour générer des hashs à partir d'un dictionnaire de mots de passe pour chaque "sel" différent contenu dans la base, et savoir à quel mot correspond quel hash présent dans la base. Selon Jeremy Spilman, un ordinateur basé sur un processeur i7 – 2600 permettrait de tester chaque jour 100 000 mots de passe sur 100 000 utilisateurs. "Puisque l'attaque a eu lieu il y a plus de cinq jours, des milliers de mots de passe d'utilisateurs ont probablement déjà été crackés", estime-t-il.
D'heureuses contraintes dans le choix du mot de passe
Cependant, la théorie de Spilman repose pour une large part sur l'idée que les joueurs utilisent massivement des mots de passe présents dans les dictionnaires de mots de passe. Or la probabilité est rendue beaucoup plus faible par les contraintes imposées par Blizzard. L'éditeur oblige en effet à respecter certains critères pour accepter un mot de passe :
- Votre mot de passe doit compter entre 8 et 16 caractères.
- Votre mot de passe ne peut être consitué que de lettres (A à Z), chiffres (0 à 9) et/ou ponctuation.
- Votre mot de passe doit contenir au moins une lettre et un chiffre.
- Le nom de votre compte ne peut pas vous servir de mot de passe.
La seule contrainte que nous avons mise en gras doit suffire à écarter nombre de mots de passe présents dans les dictionnaires. Ce qui donne raison à Blizzard lorsqu'il dit, non pas que le SRP empêche de découvrir les mots de passe, mais qu'il "rend extrêmement difficile l’extraction du mot de passe réel".
+ rapide, + pratique, + exclusif
Zéro publicité, fonctions avancées de lecture, articles résumés par l'I.A, contenus exclusifs et plus encore.
Découvrez les nombreux avantages de Numerama+.
Vous avez lu 0 articles sur Numerama ce mois-ci
Tout le monde n'a pas les moyens de payer pour l'information.
C'est pourquoi nous maintenons notre journalisme ouvert à tous.
Mais si vous le pouvez,
voici trois bonnes raisons de soutenir notre travail :
- 1 Numerama+ contribue à offrir une expérience gratuite à tous les lecteurs de Numerama.
- 2 Vous profiterez d'une lecture sans publicité, de nombreuses fonctions avancées de lecture et des contenus exclusifs.
- 3 Aider Numerama dans sa mission : comprendre le présent pour anticiper l'avenir.
Si vous croyez en un web gratuit et à une information de qualité accessible au plus grand nombre, rejoignez Numerama+.
Si vous avez aimé cet article, vous aimerez les suivants : ne les manquez pas en vous abonnant à Numerama sur Google News.