4 ms·
KeePass – weak on Android (and it's Android's fault)
If you're using KeePass on Android, you're most probably syncing your database via Dropbox, Google Drive, any other cloud service, or even some P2P sharing.
Whatever you're doing, there is a severe weakness in security that's due to Android.
An attacker could just operate as follows:
1. They build an app that has both the "" and the "" permission (most apps have that already)
2. As the external storage is publicly readable, they can just scan it for .kdb and .kdbx files
3. Any such files that have been found can be collected by the malicious app
4. (Optionally, the collected files could be encrypted locally by the malicious app)
5. The files can then be sent to a remote server in the background, without you ever noticing
6. Having a free app with millions of downloads is not that hard (and you could even buy one on eBay)
7. With millions of users, you may collect thousands of KeePass databases (stored on your remote server) that you can try to decrypt patiently
- throwaway9997 11y agoWhy are you keeping password files on shared storage? Android's internal storage mechanism allows you to save files that are only readable from your application using Linux's user permissions model. This looks like a PEBKAC rather than Android problem.
- marco1 11y agoNo, it's actually KeePass for Android that doesn't give you any other way to do this. You can't store your files in the app-private directories yourself without rooting your device. KeePass just asks for a path to a password file, so you have to put it on shared storage. Obviously, the problem is foremost a KeePass problem, secondarily an Android problem, and least PEBKAC.