News for hackers. Stuff that matters.
Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:02PM (#15421373)
Can you suggest a good password manager?

Ideally, I'd really like something that's deterministic - ie, I can provide a seed, and then that seed plus the domain name becomes the basis for the password.

That way, it's trivial to recover passwords when sitting at a new computer. And I imagine if the seed is sufficiently long (say, a 10-word sentence that includes 2 or 3 non-dictionary words) then it'd be highly impractical to force.

Right?

Re:Disqus Security Alert: User Info Breach by comex on Friday October 06, 2017 @08:16PM (#15421455)
A better argument against deterministic password generators than the current replies to your post is that if you have to change your password on a given site - due to password expiration, ‘forgot password’, security breaches, etc. - you have to change the seed, and remember which seed you’re using for which site.

There are some others:

https://tonyarcieri.com/4-fatal-flaws-in-deterministic-passw...

But if you want to use one anyway, that blog post links to a bunch of them.

Re:Disqus Security Alert: User Info Breach by benjaminjackman on Friday October 06, 2017 @11:25PM (#15422125)
One idea for a deterministic password manager to avoid having to change the seed when a single site is compromised would be to give a simple counter to each site which is hashed with the domain name (or whatever is used to uniquely identify that site) as well the secret to produce a password. When that site is compromised or a password change is called for its counter is simply incremeneted by one.

That counter can be exposed publicly as well as likely a regularization mapping to coalesce variants in the domain name to a single value, having those are pretty worthless without the secret. So I think that just need to be kept secret and then everything else can be kept in dropbox or wherever.

Edit: I missed it on first glance but I see that this is referenced in the link you posted, so nevermind then.

Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:20PM (#15421479)
Ahh, thank you. This is the kind of refutation I need. I'll read up and decide.

As for your specific qualm: I have to imagine that this can be solved by adding a numerically-determined nonce (so that I can say, "this is my 2nd password on disqus", etc) without having to fashion a new key.

edit: OK, so I have read the article. Here are my reactions to the author's four concerns:

* #1: Password schemes

> Unfortunately, sites have wildly varying and often conflicting password requirements: non-alphanumeric symbols are mandatory! Passwords must be alphanumeric only! Capital letters required! Passwords must be lower-case only! Passwords must be at least 12 characters long! Passwords must be at most 8 characters long!

> While many of these requirements seem silly and in a perfect world all sites would adopt the new NIST password guidelines, reality is messy and there is no single deterministic password generation scheme which can accommodate the password policies of all sites.

There aren't that many different schemes. Maybe a grand total of three dozen? I think that the program can simply have a user-updated registry (perhaps that's shared) of schemes, and the generator accounts for this. This seems like... maybe 150 lines of Python.

#2) Revocation and new passwords

> We could ask the user to remember the site-by-site counter and input the correct counter value to derive the correct password. But I think this is silly.

Umm, that's a strange argument. I don't think that's silly. I think it's highly practical. Currently, users remember a shitload of different details for different domains, including different usernames (this one was taken here, that one didn't meet the scheme there, etc) and often slightly different passwords.

Making them remember an integer that will rarely be larger than 3 instead of a password seems awesome. Worse case scenario, they can keep trying until they get the right one.

> You can’t store credit card numbers or bank account numbers in such a vault.

> You can’t put arbitrary cryptographic keys in such a vault.

> You can’t store randomly selected answers to security questions in such a vault.

> I consider this to be part of the basic functionality of a password manager.

I don't know what to say except that... I don't. I'm happy to have a password manager literally just manage passwords and allow me to use other tooling (like form memory in a browser) for this other stuff.

> Exposure of the master password alone exposes all of your site passwords...If you accidentally type or paste your master password into email, IM, or social media, an attacker can leverage that alone to derive all of your site-specific passwords.

Yeah, I get it - that's the same argument the others in this thread are making.

But I'm not going to accidentally type along seed, like a 10-word sentence with punctuation, into any of those places. This seems like a completely absurd argument to me.

Re:Disqus Security Alert: User Info Breach by Arcsech on Friday October 06, 2017 @08:28PM (#15421507)
That's effectively no different from changing the seed data (say, going from "password1" as the seed to "password2"), you still have to remember which iteration you're on on each site as part of the seed data.

Edit: and this point is actually made in the article the GP linked.

Re:Disqus Security Alert: User Info Breach by pwg on Friday October 06, 2017 @11:31PM (#15422137)
> There aren't that many different schemes. Maybe a grand total of three dozen? I think that the program can simply have a user-updated registry (perhaps that's shared) of schemes, and the generator accounts for this.

> Making them remember an integer that will rarely be larger than 3 instead of a password seems awesome.

Ok, so, we have the "master seed" that has to be remembered. We also now have to remember X from [1..36] of schemes, and a Y version integer.

There's two ways to "remember" these triplets. In your head. I which case you have to remember, for all 50 [1] different logins to all the sites you have, a triplet of <master,scheme,version>. Master will be easy, as it will be typed enough times to be easily remembered. But remembering that site A, that has not been visited for 4 months, used <master,14,2> while site B, that as not been visited for 6 months, used <master,27,3> and so on for 50+ logins will be untenable.

Or your 'deterministic' generator really has to store the "scheme" and "version" parts of the triplet somewhere in a local file/db, associated with each site, to allow it to work. At which point, you are 80% of the way to a proper password manager that would allow each password to simply be a proper randomly generated string of characters, tailored as need be, for each site.

> Worse case scenario, they can keep trying until they get the right one.

Unless, because of breeches or general password rotation they are now up to "version 12", but the site only allows three tries until lockout. Now you have to start trying "within 3 steps" of 12 or else you are guaranteed to be locked out.

[1] In the manager I use (Password Gorilla, https://github.com/zdia/gorilla, which is one of the many Password Safe compatible managers) I've got 371 stored entries, of which 285 are actual passwords for various sites that wanted a registration of some form or another along the way. That is something you learn quickly when you start using a password manager. The sheer number of websites that want you to 'register' in some way or another is actually huge. This is after about 13 or so years of using a password manager.

Re:Disqus Security Alert: User Info Breach by tptacek on Friday October 06, 2017 @08:27PM (#15421504)
You should use 1Password or "pass" or, if a glutton for punishment, KeePassX, and honestly, I think you should use them to the exclusion of all other password managers. You can lower your security with a bad password manager.

I agree with everything Tony Arcieri wrote about deterministic password managers here: https://tonyarcieri.com/4-fatal-flaws-in-deterministic-passw....

Before you consider a deterministic password manager, just use "pass".

Re:Disqus Security Alert: User Info Breach by FoxInBoxers on Friday October 06, 2017 @10:09PM (#15421866)
Does your KeePassX recommendation include the Windows equivalent it was ported from (KeePass)?
Re:Disqus Security Alert: User Info Breach by Semaphor on Saturday October 07, 2017 @07:50AM (#15423406)
I've been using Keepass on Windows for several years now since I switched from LastPass. I like it a lot and as long as you are using it alone, syncing works great :)
Re:Disqus Security Alert: User Info Breach by zootboy on Friday October 06, 2017 @08:05PM (#15421391)
Except this all but negates the benefits of a password manager. Now if someone steals your master password, they can generate every single password you use.

Use something like Keepass / KeepassXC. Yes, it's somewhat less convenient, but remember that security and convenience are always a trade-off.

Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:10PM (#15421413)
> Except this all but negates the benefits of a password manager.

It preserves the main benefit: that I no longer need to remember a separate password for each domain in order to stop sharing passwords across them.

> Now if someone steals your master password, they can generate every single password you use.

So it's just a matter of keeping the seed in the user's head and nowhere else. Right?

That doesn't seem to be any more serious a security challenge than keeping secure an encrypted datastore full of passwords.

Re:Disqus Security Alert: User Info Breach by shkkmo on Friday October 06, 2017 @08:30PM (#15421517)
> So it's just a matter of keeping the seed in the user's head and nowhere else. Right?

Until you enter it on a compromised system to generate a password...

Re:Disqus Security Alert: User Info Breach by 0xfeba on Friday October 06, 2017 @08:21PM (#15421482)
Cloud managed (but still pretty damn secure): LastPass or 1Password

You manage security: KeePass

I use KeePass with a keyfile and password. The DB is stored and sync'd across devices in DropBox, I have my DB and key regularly backed up on a USB drive. The key is also present on some machines that I cannot easily add the USB to (eg. phone). It's the only password I need to remember -- I have literally hundreds (400+) of accounts. I do not regret it at all -- but it was a huge pain to migrate everything to it.

I also store my Google authenticator initial QR codes on it, in PNG format.

Re:Disqus Security Alert: User Info Breach by tptacek on Friday October 06, 2017 @08:37PM (#15421548)
1Password doesn't have to be "cloud managed" the way LastPass (ick) is. You can do pretty much everything in 1Password native clientside, and that's what you should do. 1Password is basically the gold standard for commercial password managers, and I think probably the only commercial password manager you should consider.
Re:Disqus Security Alert: User Info Breach by enraged_camel on Saturday October 07, 2017 @01:07AM (#15422365)
Thoughts on syncing 1Password database via Dropbox? I have multiple machines and that's what I do, but it worries me. Haven't found a more elegant solution though.
Re:Disqus Security Alert: User Info Breach by wglb on Saturday October 07, 2017 @10:54AM (#15423987)
I use home-brew script with rsync to syncronize. I don't dropbox on critical machines.
Re:Disqus Security Alert: User Info Breach by Splines on Friday October 06, 2017 @08:29PM (#15421513)
KeePass can also generate TOTP codes. Kind of ruins the point of these codes, but if you're already storing the QR codes on it, you can go a step further and just get KeePass to generate the output code for you.

https://bitbucket.org/devinmartin/keeotp/wiki/Home

Re:Disqus Security Alert: User Info Breach by scrollaway on Friday October 06, 2017 @08:34PM (#15421533)
If you wish to retain the "two factor" aspect, you can put your 2FA codes in a separate keepass database. You do lose the "two separate devices" bit of extra security (your threat is now keepass-aware malware or keyloggers with filesystem access), but if your one db is compromised the 2fa codes are not (and vice versa).

However, storing 2fa codes alongside your password is still more secure than not. If the service password is compromised without the 2fa seed (main threats: MITM, phishing), the one-time password prevents the account from being immediately compromised.

Re:Disqus Security Alert: User Info Breach by 0xfeba on Tuesday October 10, 2017 @08:56AM (#15441353)
"One of these days" I'm going to get a safe and print them off and remove them digitally.
Re:Disqus Security Alert: User Info Breach by tvmalsv on Saturday October 07, 2017 @12:18AM (#15422257)
I've been using a manager called Enpass [1] for over a year now and really like it.

It has browser extensions (Chrome, FF, & Safari), local storage (with many cloud-sync options), and apps for Mac, Windows, Linux, iOS, Android, etc.

The desktop versions are free and the mobile version is about $10/platform (lifetime license).

I have no connection with the company, just a very pleased user.

[1] https://www.enpass.io/

Re:Disqus Security Alert: User Info Breach by calcifer on Saturday October 07, 2017 @02:59AM (#15422648)
Another recommendation for Enpass. I started using it because they had a great desktop Linux version which worked perfectly with their Firefox & Chrome plugins. After that, paying $10 for the Android version was a no-brainer.
Re:Disqus Security Alert: User Info Breach by TheRealWatson on Friday October 06, 2017 @08:16PM (#15421453)
What if you need to update the password of one of the sites (e. g. this disqus breach) ? What if the domain name changes?
Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:19PM (#15421470)
Maybe the program can take an integer nonce in addition. Then you have to track how many times you've used it for a particular domain.

And if the domain name changes: you just keep generating for the old domain and tell the program to override.

These seem like relatively simple challenges.

Re:Disqus Security Alert: User Info Breach by AgentME on Friday October 06, 2017 @09:01PM (#15421621)
I just use my browser's password manager. (It's not deterministic though; other responses cover that angle well.)

Everyone seems to treat password managers as an arcane mysterious tool and acts temporarily amnesiac to the fact that every browser that anyone has used asks if you want to save your password. Both Firefox and Chrome let you sync your passwords between multiple computers, and I believe both do it in an end-to-end encrypted way.

Re:Disqus Security Alert: User Info Breach by gruez on Friday October 06, 2017 @09:52PM (#15421811)
>and I believe both do it in an end-to-end encrypted way.

in chrome, the end-to-end part is opt-in. https://support.google.com/chrome/answer/1181035?hl=en

Re:Disqus Security Alert: User Info Breach by pwg on Friday October 06, 2017 @11:44PM (#15422168)
Relying on your browser's password storage is very risky:

Sorry, But Your Browser Password Manager Probably Isn't Enough https://www.wired.com/2016/08/browser-password-manager-proba...

Why you shouldn't use your browser to store online passwords https://scotthelme.co.uk/storing-passwords-in-browser/

Re:Disqus Security Alert: User Info Breach by mulmen on Friday October 06, 2017 @08:07PM (#15421396)
If it's deterministic then anyone who gets your seed has all your passwords.
Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:10PM (#15421415)
But it's the same in any case, right? It's always, "if an attacker gets your <x>, they have all of your passwords."

The question is: are they any more likely to gain a seed that I keep only in my head vs. a list of passwords in an encrypted datastore?

Re:Disqus Security Alert: User Info Breach by domador on Friday October 06, 2017 @08:21PM (#15421484)
They're still different, the two schemes. In the case of a traditional password manager, an attacker would need to get your master password and the password datastore. In the case of datastores stored locally, rather than online, that's still two separate steps.

In the case of your idea, once an attacker knows the seed, they have everything. Furthermore, if there's some weakness in the algorithm you use to generate passwords from the seed, then some site which has one of your deterministically-generated passwords could potentially breach the weak algorithm to reverse the process and obtain your seed, along with all your other passwords.

Lastly, with a traditional password manager, you can change the master password at any time. Would you be able to change your seed when needed, or would you need to regenerate your passwords for EVERY site, if you need change the seed because it's been compromised?

Re:Disqus Security Alert: User Info Breach by gervase on Friday October 06, 2017 @08:14PM (#15421441)
Except you won't keep it only in your head: you'll be typing it into a computer at some point. Really, in either case, you should also be using token-based 2FA as well.
Re:Disqus Security Alert: User Info Breach by jMyles on Friday October 06, 2017 @08:17PM (#15421458)
OK, so a surreptitious keylogger still defeats this config. I'm OK with that. My entire life presumes trust from my keyboard to my computer.

I mean, if that were my main concerns, I'd have to rethink most of the bedrock security precautions I take, like passphrases for private SSH keys, etc.

At the end of the day: I understand the risks and view them as absolutely acceptable in order to gain reasonable portability in a password manager.

Re:Disqus Security Alert: User Info Breach by mulmen on Friday October 06, 2017 @08:18PM (#15421461)
In the case of a password manager they would need the database and the master password. In the deterministic case they only need the seed.
Re:Disqus Security Alert: User Info Breach by Splines on Friday October 06, 2017 @08:25PM (#15421495)
The problem with this style of password management is twofold:

1. You can't change your master password without changing every other password (upon refresh - looks like others mentioned that already)

2. You can't modify the output of your deterministic password algorithm to adhere to sites with weird password requirements

Re:Disqus Security Alert: User Info Breach by Fice on Friday October 06, 2017 @08:55PM (#15421602)
I generate unique passwords using command-line tools like apg and pwgen and store them in an encrypted Emacs org-mode file [1]. Emacs can open files transparently via SSH [2], so I have easy remote access to my password store without having to rely on any external service.

[1] http://orgmode.org/worg/org-tutorials/encrypting-files.html

[2] https://www.emacswiki.org/emacs/TrampMode

Re:Disqus Security Alert: User Info Breach by greggarious on Saturday October 07, 2017 @10:09AM (#15423828)
Personally, as an OSX user I use KeePassXC[1]. It's a fork of the original KeePass better designed to be cross platform.

If you want to sync across multiple computers, you can throw it in whatever file sharing service (Dropbox, Google Drive, etc) you use. Personally, I prefer Spideroak[2] due to their strong privacy policy.

[1] https://keepassxc.org [2] https://spideroak.com/one/

Re:Disqus Security Alert: User Info Breach by loeg on Friday October 06, 2017 @08:15PM (#15421450)
The problem with the seed-only approach is you have to remember the password policy of every website, at the time you registered, in order to regenerate the password used.
Re:Disqus Security Alert: User Info Breach by Trundle on Saturday October 07, 2017 @01:45AM (#15422448)
If that's all you're after then nullpass fits the bill exactly.

http://www.nullpass.org/

Warning though, I stopped using it because seed + domain doesn't guarantee that the password will fit the sites password requirements.

Re:Disqus Security Alert: User Info Breach by scrollaway on Friday October 06, 2017 @08:28PM (#15421511)
Replying to your comment (that wasn't here when I started writing) directly - I just wrote my suggestions and a starting guide here: https://news.ycombinator.com/item?id=15421444

Hope this helps.

Re:Disqus Security Alert: User Info Breach by gevz on Friday October 06, 2017 @08:11PM (#15421420)
It seems that you might not need a good password manager for this type of scenario. Password manager for me is the one that stores unique passwords for each login. I don't know the majority of my passowrds
Re:Disqus Security Alert: User Info Breach by electic on Saturday October 07, 2017 @01:48AM (#15422456)
For me, I use pass cli. Gets the job done.
Re:Disqus Security Alert: User Info Breach by Ibethewalrus on Friday October 06, 2017 @08:51PM (#15421590)
Safari on Mac already has a strong built-in password manager, it syncs with Safari on iOS
Re:Disqus Security Alert: User Info Breach by gmoore on Saturday October 07, 2017 @10:07AM (#15423817)
Password Safe is a good one...
Re:Disqus Security Alert: User Info Breach by jedisct1 on Saturday October 07, 2017 @04:34AM (#15422920)
Enpass.
Re:Disqus Security Alert: User Info Breach by vlunkr on Friday October 06, 2017 @08:05PM (#15421390)
Someone please build this if it doesn't exist already!
Re:Disqus Security Alert: User Info Breach by 0xfeba on Friday October 06, 2017 @08:14PM (#15421438)
IIRC Someone has before, either here or reddit but it was terribly implemented.

Use LastPass, 1Password, or KeePass.