1

My company is currently evaluating a product which comes with a browser-extension-based password manager. The password manager is peripheral to their core product, but is the only way to use it. We're trying to assess their security — we're not going to be storing super-confidential entries, but we do want to make sure there's at least a baseline level of security.

The company that offers the password manager claims that the master key that is used to encrypt/decrypt passwords is stored entirely client-side, and that only the encrypted passwords are stored on the server. However, we've seen a demo, and we know that you don't need to re-enter the master password (which is used to generate the master key) every time you decrypt a password, which indicated to us that the master key is being stored somewhere client-side.

My question is, how can a browser extension be securely storing this master key client-side? Any cookie- or localStorage-based solution would be completely insecure, no? I'm hoping to get a high-level understanding so we know what questions to ask on the security-side of things.

1 Answer 1

1

It is possible that the master password is asked to the user one time during the start of the app and, then, it will stay stored only in the RAM.
This way, the master password doesn't need to be written on the persistent memory (hard drive), so it is pretty secure.

But this schema does not allow the app to have a "forgot password" feature.

If the app need to have advanced features like the forgot password, it needs to store some secrets permanently. One way is to use the dedicated interface provided by the OS.
Many OS have a kind of software HSM which is dedicated to store secrets of the computer in the behalf of the apps (DPAPI for Windows, keystore for Android, ...). These software HSM are designed to implement all the protections against a physical attacker. So, even if no one of them are unbreakable, they try to slow the attacker as much as possible.

The best protection is the real HSM (H for Hardware) which is unbreakable without a significant money cost gear

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .