Un problème dans KeePass permet de connaître le mot de passe principal !
Le gestionnaire de mots de passe KeePass est vulnérable à l’extraction du mot de passe principal de la mémoire de l’application, ce qui permet aux attaquants qui compromettent l’appareil de récupérer le mot de passe même si la base de données est verrouillée. L’expert qui a découvert le problème a déjà publié un exploit PoC dans le domaine public .
Dans le même temps, il n’y a pas encore de correctif pour la vulnérabilité. La vulnérabilité, qui a reçu l’identifiant CVE-2023-3278 , a été découverte par un spécialiste de la sécurité de l’information connu sous le surnom de vdohney.
Il explique qu’il est possible de récupérer le mot de passe principal KeePass en texte clair sans le ou les deux premiers caractères, et que l’espace de travail KeePass soit verrouillé ou non (le programme peut être fermé complètement).
« KeePass Master Password Dumper est un simple outil PoC utilisé pour extraire le mot de passe principal de la mémoire KeePass. Excepté le premier caractère du mot de passe, il est capable de récupérer l’intégralité du mot de passe en clair, selon la page d’exploit sur GitHub. – L’exécution de code sur le système cible n’est pas nécessaire, seul un vidage mémoire est nécessaire. Peu importe d’où vient la mémoire. Il peut s’agir d’un vidage de processus, d’un fichier d’échange (pagefile.sys), d’un fichier d’hibernation (hiberfil.sys) ou d’un vidage RAM de l’ensemble du système. Peu importe que l’espace de travail soit verrouillé ou non.«
Le problème est lié au fait que KeePass utilise un champ de mot de passe spécial – SecureTextBoxEx, qui laisse en mémoire des traces de chaque caractère saisi par l’utilisateur.
Le chercheur dit que la vulnérabilité affecte définitivement la dernière version de KeePass, 2.53.1, et puisque le programme est open source, tous les forks du projet sont susceptibles d’être affectés. Dans le même temps, selon lui, KeePass 1.X, KeePassXC et Strongbox ne sont pas sujets à des vulnérabilités.
Bien que l’exploit n’a été testé que sur Windows, il devrait également fonctionner sur Linux et macOS avec quelques modifications, car le problème ne vient pas du système d’exploitation, mais de la façon dont KeePass gère les entrées utilisateur.
Le chercheur avertit que les mots de passe maîtres utilisés dans le passé peuvent également rester en mémoire et peuvent être récupérés même si KeePass ne fonctionne plus sur la machine infectée.
Le développeur de KeePass, Dominik Reichl, a déclaré qu’il était déjà au courant de ce bogue. Il promet de publier un correctif pour CVE-2023-32784 dans la version 2.54, qui est attendue début juin. KeePass 2.54 pour Windows bénéficiera de ces deux améliorations, tandis que les versions macOS et Linux n’obtiendront que la dernière. Une version test est déjà disponible pour ceux qui le souhaitent .
Vdohney a déjà confirmé que les correctifs fonctionnent. Cependant, il avertit que même après la sortie d’une nouvelle version, le mot de passe principal KeePass peut toujours être stocké dans des fichiers mémoire. Pour vous assurer qu’il ne reste pas quelque part dans les entrailles du système, vous devez supprimer les fichiers de pagination et d’hibernation du système, formater le disque dur en utilisant le mode d’écrasement des données pour empêcher la récupération des données et réinstaller le système d’exploitation.
« SecureTextBoxEx, qui laisse en mémoire des traces de chaque caractère saisi par l’utilisateur. »
Magnifique…
« Pour vous assurer qu’il ne reste pas quelque part dans les entrailles du système, vous devez supprimer les fichiers de pagination et d’hibernation du système, formater le disque dur en utilisant le mode d’écrasement des données pour empêcher la récupération des données et réinstaller le système d’exploitation. »
C’est plus simple et plus rapide de changer de mot de passe principal, non ?
C’est un peu comme cacher la clé sous le paillasson à l’entrée de la maison ^^’
Article utile et intéressant, mais petite erreur de traduction je crois dans « En plus du premier caractère », c’est plutôt « Excepté le premier caractère ».
« supprimer les fichiers de pagination et d’hibernation du système, formater le disque dur en utilisant le mode d’écrasement des données pour empêcher la récupération des données et réinstaller le système d’exploitation. »
Super light procédure 🙂
« Pour vous assurer qu’il ne reste pas quelque part dans les entrailles du système, vous devez supprimer les fichiers de pagination et d’hibernation du système, formater le disque dur en utilisant le mode d’écrasement des données pour empêcher la récupération des données et réinstaller le système d’exploitation. »
Ou tout simplement changer de mot de passe principal une fois la version de test installée.
Tout comme pour les sites internet ou on parle de 2FA, savez vous que vous pouvez mettre en place ce genre de choses sur KeePass ? Générer un certificat aléatoire offline que l’on renouvèle régulièrement vous protégera de cette faille