Wie ich Eingangs bereits geschrieben habe, es ist immer eine Abwägung von Sicherheit und Anwendbarkeit. Das Ganze muss man, wie alles in der Informationssicherheit, Risikobasiert beurteilen. Also lass uns das mal sachlich und Faktenbasiert betrachten:
Bei der Keepass-DB sprechen wir von einem AES-256-verschlüsselten File. Das ist der Standard, der z.B. in den USA für Dokument mit höchster Geheimhaltungsstufe zugelassen ist. Die Sicherheit steht und fällt somit mit dem verwendeten Passwort. Bereits mit 12 Zeichen, bestehend aus Gross-/Kleinbuchstaben, Zahlen und Sonderzeichen, bist Du zum knacken bei einer geschätzten Rechenzeit von mehreren Millionen Jahren. Das ist der Schutz bzw. das Risiko, das Du aktuell hast, wenn jemand Dein Handy klaut oder Zugriff auf Deine Cloud erhält. Ob Dein verwendetes Passwort-Muster sicher ist, kannst Du z.B. hier überprüfen.
Als Vergleich zur Abwägung Deines Risikos: Unternehmen verschlüsseln die Festplatten für ihre Notebooks (mit sensiblen Geschäftsdaten), mit denen die Mitarbeiter in der Welt rum rennen, heute als Quasi-Standard mit Bitlocker mit meistens "nur" AES-128.
Bis dahin aus meiner Sicht ein vertretbares Risiko 😉
Jetzt kommt noch die Komponente Cloud, also z.B. Dropbox, ins Spiel: Dadurch erhöhst Du das Risiko, dass Deine Keepass-DB in fremde Hände gelangen könnte. In der Praxis ist das Risiko, dass jemand dadurch an Deine Daten gelangt, immer noch sehr gering - siehe oben. Nichts desto trotz minimieren wir jetzt aber dieses Risiko gleich wieder, in dem wir eben das Key-File - als zweiten Faktor - dazu nehmen. Das Key-File ist nichts anderes als ein zweiter hochsicherer Schlüssel. Wenn Du die DB mit "Passwort + Key-File" definierst, kannst Du sie nur noch öffnen, wenn beide Schlüssel passen. Da der zweite Schlüssel aber nur auf Deinen Geräten abgelegt ist, nicht aber auf der Cloud, ist die in der Cloud geklaute Keepass-DB faktisch wertlos.
Das Key-File musst auf jedem Gerät (Notebook, Handy, Home-PC, Tablet, ...), auf dem Du Keepass nutzen willst, vorhanden sein. Das Key-File aber auf gar keinen Fall auch auf die Cloud schmeissen! Wenn jemand Deinen Cloud-Zugang hacken würde, hätte er dann Deine Keepass-DB und das Key-File. Das wäre etwa so sinnvoll, wie wenn Du an Deiner Tür zwei Schlösser montierst und bei einem den Schlüssel gleich daneben hängst.😉
pacmexx schrieb:
Jetzt öffne ich von einem beliebigen externen Gerät aus, unter Nutzung des Passwortes und auf dem externen Gerät hinterlegtem Key-File, die Keepass-DB in der Dropbox
Nein, falscher Ansatz! Die Verbindung zu Deiner Dropbox erfolgt zwar über https, also verschlüsselt. Wesentlich sinnvoller und sicherer ist es aber, mit einer lokalen Kopie der Keepass-DB zu arbeiten. Die Synchronisation dieser lokalen Files sind Standard-Funktionen von Cloud-Diensten. Du öffnest die DB nicht auf der Cloud sondern nur lokal. Der Datenaustausch mit Anwendungen erfolgt somit ebenfalls lokal. Online - also zwischen Deinen Geräten und der Cloud - wird nur das das geschlossene DB-File (meinekeepassdb.kdbx) übertragen. Deine Zugangsdaten aus Keepass brauchst Du ja durchaus auch mal wenn Du offline bist, also keine Verbindung zu Deiner Dropbox hast.
Zum einen gibt es für alle gängigen Betriebssysteme lokale Sync-Clients (Ubuntu/Linux, Win, Mac, Android, ...) zum anderen beherrschen einige Keepass-Clients die Synchronisation gleich selbst. Ein Beispiel dafür wäre Keepass2Android.
Zur Funktionsweise: Du öffnest z.B. auf Deinem PC die Keepass-DB und legst einen neuen Eintrag an. Nach dem speichern / schliessen der Datei wird diese automatisch wieder zur Cloud synchronisiert. Von da wird das File dann wiederum auf jeden Client synchronisiert. Ist z.B. Dein Handy gerade offline, hast Du immerhin all Deine Zugangsdaten, bis auf den letzten neuen Eintrag den Du auf dem PC angelegt hast, zur Verfügung. Sobald Dein Handy wieder online ist, erfolgt die Aktualisierung.
kB schrieb:
Die Speicherung von sensiblen Daten in einer öffentlichen Clowd ist kein sicheres Verhalten.
Ideal wäre sicherlich das speichern in einer privaten Cloud, über die man selbst die Hoheit hat. Wenn aber der unbedarfte Otto-Normaluser selbst einen z.B. Nextcloud-Server betreibt und ihn nach extern zur Verfügung stellt, ist das Risiko in Summe wesentlich grösser, als eine Public-Cloud zu nutzen. Zudem sprechen wir hier nicht von Klartext-Daten, sondern hoch-sicher verschlüsselten Daten.
Die ständige Mitführung von sensiblen Daten auf einem Gerät, welches man verlieren kann, welches einem gestohlen werden kann, ist auch kein sicheres Verhalten.
Da gebe ich Dir in der Theorie natürlich recht, nur leider fernab der Praxis. Es gibt anno 2019 tatsächlich Leute, die ihre div. Zugangsdaten nicht nur im stillen Kämmerlein, sondern auch unterwegs benötigen. Wie machst Du das denn in der Praxis? Du schreibst Dir Zugangsdaten, die Du unterwegs brauchst, auf einen Zettel und steckst ihn in die Hosentasche? Das ist natürlich vieeel sicherer als eine mit einem starken Passwort verschlüsselte AES-256 Keepass-DB auf dem Handy...😉
Wer sich sicher verhalten will, muss bereit sein, die eigene Bequemlichkeit einzuschränken.
Ich kann natürlich dem TS eine relativ sichere Lösung anbieten: Alle Zugangsdaten, die im Keepass stehen, auswendig lernen. Das natürlich mit sicheren (also entsprechend langen, komplexen und regelmässig geänderten) Passwörtern. Keepass selbst auf einen USB-Stick speichern und in ein Bankschliessfach legen. Das Masterpasswort notieren und in einen verschlossenen Umschlag ebenfalls in ein Schliessfach bei einer anderen Bank legen. Natürlich musst Du dann bei jeder Passwortänderung zur Bank fahren und den USB-Stick entsprechend updaten. Wenn Du ab und zu das Masterpasswort änderst, auch noch zur zweiten Bank fahren und das hinterlegte Masterpasswort entsprechend updaten. Damit haben wir viele potentielle Risiken auf ein Minimum reduziert. Für die Anwendbarkeit dieses - aus reiner Security-Sicht - sichereren Ansatzes sehe ich allerdings schwarz...
oder welches ins Klo fallen kann
...und genau dafür ist es eben sinnvoll, wenn man die DB synchronisiert...
Nochmals: Sicherheit und Anwendbarkeit müssen immer ausgewogen sein! Wenn ich die reine Sicherheit so hochschraube, dass die Anwendbarkeit leidet, finden die User schnell irgendwelche Umgehungsmassnahmen. Dies führt dann dazu, dass die Sicherheit tatsächlich reduziert anstatt erhöht wird. Gerade der Umgang mit Passwörtern ist ein recht gutes Beispiel: Verbiete ich z.B. den Einsatz von Keepass auf mobilen Devices, führt das dazu, dass die User genau das tun, was wir nicht wollen: Für mehrere Accounts das selbe Passwort, triviale Passwörter, Passwörter werden nicht regelmässig (sprich nie) geändert, Zugangsdaten werden in Klartext notiert, ...