Live data from Hacker News

Bitwarden design flaw: Server side iterations

palant.info

161–170 of 264 posts

Re: Bitwarden design flaw: Server side iterations

#162
post #148

I self-host bitwarden and you should too! You get the premium features for free when you self host This is an excellent step by step tutorial that tells you how to self host it: https://www.youtube.com/watch?v=eCJA1F72izc

I've given up trying to self host stuff like that, it's always a nightmare compared to paying for the service. Plausible Analytics being a prime example.

Bitwarden can have my $10 a year.

Re: Bitwarden design flaw: Server side iterations

#163
> Testing the guesses against the master password hash would be fairly slow: 200,001 PBKDF2 iterations here. But the attackers wouldn’t waste time doing that of course. Instead, for each guess they would derive an encryption key (100,000 PBKDF2 iterations) and check whether this one can decrypt the data.

I don't understand. As far as I know the key space of PBKDF2-SHA256 is 256 bits and the vaults are encrypted with 256 bit AES. Is the author arguing that Bitwarden is insecure because the attacker could (in a roundabout way) bruteforce 256 bit AES?

edit: I think I understand, the text didn't make it immediately obvious but I believe the author is talking about (configurable) 100k client-side iterations which are then used to obtain the "stretched master key" (from the diagram). This would render the 100k iterations done on the server pointless if an attacker already has a copy of the data, they only protect (slow down) the normal authentication flow.

Re: Bitwarden design flaw: Server side iterations

#164
post #160
post #11

Oof, my Bitwarden account was created a while ago and was set to only 5,000 iterations. You can see and change the number of iterations here: https://vault.bitwarden.com/#/settings/security/security-key... (or if you don't trust links for something like your password manager: log into your web vault, click on the top-right dropdown menu, then Account settings > Security > Keys). I've updated it to 600,000 iterations…

Why are you upping it up that much? I guess "too much is not a bad thing" in this case, and Bitwarden itself says: "We recommend a value of 100,000 or more.". When I see that I read: "With our knowledge of security and encryption, which by the way is much greater than yours, we consider that 100,000 is a perfectly safe number and a good middle point so go ahead and use it". Am I wrong to think like that? My Master pa…

OWASP seem to recommend that number. e.g. https://cheatsheetseries.owasp.org/cheatsheets/Password_Stor...

Re: Bitwarden design flaw: Server side iterations

#165
post #47

Tangentially related: why would a password manager provide a configurable iteration count? This is a number whose purpose is fairly hard to understand for many people and yet it’s an important corner stone for password security, especially for those who do not grasp the concept of an iteration count. This should absolutely be application managed and gradually increased over time. Also: while I understand that FIPS is…

> why would a password manager provide a configurable iteration count?

Because end user devices vary a lot in speed.

Re: Bitwarden design flaw: Server side iterations

#166
post #160
post #11

Oof, my Bitwarden account was created a while ago and was set to only 5,000 iterations. You can see and change the number of iterations here: https://vault.bitwarden.com/#/settings/security/security-key... (or if you don't trust links for something like your password manager: log into your web vault, click on the top-right dropdown menu, then Account settings > Security > Keys). I've updated it to 600,000 iterations…

Why are you upping it up that much? I guess "too much is not a bad thing" in this case, and Bitwarden itself says: "We recommend a value of 100,000 or more.". When I see that I read: "With our knowledge of security and encryption, which by the way is much greater than yours, we consider that 100,000 is a perfectly safe number and a good middle point so go ahead and use it". Am I wrong to think like that? My Master pa…

The current (and very recently updated) OWASP recommendation[1] is a minimum of 600 000 iterations

[1] https://cheatsheetseries.owasp.org/cheatsheets/Password_Stor...

Re: Bitwarden design flaw: Server side iterations

#167
PBKDF2 iterations is the last in what should be a chain of defence in depth best practices.

It gives limited protection against a database breach.

Your password service should have as a minimum the following extra defences.

- Hardware encryption of the master password hashes.

- Breach detection such as poison records.

- Database access controls that limit the blast radius of an attack.

- All admins should require a hardware key to access the database.

I'm sure there are many more.

You can defend yourself with the following...

- by having a very random master password.

- 2fa everywhere

- password horcruxing - see https://kaizoku.dev/double-blind-passwords-aka-horcruxing

Re: Bitwarden design flaw: Server side iterations

#168

I once leaned heavily upon Google Chrome as my password manager, but then I discovered that you could view the passwords in Chrome for Windows by knowing my Windows login password, instead of my Google password. This feels off topic a little, but in all the discussion of password managers lately, I seldom hear people talk about the web browser being a good/bad idea. It almost feels like they are slipping through the…

I personally use Firefox Sync (it's built in the browser) and am very happy with it.

The article talks about a security weakness with Firefox Sync in the same vain.

Re: Bitwarden design flaw: Server side iterations

#169
I am not sure I get the flaw. The author says that the problem is an attacker only needs 100,000 iterations to get the master password hash, instead of doing the 100,000+100,000 iterations to get the master password and the master password hash.

Wouldn't though the master password hash be so long, that 100,000 iterations would be really hard to brute-force?

Re: Bitwarden design flaw: Server side iterations

#170
post #160

Earlier quoted context omitted.

Why are you upping it up that much? I guess "too much is not a bad thing" in this case, and Bitwarden itself says: "We recommend a value of 100,000 or more.". When I see that I read: "With our knowledge of security and encryption, which by the way is much greater than yours, we consider that 100,000 is a perfectly safe number and a good middle point so go ahead and use it". Am I wrong to think like that? My Master pa…

The current (and very recently updated) OWASP recommendation[1] is a minimum of 600 000 iterations [1] https://cheatsheetseries.owasp.org/cheatsheets/Password_Stor...

I read that as a "total of 600 000" iterations, so 300 000 locally and 300 000 on the server. Am I wrong?
Post reply on HN