web-dev-qa-db-fra.com

Stockage de la base de données KeePass dans le cloud. Dans quelle mesure?

Il serait certainement plus pratique de stocker ma base de données KeePass sur S3, Dropbox ou mieux encore SpiderOak. Ma peur est de voir mon compte de stockage cloud compromis, puis de récupérer les informations d'identification par la force brute ou un autre vecteur d'attaque. Est-ce sûr? Quels risques dois-je connaître?

54
dperry1973

Il est difficile de quantifier exactement, mais si vous avez la base de données sur un appareil mobile, je ne dirais pas que cela est particulièrement moins sécurisé. KeePass crypte la base de données car le fichier restant sécurisé ne devrait pas être une garantie. Il est certainement préférable que le fichier DB ne se déchaîne pas, mais si votre sécurité dépend du fait que le fichier crypté reste confidentiel, vous avez plus de problèmes que d'utiliser ou non le stockage cloud.

Un mot de passe maître suffisamment fort devrait empêcher le forçage brutal au moins assez longtemps pour qu'une brèche soit détectée et pour que vous puissiez changer les mots de passe en son sein. De cette façon, il peut même être légèrement préférable d'avoir une copie locale sur un appareil mobile car quelqu'un peut compromettre le fichier si vous quittez les yeux de votre appareil même momentanément et il serait beaucoup plus difficile d'identifier cette violation.

Si vous souhaitez le sécuriser encore plus, vous pouvez ajouter une autre couche de sécurité en chiffrant le fichier que vous stockez en ligne dans le stockage cloud. Le mot de passe principal offre une assez bonne sécurité tant que vous choisissez un mot de passe difficile à forcer (long et vraiment aléatoire), mais il ne peut toujours pas rivaliser avec une véritable clé de chiffrement longue. Si vous cryptez le fichier que vous stockez en ligne, puis conservez cette clé avec vous protégé par un mot de passe principal similaire, le composant en ligne est désormais beaucoup, beaucoup plus difficile à décrypter (probablement impossible s'il est fait correctement) et si votre fichier de clé est compromis, vous recryptez simplement votre base de données en ligne immédiatement avec une nouvelle clé. Vous avez toujours des problèmes si quelqu'un peut compromettre votre compte cloud en premier et obtenir le fichier, mais cela nécessite deux points de compromis au lieu d'un.

Personnellement, je finirais probablement par utiliser mon OwnCloud (qui est auto-hébergé), mais j'ai l'avantage d'avoir mon propre serveur Web personnel et je me rends compte que ce n'est pas une option dont tout le monde peut profiter. (La seule raison pour laquelle je ne l'ai pas, c'est que je n'ai pas particulièrement besoin de coordonner une base de données clé de cette manière.) Une solution basée sur le cloud public devrait cependant fonctionner comme une deuxième option.

34
AJ Henderson

Vous pouvez augmenter la résilience de votre base de données KeePass à la force brute en augmentant le nombre d'itérations PBKDF2 lorsque vous dérivez la clé de chiffrement de la base de données à partir de votre mot de passe. Vous pouvez le faire dans KeePass sous Fichier> Paramètres de la base de données> Sécurité. Personnellement, j'utilise environ 5 000 000 de tours (1 s de retard). N'oubliez pas que les appareils mobiles sont plus lents.

48
Matrix

J'utilise la combinaison KeePass-Dropbox. La base de données de mots de passe est chiffrée à l'aide d'une clé dérivée d'un mot de passe maître fort. Même si quelqu'un acquiert votre base de données de mots de passe cryptés via votre compte cloud, un mot de passe maître suffisamment fort rend les attaques par force brute irréalisables.

Autrement dit: Utilisez un mot de passe maître fort et arrêtez de vous en soucier.

21
Adi

Le cloud est intrinsèquement non fiable et les fichiers qui y sont conservés doivent être considérés comme vulnérables, vous avez donc besoin d'un cryptage fort pour vous protéger. KeePass offre cela. Cependant, vous devez ensuite pouvoir faire confiance à chaque client dans lequel vous entrez votre mot de passe. Si vous les lisez sur un iPhone, faites-vous confiance à la plateforme? Protégez-vous votre mot de passe des caméras du métro lorsque vous y entrez, à chaque fois? Et votre ordinateur portable?

Vous devez également tenir compte de la valeur de ce que vous protégez. Est-ce que cela protège vos fonds de retraite? Votre ligue de bowling fantastique marque? Dissension politique illégale dans votre pays? Dans certains cas, cela ne vaut tout simplement pas le risque de faire une erreur.

Alors oui, tant que vous faites confiance à KeePass, faites confiance à vos appareils et faites confiance à votre capacité à garder votre clé principale sécurisée, ne vous inquiétez pas de garder la base de données dans Dropbox.

9
John Deters

Même si votre base de données KP devait être compromise par Dropbox, l'utilisation à la fois d'un mot de passe fort et d'un fichier de clés pas stocké dans Dropbox devrait vous donner une sécurité au-delà de tout moyen connu d'attaque électronique (tant que vos appareils ne sont pas déjà compromis).

Le fichier de clés doit être stocké dans un emplacement sécurisé séparé, tel qu'une clé USB que vous pouvez sécuriser physiquement. Cela fournit 3 couches de protection:

  1. Compte Dropbox (supposez une faible sécurité)
  2. Votre mot de passe fort (fort)
  3. Votre fichier de clés (aussi sécurisé que vous le créez)
7
HourOfTheBeast

Alors qu'un chiffrement suffisamment fort devrait être capable de résister aux attaques par force brute, considérez qu'en stockant votre base de données de mots de passe dans le cloud, vous donnez à l'attaquant potentiel beaucoup plus d'informations qu'il ne pourrait en obtenir, par exemple un téléphone perdu avec la même base de données.

Chaque fois que vous modifiez un mot de passe, l'attaquant obtient une nouvelle base de données, qu'il peut utiliser avec les anciennes versions dans attaques par analyse différentielle . Vous aurez besoin d'un chiffre plus fort pour résister à cela, par rapport à simple COA . S'il se trouve également qu'il possède l'un de vos mots de passe (par exemple en piratant une base de données de mots de passe mal protégée sur l'un des sites que vous visitez), il peut être en mesure d'identifier ce mot de passe dans votre base de données. Cela ouvrirait des portes pour KPA qui pourrait être presque trivial si vous réutilisez des mots de passe.

Vous donnez également à l'attaquant des informations sur votre activité liée au mot de passe. Il saura à quelle fréquence vous modifiez vos mots de passe et pourra peut-être en déduire les mots de passe que vous modifiez.

Donc, si vous décidez de stocker votre base de données de mots de passe dans un cloud public,

  1. Choisissez un algorithme de cryptage puissant, résistant à la cryptoanalyse différentielle. Assurez-vous que chaque mot de passe de la base de données est salé individuellement.

  2. Modifiez le mot de passe principal régulièrement, de préférence aussi souvent que vous le faites avec votre mot de passe le plus précieux.

  3. Ne réutilisez pas les mots de passe.

5
Dmitry Grigoryev

Je proposerais une solution qui implique ce qui suit:

  • Fichier de base de données KeePass stocké sur un ordinateur local avec cryptage Full Disk (par exemple Veracrypt)
  • Fichier de clé KeePass stocké sur un disque USB externe
  • Cloud Storage 1 (par exemple Dropbox) pour contenir le fichier de base de données
  • Cloud Storage 2 (par exemple Google Drive) pour conserver une sauvegarde du fichier clé
  • Activer 2FA sur les deux comptes Cloud Storage (application d'authentification mobile préférable aux codes de message texte)

Comme tout le monde l'a mentionné, il est très important d'avoir un mot de passe maître fort pour votre fichier de base de données pour contrer les attaques par force brute. Mais si vous combinez cela avec un fichier clé, il devient pratiquement impossible de forcer brutalement.

Si Cloud Storage 1 est compromis, le fichier de base de données lui-même sans le fichier de clé sera impossible à forcer brutalement, sauf s'il existe une grave vulnérabilité de sécurité dans l'implémentation du chiffrement de Keepass.

Si Cloud Storage 2 est compromis, le fichier de clé lui-même est inutile sans le fichier de base de données. C'est juste une extension de votre mot de passe maître, il ne contient aucune donnée.

Je dirais qu'il serait hautement improbable que les deux stockages cloud soient compromis en même temps par le même attaquant. Pour cela, vous devez être une personne de haut niveau (par exemple, politicien, milliardaire, agent secret, etc.) :)

Si vous ne faites pas partie de ce qui précède et que vous êtes prêt à sacrifier un peu de sécurité en échange de la facilité d'accès (par exemple, vous oubliez toujours où vous avez mis le fichu disque USB), puis stockez le fichier de base de données et le fichier de clé sur l'ordinateur local . Cependant, dans ce cas, l'ordinateur local devient le point faible, s'il est compromis, l'attaquant aurait accès au fichier de clé, il lui suffirait donc de forcer brutalement le mot de passe principal sur la base de données, il vaut donc mieux en définir un fort. Ce serait la même chose que de ne pas utiliser du tout de fichier de clés.

4
user172957

Si vous voulez vraiment être sérieux, exécutez Boxcryptor en conjonction avec Dropbox. Boxcryptor crypte tout à votre extrémité AVANT d'envoyer aux serveurs Dropboxs. Tout ce qui se trouve à la fin de Dropbox est une charge de choses cryptées. Votre base de données Keepass finit par être doublement chiffrée!

2
MikeB

Je suis un fervent partisan de la défense en profondeur à ce sujet.

Quelle que soit la force de votre mot de passe, il est également inchangeable.

Donc, pour protéger ma base de données Keepass, j'utilise trois couches:

  • La base de données a une phrase de passe forte (pas seulement un mot de passe). Je n'utilise pas de fichier de clé car, pour moi, le risque de perdre le fichier de clé l'emporte sur les avantages de sécurité.
  • La base de données est stockée sur un système de fichiers crypté (j'utilise encfs. En soi, il a bien sûr été démontré qu'il n'est pas sûr, mais il ajoute encore une couche de protection).
  • La version chiffrée est téléchargée sur un serveur owncloud, fonctionnant sur mon propre matériel, et bien sûr via HTTPS.

Pourquoi le mot de passe ne peut pas être changé: bien sûr, vous pouvez changer le mot de passe, et il rechiffrera réellement la base de données Keepass, mais vous ne pouvez pas le changer rétroactivement sur les anciennes copies.

Surtout (mais pas seulement) si vous stockez la base de données dans le cloud, vous devez supposer qu'un adversaire s'est emparé de la base de données à un moment antérieur, avec un ancien mot de passe. Cela peut lui donner les informations qu'elle recherche.

1
Kevin Keane

Une autre option: utilisez uniquement le cloud pour transférer votre base de données vers votre prochain appareil, puis supprimez-la du stockage cloud. Cela exposerait votre base de données pendant une durée limitée. Pas exactement ce que vous demandiez, mais une option qui peut être envisagée en fonction de votre niveau de sécurité requis.

0
globetrotter

Je dis aller avec la solution cloud "chiffrée au client" de votre choix, chiffrer avec le plus d'itérations PBKDF2 avec lesquelles vous êtes à l'aise, le plus grand fichier de clés avec lequel vous pouvez vivre, et surtout, stocker les informations que vous gardez près de vous (localement) sur un lecteur AUTO-CRYPTAGE. Mettez un système de fichiers crypté au-dessus si vous le devez, mais le cryptage des données sujettes à la perte ou au vol, comme une clé USB, doit être automatique.

0
G DeMasters