Les mesures de sécurité à appliquer pour protéger les comptes et les données des internautes ne sont pas imposées. Les textes, notamment le RGPD[1], demandent uniquement aux éditeurs de prendre des « mesures adaptées aux risques »[2], libre à l’organisme, ensuite, d’étudier son besoin et de mettre en place les mesures qu’elle juge nécessaires.

Pour aider les organismes, les autorités comme l’ANSSI[3] ou la CNIL[4] font un certain nombre de recommandations. Ces recommandations ne doivent pas obligatoirement être appliquées. Elles servent plutôt de référence pour permettre aux organismes de connaître les mesures minimales de sécurité acceptées. Les organismes peuvent mettre en place d’autres mesures, à condition que ces mesures apportent une sécurité au moins équivalente.

Les données des internautes étant majoritairement protégées par des mots de passe, une recommandation spécifique aux mots de passe[5] a été établie par la CNIL. Ce document, qui date de 2017, et qui concerne aussi bien le format des mots de passe, que leur conservation ou leur renouvellement, va être mis à jour en 2022. La CNIL a préparé un projet de recommandations et propose de le commenter et d’y apporter d’éventuelles suggestions. N’étant pas avare de critiques envers de nombreuses politiques de la CNIL, je me dois d’apporter ma pierre à l’édifice si l’opportunité m’est donnée. Voici donc mes commentaires sur les travaux préparatoires de la CNIL et ma vision de ce que devrait être, à mon sens, la sécurité des mots de passe.

La forme et la composition des mots de passe évoluent à la marge

Concernant le format et la composition des mots de passe, la CNIL n’impose pas la même règle à tout le monde. Les exigences diffèrent selon que l’authentification repose uniquement sur un mot passe ou s’accompagne de mesures additionnelles.

La Commission distingue quatre cas :

  • lorsque l’authentification utilise uniquement un mot de passe : le mot de passe doit, dans ce cas, être de 12 caractères minimum, et être composé de majuscules, de minuscules, de chiffres et de caractères spéciaux.
  • lorsque l’authentification utilise uniquement un mot de passe et que le compte de l’utilisateur est bloqué, temporairement ou définitivement, après un certain nombre de tentatives incorrectes : le mot de passe doit, dans ce cas, être de 8 caractères minimum et doit comporter 3 des 4 catégories de caractères parmi les majuscules, les minuscules, les chiffres et les caractères spéciaux.
  • lorsque l’authentification utilise un mot de passe associé à un identifiant unique communiqué au préalable et que le compte de l’utilisateur est bloqué, temporairement ou définitivement, après un certain nombre de tentatives incorrectes : le mot de passe doit, dans ce cas, être de 5 caractères minimum, sans obligation d’utiliser des caractères particuliers.
  • lorsque l’authentification utilise un mot de passe, un équipement physique d’authentification, comme une carte à puce, et que le compte de l’utilisateur est bloqué définitivement après trois tentatives incorrectes : le mot de passe doit, dans ce cas, être de 4 caractères minimum, sans obligation d’utiliser des caractères particuliers.

Cela veut dire qu’un site Internet classique, un forum par exemple, qui propose aux internautes de créer un compte et qui ne prend aucune mesure par ailleurs, devra donc exiger un mot de passe de 12 caractères, composés de nombreux caractères particuliers, mais une banque, qui communique une carte bancaire et qui bloque la carte au bout de trois tentatives incorrectes, peut exiger uniquement un mot de passe de quatre chiffres.

De manière générale, on se rend compte que la longueur et la composition des mots de passe diminuent si des mesures complémentaires sont apportées par l’éditeur pour sécuriser le dispositif, l’idée étant de simplifier la tâche aux internautes en leur mettant le moins de contraintes possibles et de compenser avec des mesures plus strictes du côté de l’éditeur.

Cette logique est conservée dans les nouvelles recommandations de la CNIL. On retrouve ces quatre mêmes cas, mais avec quelques modifications mineures. La principale différence concerne la façon dont est évaluée la robustesse des mots de passe. Il n’y a plus de référence à la longueur des mots de passe ni à leur composition, mais à son entropie. L’entropie est un indicateur permettant de juger le caractère prédictible d’un mot de passe. Un mot de passe faisant référence à une date de naissance aura, par exemple, une entropie inférieure à un mot de passe utilisant huit chiffres aléatoires, même si dans les deux cas, la taille et la composition du mot de passe sont identiques.

La CNIL a donc repris les quatre cas précédents et leur a associé une entropie. Le premier cas doit avoir, par exemple, une entropie de 80 bits minimum, le deuxième de 50, le troisième de 27 et le quatrième de 13, avec essentiellement les mêmes contraintes que dans les recommandations précédentes.

L’utilisation de l’entropie à la place d’une longueur fixe et d’une composition donnée améliore, sans aucun doute, la sécurité du dispositif et comble les failles du dispositif initial, mais cela n’est pas, à mon sens, adapté aux risques et à la problématique réels.

Un nouveau paradigme à recommander

Ma vision de la sécurité des mots de passe est fondamentalement différente de celle proposée par la CNIL. Mes recommandations sont, par conséquent, tout aussi différentes.

Les principaux risques liés à l’utilisation des mots de passe sont le fait que :

  • les internautes utilisent un mot de passe prédictible ;
  • les internautes utilisent le même mot de passe partout.

Les nouvelles recommandations de la CNIL ne répondent en rien à ces risques. Les internautes pourront toujours utiliser leur même mot de passe habituel, partout. Ce mot de passe aura peut-être une bonne entropie, sera peut-être toujours composé de caractères spéciaux – grâce à quelques tours de passe-passe, comme mettre la première lettre en majuscule, remplacer un a par un @, ou rajouter son année de naissance à la fin –, mais il n’apportera pas une meilleure protection.

Le fait d’accepter un mot de passe plus faible sous prétexte d’ajouter des protections complémentaires est également surprenant, car cela n’apporte pas une sécurité suppplémentaire et cela complexifie la compréhension, aussi bien pour les utilisateurs que pour les éditeurs.

Si un éditeur décide d’ajouter des protections complémentaires, comme la suspension temporaire ou définitive du compte de l’utilisateur, ces mesures devraient apporter une couche supplémentaire de sécurité, mais ne devraient pas être un prétexte pour baisser la robustesse du mot de passe de l’internaute. Aussi, en demandant à certains sites d’exiger un mot de passe de 12 caractères mais pas à d’autres, sous prétexte qu’une mesure de sécurité complémentaire (mais souvent invisible et invérifiable) serait prise, ne fait que compliquer le travail des internautes, qui devront parfois utiliser X caractères, parfois plus, parfois moins, parfois avec des caractères spéciaux, ou parfois sans.

Ces nouvelles recommandations sur la sécurité des mots de passe peuvent être l’opportunité de voir les choses autrement, sous un autre angle.

Je propose de distinguer plusieurs cas, mais pas les cas présentés par la CNIL. Les règles seraient différentes selon que les mots de passe doivent être mémorisés par l’internaute ou non.

Si le mot de passe ne doit pas nécessairement être mémorisé, il n’y a aucune raison de ne pas imposer des mesures très strictes, par exemple plus de 50 caractères aléatoires. Cela forcerait l’internaute à noter son mot de passe, que ce soit dans un gestionnaire de mot de passe, dans son navigateur ou sur un bout de papier. Pour les plus septiques qui pensent que le fait de noter son mot de passe est mal, je ne peux que conseiller la lecture de cet article, que j’ai écrit à ce sujet : « Vous devriez noter vos mots de passe ». Pour éviter que ce mot de passe soit réutilisé par l’internaute, ce mot de passe pourrait même être généré par l’éditeur et imposé à l’internaute.

Si le mot de passe doit être mémorisé, ce que je considère être une exception à la règle, il faut l’associer à des restrictions et le coupler, selon la nature des données à protéger, à un deuxième facteur d’authentification comme une application d’authentification, une clé de sécurité ou la possession d’un appareil spécifique. J’aimerais cependant insister sur le fait que ce cas devrait nécessiter une justification poussée de l’éditeur et devrait être utilisé uniquement dans certains cas précis, par exemple pour accèder à un gestionnaire de mots de passe ou pour utiliser une carte bancaire.

Dans les deux cas, les mesures complémentaires de sécurité, comme la suspension temporaire du compte en cas de X tentatives incorrectes, devraient servir uniquement à améliorer la sécurité du dispositif et ne devraient pas justifier une baisse des exigences de la composition du mot de passe.

La conservation des mots de passe

Pour ce qui est de la conservation des mots de passe, il n’y a pas de débat à avoir sur le fait que les mots de passe ne devraient être jamais stockés en clair. Les études ont également montré que l’utilisation d’un sel[6] unique et d’une fonction de hachage[7] robuste, nécessitant une certaine puissance de calcul ou un certain temps de calcul, sont à privilégier[8].

La réalité est malheureusement bien différente, parce que les systèmes anciens ne sont pas mis à jour et parce que les professionnels ne sont pas tous sensibilisés, mais aussi et surtout parce que les éditeurs ne sont pas forcés à modifier leurs pratiques. Les contrôles de la CNIL sont trop peu nombreux et les sanctions pour les mauvais élèves ridicules.

Pour illustrer cette réalité, voici quelques exemples récents :

  • les mots de passe de 1,2 million de clients de l’hébergeur américain GoDaddy, en septembre 2021, étaient stockés en clair et ont été dérobés par un attaquant[9] ;
  • les mots de passe des utilisateurs du Sénat français étaient (et sont toujours ?) stockés en clair en mars 2021[10].

Même si je pense qu’un durcissement des sanctions à l’égard des entreprises peu soucieuses de la sécurité des internautes pourrait améliorer cette situation, je ne considère pas que la multiplication des contrôles soit nécessairement la solution à tous les maux. Je propose donc d’obliger les éditeurs qui stockent des mots de passe de publier la façon dont ces mots de passe sont stockés. Cela forcerait les éditeurs à assumer leurs choix et permettrait aux internautes de contrôler la façon dont leurs mots de passe sont traités, au même titre que les internautes peuvent contrôler, depuis l’entrée en application du RGPD, la façon dont leurs données personnelles sont traitées. Il va sans dire qu’un manquement à cette éventuelle obligation ou une déclaration incorrecte devrait être sévèrement puni, comme ce que propose actuellement le RGPD.

Avec un tel dispositif, je ne doute pas un instant que les utilisateurs joueraient leur rôle et mettraient la pression sur les éditeurs pour qu’ils mettent à jour leurs systèmes.

Je suis conscient que cela divulguerait une information relative à la sécurité de l’éditeur. Je ne considère cependant pas qu’une telle information affaiblisse notablement la sécurité des systèmes, n’étant pas un adepte de la sécurité par l’obscurité[11]. Je pense que les bienfaits d’une telle mesure surpasseraient largement l’éventuelle baisse de sécurité.

Le renouvellement des mots de passe

Pour ce qui est du renouvellement des mots de passe, deux cas sont traités dans le projet de recommandations de la CNIL : le renouvellement périodique des mots de passe et la réinitialisation du mot de passe sur demande de l’utilisateur.

Concernant le renouvellement périodique des mots de passe, je ne peux que me satisfaire de constater que la CNIL ne recommande plus le renouvellement forcé des mots de passe, pour avoir déjà plaidé dans ce sens[12].

Concernant la réinitialisation du mot de passe sur demande de l’utilisateur, je crois qu’il est important de rappeler que la sécurité d’un dispositif repose toujours sur la sécurité de son élément le plus faible. Dans le cas des mots de passe, la réinitialisation du mot de passe est pratiquement toujours le maillon faible, car le système envoie généralement un lien à l’utilisateur par e-mail, ce qui est loin d’être idéal, d’une part, parce que les e-mails ne sont pas un moyen de communication sécurisé[13], et d’autre part, parce que la compromission de la boîte mail de l’utilisateur permettrait à un attaquant de définir un nouveau mot de passe et d’accéder à son compte.

Je n’ai malheureusement pas de solution miracle à proposer. On pourrait imaginer demander une information complémentaire à l’internaute, mais que faire si cette information complémentaire était elle-même oubliée ?

L’idée est donc de diminuer ce risque au maximum. Cela peut être fait, comme le propose la CNIL dans son projet de recommandation, en imposant une durée limite aux e-mails de réinitialisation ou en demandant une information personnelle à l’internaute, même si cela apporterait une protection marginale, car dans le premier cas, même avec une durée limite, un attaquant qui accéderait à la boite mail de l’internaute aurait la capacité de réinitialiser le mot de passe, et dans le deuxième cas, l’information personnelle pourrait très bien être connue par l’attaquant.

La solution est donc ailleurs. Elle peut passer dans certains cas par l’utilisation d’un deuxième facteur d’authentification, comme une application d’authentification ou une clé de sécurité, ou par l’utilisation d’e-mails chiffrés, même si ce dernier cas relève d’une utopie.

Par ailleurs, le fait de renforcer l’accès aux boites mail des internautes améliorerait aussi le dispositif. Cela peut être fait en encourageant les internautes à utiliser un mot de passe robuste ou en les encourageant à utiliser un deuxième facteur d’authentification, encore faut-il que les fournisseurs d’e-mails propose une authentification à deux facteurs, ce qui est loin d’être le cas aujourd’hui.

Le changement, c’est maintenant ?

Je suis conscient que la politique que je propose est significativement différente de celle actuellement mise en place et de celle envisagée, et qu’elle entrainerait un changement radical des habitudes de la majorité des internautes.

Je pense cependant que les internautes et que l’écosystème, aussi bien les appareils que les logiciels, sont prêts pour un tel changement. Le changement sera certes compliqué pour beaucoup, aussi bien pour les utilisateurs que pour les éditeurs, mais l’augmentation massive des incidents de sécurité et l’omniprésence des outils en ligne nous forcent à effectuer ce changement. La question n’est pas de savoir si ce changement aura lieu, mais quand il aura lieu ; et je pense que ce changement devrait intervenir maintenant.

Notes et références

  1. RGPD : Règlement Général sur la Protection des Données (Règlement (UE) 2016/679).
  2. Le RGPD indique que les entreprises traitant des données à caractère personnelles doivent prendre des « mesures techniques appropriées afin de garantir un niveau de sécurité adapté au risque » (source : RGPD, article 32-1).
  3. ANSSI : Agence Nationale de la Sécurité des Systèmes d’Information (ssi.gouv.fr).
  4. CNIL : Commission Nationale de l’Informatique et des Libertés (cnil.fr).
  5. Les recommandations de la CNIL sur la sécurité d’une authentification par mot de passe : Délibération n° 2017-012 du 19 janvier 2017.
  6. Le sel permet d’ajouter une composante aléatoire aux mots de passe pour éviter que deux mots de passe identiques aient la même empreinte. Le seul complique aussi la tâche à un éventuel attaquant qui déroberait la base de données contenant les empreintes des mots de passe, car l’attaquant ne pourrait pas pré-calculer les empreintes des mots de passe.
  7. Les fonctions de hachage sont des fonctions mathématiques qui permettent de calculer une empreinte d’un mot de passe, c’est-à-dire une suite de caractères représantant les mots de passe. Voir « Comment conserver les mots de passe et éviter qu’un attaquant ne les utilise ».
  8. Les fonctions de hachage qui nécessitent une certaine puissance de calcul ou un certaine durée de calcul sont à privilégier, car cette même puissance ou durée de calcul serait nécessaire à un attaquant qui déroberait la base de données des empreintes des mots de passe pour retrouver les mots de passe.
  9. L’hébergeur GoDaddy a rencontré un incident de sécurité en septembre 2021, qui a révélé que les mots de passe des clients étaient stockés en clair.
  10. Les mots de passe des utilisateurs du site du Sénat étaient stockés en clair en mars 2021. Voir « Le Sénat transmet les pages de son site Internet sans chiffrement et stocke les mots de passe de ses utilisateurs sans mesures de sécurité appropriées ».
  11. La sécurité par l’obscurité consiste à ne pas divulguer le fonctionnement de la sécurité d’un système. Certains pensent que le fait de garder secret le fonctionnement du système permet d’améliorer sa sécurité.
  12. Imposer le nouvellement des mots de passe aux utilisateur diminue, à mon sens, la sécurité des internautes. Voir « Forcer les utilisateurs à changer leur mot de passe affaiblit leur sécurité ».
  13. Les e-mails ne sont pas considérés comme des moyens de communication sécurisé, car le contenu des e-mails ne sont pas chiffrés. Voir « Les e-mails sont-ils un moyen de communication sécurisé ? » et « La sécurité des e-mails et les mirages de ProtonMail ».