paint-brush
Le gestionnaire de mots de passe Chrome a trahi ma confiance il y a 13 ans. Je n'ai jamais oublié.par@lucasneves
1,164 lectures
1,164 lectures

Le gestionnaire de mots de passe Chrome a trahi ma confiance il y a 13 ans. Je n'ai jamais oublié.

par Lucas Neves10m2024/03/02
Read on Terminal Reader

Trop long; Pour lire

La désillusion concernant le stockage des mots de passe dans Chrome conduit à un voyage de 13 ans pour créer un meilleur gestionnaire de mots de passe. S'appuyant sur son expérience personnelle face aux exploits les plus effrayants au monde en matière de cybersécurité diplomatique, l'auteur explore 3 principes de sécurité pour guider la conception d'une manière non conventionnelle de conserver les mots de passe.
featured image - Le gestionnaire de mots de passe Chrome a trahi ma confiance il y a 13 ans. Je n'ai jamais oublié.
Lucas Neves HackerNoon profile picture
0-item
1-item
2-item


C'est le voyage de 13 ans qui a abouti à Neulock , une approche différente de la gestion des mots de passe. Voici les articles[0] de articles.length == 2.

Première partie

C’était en 2011. Contagion était encore du matériel cinématographique ; les gens communiquaient en utilisant des visages monochromes au lieu des doges Pepe la grenouille et Shiba Inu, et Daenerys Targaryen était la petite fille qui a permis au barbare Khal Drogo de trouver l'amour.


Cours, Drogo ! Courez tout le monde ! Image de Tina Riordan sur Pinterest.


C’est à ce moment-là que Google Chrome a fait cette offre pour la première fois.


Voulez-vous que Google Chrome enregistre votre mot de passe pour ce site ?


Enregistrer ce mot de passe ? Est-ce une chose que font les navigateurs maintenant ? Wow, merci, Chrome, c'est tellement pratique ! À bien y penser, je tape la plupart des mots de passe sur un navigateur Web, cela semble donc être un excellent endroit pour les enregistrer.

D’ailleurs, quel est le pire qui puisse arriver ? Chrome est un programme installé sur mon ordinateur. Mon ordinateur! Je suis un utilisateur chevronné de Debian Linux, et nulle part dans l'univers il n'y a d'endroit plus sûr que mon disque dur !

Bien sûr, Chrome, allez-y. Enregistrez ce mot de passe, le suivant et chaque mot de passe que je saisis dans vos champs de saisie.

Tromperie

Jusqu'à ce que j'achète un autre ordinateur. Après avoir abandonné Windows préinstallé pour la distribution Linux qui me plaisait à l'époque, la prochaine chose à faire était d'installer Chrome. Firefox Quantum était encore dans six ans, donc il n'y avait pas beaucoup de choix.


Connectez-vous avec votre compte Google? Bien sûr, pourquoi pas? Allons vérifier Facebook ou autre, et… hé, tu te souviens de mon nom d'utilisateur, Chrome ? Très bien, connectons-nous à Facebook. Attendez, pourquoi le champ du mot de passe est-il déjà rempli d'astérisques ? Non, cher Chrome, cela doit être un bug, je viens d'acheter cet ordinateur, votre base de données locale est intacte. Vous réaliserez votre erreur une fois que j'aurai cliqué sur le bouton de connexion. Et… je suis partant ?


Je suis immédiatement allé vérifier les paramètres de Chrome. Ce que j'ai vu n'a fait qu'augmenter mon horreur. Tous les sites Web et noms d’utilisateur que j’avais enregistrés étaient là, sur une liste. Les mots de passe en texte brut n'étaient qu'à un clic.


Deux attentes avaient été brisées. La première et la plus importante chose est que je ne m'attendais pas à ce que Chrome télécharge mes mots de passe sur les serveurs de Google sans demander mon consentement. Ils m'ont demandé de sauvegarder mes mots de passe, pas de les partager !


Mon visage lorsque j'ai réalisé que Chrome avait téléchargé mes mots de passe


La deuxième attente était un vœu pieux de ma part. Honte sur moi. Google est l'une des entreprises technologiques les plus cool au monde, et ses ingénieurs sont censés être des génies accomplissant l'impossible entre deux parties de ping-pong au Googleplex. Je pensais que Chrome stockait mes mots de passe de manière ultra-sécurisée et ne récupérait chaque mot de passe qu'au bon moment pour l'injecter comme un ninja dans le champ de saisie précis auquel il appartenait. Je ne m'attendais pas à les voir tous en texte clair.


Et je n'étais pas le seul à être choqué. Elliott Kember a qualifié la sécurité des mots de passe de Chrome de « folle ». Lors d'une autre discussion, Justin Schuh, le chef de la sécurité de Chrome, a simplement ignoré le problème de manière plutôt arrogante. Sir Tim Berners-Lee a pris le parti de Kember, qualifiant le gestionnaire de mots de passe de Chrome de « moyen d'obtenir les mots de passe de votre grande sœur ».


Après cette expérience, je n’ai jamais fait confiance à aucun gestionnaire de mots de passe, même si je savais que c’était mieux que de confondre des mots de passe étranges dans ma stupide tête humaine. Mais comme on dit au Brésil, un chien mordu par un serpent a peur même des saucisses. Cela n'a pas plus de sens en portugais.

Un meilleur gestionnaire de mots de passe

J'ai passé les dix années suivantes à errer dans le désert de l'insécurité des mots de passe. J'avais envie d'un meilleur gestionnaire de mots de passe, mais tous semblaient suivre le même principe : regroupez tous vos mots de passe dans un « coffre-fort », chiffrez-le avec votre clé principale et téléchargez ce coffre-fort sur leurs serveurs cloud. Je n'ai jamais pu faire confiance à ce modèle. Mettent-ils en œuvre un cryptage de bout en bout, n'est-ce pas ? Existe-t-il une porte dérobée de « récupération de clé » attendant d’être exploitée ? Ou peut-être que Justin Schuh avait raison après tout : vos mots de passe sont « trivialement récupérés » à partir de toute application qui les stocke, et les tentatives visant à rendre les mots de passe plus difficiles à divulguer ne sont « que du théâtre ». En ce sens, essayer de protéger vos mots de passe plus loin que de faire confiance à un gestionnaire de mots de passe était une tâche insensée de novice.


En 2019, j'ai atterri au département informatique du ministère des Affaires étrangères du Brésil. Là, j'ai suivi le CTO et gourou de la technologie Fabio Cereda . J'ai beaucoup appris de lui et j'ai pris sa relève après son départ. La cybersécurité était toujours à l'ordre du jour puisque ce ministère produisait environ 80 % de toutes les informations classifiées du gouvernement fédéral brésilien et que ses opérations étaient réparties sur 240 sites sur tous les continents habitables. Nous étions constamment visés par les acronymes les plus effrayants du monde, nous devions donc rester sur nos gardes à tout moment. Au fil de ces années, grâce à une exposition constante à des problèmes dans différents domaines de la cybersécurité, j'ai commencé à élaborer les principes d'un meilleur gestionnaire de mots de passe.

Principe n°0 : toute la cryptographie est cassée ou finira par être cassée

Il y avait un musée des communications diplomatiques où je travaillais. Il était rempli de livres de codes, de machines de chiffrement en fonte, d'antennes paraboliques portables, d'adaptateurs TELEX et de quelques spécimens de la tristement célèbre machine Crypto AG C-52 . C'était une vitrine d'un siècle et demi de communications secrètes entre le siège et les ambassades et missions diplomatiques brésiliennes à l'étranger. Tous s’appuyaient sur une sorte de crypto pour détenir les secrets. Toute cette cryptographie est désormais cassée.


Cette chose appartenait secrètement à la CIA. Crédit : Rama/Wikimedia Commons


Si vous pensez à un gestionnaire de mots de passe, le fait que tous les crypto-monnaies finissent par être brisés n'est pas effrayant. Disons qu'il faut en moyenne 15 ans pour briser un protocole cryptographique. Changez simplement vos mots de passe tous les deux ans et tout ira bien. Un gestionnaire de mots de passe décent devrait mettre à jour sa cryptographie de temps en temps afin que vous gardiez toujours une longueur d'avance.


Ce qui est effrayant, c’est qu’il est impossible de savoir si un protocole a déjà été rompu. Ou pire, s’il a été conçu avec une vulnérabilité intentionnelle et cachée, comme ce fut le cas avec la machine Crypto AG. Les agences de renseignement et les organisations cybercriminelles gardent leurs zero-days sous le radar aussi longtemps qu'elles le peuvent.


Plus je voyais les systèmes de sécurité de dernière génération de niveau entreprise divulguer des informations secrètes, parfois de manière catastrophique et spectaculaire, moins je faisais confiance au modèle de coffre-fort employé par tous les gestionnaires de mots de passe basés sur le cloud.


Jusqu’à très récemment, ces préoccupations étaient purement théoriques. Comme l' a écrit un collègue hackernooner @hossam26644 :


Il n'y a rien de mal à utiliser le gestionnaire de mots de passe de Google, Microsoft, Apple, 1password, Bitwarden ou autre. Les gens les utilisent depuis longtemps, sans aucun problème jusqu’à présent.


Il avait raison le 25 juillet 2022. Mais il ne faisait confiance à aucun d’entre eux, et il avait encore une fois raison. Un an plus tard, il y avait des preuves irréfutables que les fuites notoires de LastPass entraînaient le piratage de certains coffres-forts de grande valeur et des pertes d’argent. Plus de 150 personnes, plus de 35 millions de dollars en argent.


Une idée fausse courante est que pour qu’un coffre-fort chiffré soit piraté, l’ algorithme AES lui-même devrait être compromis. LastPass nous a rappelé à quel point il est plus facile de briser le cryptage. AES est solide, mais LastPass a pris de mauvaises décisions de mise en œuvre : des exigences de clé principale trop courtes, trop peu d'itérations et certains utilisateurs se sont retrouvés avec des coffres-forts facilement craquables par force brute.

Principe n°1 : la logistique est souvent le maillon de sécurité le plus faible

Les cryptanalystes gouvernementaux ne connaissaient que trop bien le principe n°0. Ils font partie des personnes les plus intelligentes que j’ai jamais rencontrées, et peu d’entre eux investiraient dans quelque chose de protégé uniquement par la cryptographie.


Les plus méfiants d’entre eux ont insisté sur l’utilisation d’un One-Time Pad (OTP) pour des communications hautement sécurisées. En fait, ils ont inscrit cette exigence dans la réglementation relative à la transmission et au stockage des documents top-secrets.


En principe, un chiffre OTP ne peut pas être déchiffré. Il s'agit d'une simple opération XOR du texte en clair (les données) et d'un tampon de valeurs aléatoires de la même longueur que les données (la clé OTP). En effectuant à nouveau un XOR sur le chiffre avec la même clé, le texte en clair est récupéré.


Bien qu’incassable du point de vue de la cryptanalyse, l’OTP présente plusieurs inconvénients :


  • Chaque clé OTP ne peut jamais être réutilisée ;
  • Une clé OTP doit être au moins aussi longue que le texte en clair ;
  • La clé est symétrique et doit être pré-partagée entre l’expéditeur et le destinataire.


Pour une organisation mondiale, fournir à chaque bureau des clés OTP est une vaste opération logistique continue. Pire encore, c’est le talon d’Achille de tout le modèle de sécurité ! Parce que, pour que toute la génialité cryptographique d’OTP soit vraie, vous avez besoin d’une logistique parfaite , à la fois en transit et au repos.


Dites bonjour à une valise diplomatique. Le droit international et rien d’autre ne le protège contre toute falsification. Crédit : Anfecaro / Wikimedia Commons


Eve devrait-elle intercepter vos clés OTP alors qu'elle est sur la route vers la destination ? À partir de ce moment, toutes vos communications sont compromises.


Eve devrait-elle forcer physiquement votre coffre-fort et voler votre clé multimédia OTP ? À partir de ce moment, toutes vos communications sont compromises, et peut-être même vos précédentes, si les parties utilisées de la clé n'ont pas été correctement effacées du support.


Si vous implémentez des clés OTP sous forme de morceaux de 1 Go d'octets aléatoires qui sont consommés lorsque vous envoyez des informations, il manque clairement de secret à la fois vers l'avant et vers l'arrière.


En fin de compte, la cryptographie parfaite est un moyen de transférer la responsabilité de l’équipe de cybersécurité à l’équipe de sécurité physique.

Et un problème similaire affecte les gestionnaires de mots de passe hors ligne : ils troquent la disponibilité contre la confidentialité, vous laissant avec un gâchis logistique à régler.


Comme le sait toute personne exécutant une copie locale de KeePass , vous devez sauvegarder votre coffre-fort. Il est préférable que cette sauvegarde soit externe au cas où le stockage de votre ordinateur s'épuiserait. Vous devez garder votre sauvegarde à jour. Et assurez-vous que personne n’y a accès. Et ne les gardez pas tous dans votre maison, de peur qu'ils ne soient la proie des inondations et des incendies. Et ne les téléchargez pas sur Google Drive ; sinon, vous n'utilisez plus de gestionnaire de mots de passe hors ligne. Et…


Votre sauvegarde est en cours de téléchargement sur le cloud. Image générée par Adobe Firefly

Principe n°2 : lorsqu'un appareil utilisateur est compromis, la partie est terminée

Un jour, mon patron m'a appelé. Elle souhaitait partager un PDF avec dix personnes de l'échelon supérieur. Cette information ne devrait rester à leurs yeux que trois jours. Elle savait qu'ils étaient incités à partager ce document avec leurs équipes respectives pour prendre une longueur d'avance. Ce type d'informations doit être présenté en personne, mais covid. Elle m'a donc demandé de rendre ce PDF impossible à copier et à partager.


— C'est impossible, répondis-je.


Mon patron était ambassadeur. C'est l'équivalent diplomatique d'un général. Les ambassadeurs ne sont pas habitués à entendre « non » comme réponse.

J'ai patiemment expliqué qu'en informatique, lorsque vous autorisez quelqu'un à lire une ressource, vous lui donnez implicitement l'autorisation de la copier et de la distribuer. Les droits d'accès à l'information n'obéissent pas aux droits légaux. Même si nous rendions le partage du fichier peu pratique, ils pourraient simplement prendre des photos de leurs écrans avec leur téléphone et les partager sur WhatsApp. S’ils peuvent voir le document à l’écran, leurs caméras le peuvent aussi.


Justin Schuh avait raison. Si quelqu'un obtient un accès complet à votre ordinateur (ou téléphone), il a un accès complet aux informations auxquelles vous, l'utilisateur, pouvez accéder via cet appareil. Il a raison, mais cela ne l'excuse pas d'avoir implémenté un gestionnaire de mots de passe aussi mauvais sur Chrome.


Qui n'a jamais intégré Back Orifice pour warez et pwn ses amis juste pour LOLz ? Source : nestor.minsk.by


Pour un gestionnaire de mots de passe, cela signifie que la protection de l'appareil de l'utilisateur est toujours essentielle. Si le serveur fuit, les attaquants doivent encore relever le défi de pirater les coffres-forts. Mais si un pirate informatique acquiert la propriété totale de l'ordinateur exécutant le client gestionnaire de mots de passe, rien ne l'empêche de voler tous les mots de passe.


Cela arrive assez souvent dans la communauté crypto. L'utilisateur Alice possède quelques dizaines de BTC, ce qui fait d'elle une millionnaire. Elle a été doxxée ou n'a jamais caché son identité en premier lieu. Elle conserve une copie de sa phrase de départ dans un gestionnaire de mots de passe local sur son bureau. « Ce n'est pas un gestionnaire de mots de passe cloud ; Je suis à l'abri des fuites », pense-t-elle. Les pirates trouvent un moyen de lui faire installer une porte dérobée sur son ordinateur. S'ils sont vraiment bons, ils peuvent le faire sans interaction de l'utilisateur. Le lendemain matin, elle se réveille avec un portefeuille vide.


Malgré tout le pessimisme entourant la compromission des appareils des utilisateurs, il y a un côté positif : la protection de nos propres appareils, en tant qu'utilisateurs, est quelque chose qui est sous notre contrôle. Une fuite de serveur ne l’est pas. Les plus de 150 personnes qui ont perdu des millions à cause de la fuite du serveur LastPass n’assument aucune responsabilité dans les fuites ou dans la mise en œuvre par LastPass de normes de cryptage inadéquates.


Si la compromission des appareils des utilisateurs est un vecteur d'attaque catastrophique, quel que soit le modèle de sécurité du gestionnaire de mots de passe, et si nous, en tant qu'utilisateurs, devons de toute façon protéger nos appareils, ne serait-il pas bien si c'était le seul vecteur d'attaque ? Si nous pouvions créer un gestionnaire de mots de passe en ligne dans lequel aucun secret ne quitterait les appareils des utilisateurs, afin que les utilisateurs n'aient pas à se soucier de choses hors de leur contrôle, comme la sécurité du serveur et les détails de mise en œuvre d'AES ?

Les ingrédients sont sur la table

L'auteur @hossam26644 a poursuivi dans son article : « Peut-être que je suis un maniaque de la sécurité, mais je ne veux pas confier mes mots de passe à une entité, quelles que soient ses promesses et/ou sa réputation ». Il a encore raison. La cybersécurité est censée être éprouvée et vérifiable, et non basée sur la confiance et la réputation.


Les trois principes décrits ci-dessus ont guidé mon développement de Neulock Password Manager . Il m'a fallu trois ans d'idéation et d'itérations pour arriver à sa forme actuelle : un gestionnaire de mots de passe auditable basé sur le cloud qui n'obtient aucune connaissance par conception et non par cryptage. Les mots de passe sont synchronisés sur les appareils des utilisateurs à l'aide du cloud, mais aucun secret ne quitte jamais ces appareils. Les compromissions de serveurs cloud ne peuvent divulguer aucun secret, car les secrets n'atteignent jamais le cloud.


Les trois années de réalisation de Neulock seront documentées dans la partie II.