4 ms·
> You could store [2fa backup codes] in your password manager Aaand we're down to single-factor authentication: your password from your password manager plus y
by Aachen 5y ago
> You could store [2fa backup codes] in your password manager
Aaand we're down to single-factor authentication: your password from your password manager plus your backup codes from your password manager.
I do recommend a password manager, but not to keep would-be-two factors in one vault.
Also the very first item in the guide makes a blanket statement about dictionary words being really crackable. I forgave that one for simplification reasons (reality: passphrases are equally secure if you use enough random words, just like using a password with enough random characters), but I've now read the recommendation for 3 points and 2 are bad and mediocre advice.
- ihateolives 5y ago> statement about dictionary words being really crackable Every time I see this statement I immediately think: which dictionary? There are more languages than usual suspects (eg English, Spanish, French, Italian, German, Mandarin) and L1/L2 speakers of those make up sizable portion of internet users. Are Welsh/Hungarian/Slovak dictionary words really as easily crackable than English ones? If you have dictionary for those, yes, otherwise I suspect no.
- FabHK 5y agoSo, yes.
- PostOnce 5y agoExactly. I don't have to speak any of the languages on wikipedia to use wikipedia as dictionary for cracking. You can have every quote from every book, every place name, every wikipedia article, every song lyric, and a cheap GPU can buzz through it all ... fast. Kind of breathtaking that we have that power now, and kind of terrifying.
- Aachen 5y agoThis is exactly what I did for a research project in school: download Wikipedia, extract all combinations of iirc 2-5 words, do a few transformations like adding a lowercase variant and space-less variant, and run that set against the LinkedIn sha1 password dump. Quite effective for cracking passphrases that weren't randomly chosen words but an existing phrase.
- leavenotracks 5y agoIndividual words then are easily crackable. But, take 3 long dictionary words chained together...easier to remember and more secure than a shorter randomly generated string. E.g. postcriptaluminumengagement vs kug45l2wx Or are there also dictionaries that contain combos of words?! (Would be rather a large dictionary).
- Aachen 5y ago3 words is not enough usually, but it technically depends on the dictionary size. Since the formula is dictsize^numwords, adding a word to your phrases is a lot better than adding a thousand words to your dictionary (also because of diminishing returns above ~5 thousand words). Iirc 6 words is a good size for most dictionaries or 7 words for diceware, but might be off by one so please look around. I remember posting it on the security stackexchange site (I'm currently on mobile, not logged in or I'd look it up in my user) and I'm not the only one who's done this calculation. It also depends on what security level you need (e.g. should it prevent from offline brute force or only online brute force)
- freemint 5y agoWhy are you assuming the advesary knows what dictionary is being used?
- Aachen 5y agoBecause there are only so many words in the world and an English person isn't going to use a Dutch dictionary. At that point it's going to be harder to remember than just random characters of the same entropy.
- FabHK 5y ago> E.g. postcriptaluminumengagement vs kug45l2wx If you pick from a dictionary of 250,000 words, that is around 18 bits. So three randomly chosen words strung together give you around 54 bits. On the other hand, an alphanumeric character is around 6 bits, so 9 of them strung together is about 54 bits. Assuming your dictionary was 250,000 words, both of the passwords you posted were about the same quality (until you posted them - now they're again about the same quality, but much less). > Or are there also dictionaries that contain combos of words?! Your software just concatenates words and other well known sequences (123, zxcvbn). Check out the great password entropy checker called zxcvbn: https://github.com/dropbox/zxcvbn https://github.com/dropbox/zxcvbn https://dropbox.tech/security/zxcvbn-realistic-password-strength-estimation https://dropbox.tech/security/zxcvbn-realistic-password-stre... https://www.bennish.net/password-strength-checker/ https://www.bennish.net/password-strength-checker/ (Note: don't enter production passwords into random websites, needless to say...)
- mr_mitm 5y agoIf the hash is weak enough that you can afford massive wordlists like crackstation [1], then yes, those words will be in the list. [1] https://crackstation.net/crackstation-wordlist-password-cracking-dictionary.htm https://crackstation.net/crackstation-wordlist-password-crac...
- yonixw 5y ago> but not to keep would-be-two factors in one vault. So where? Having them physically spread around my house? in my PO BOX? Each have been cracked before, or are lost all the time (even by a simple fire). What can an average person do better than remember one strong password?
- Aachen 5y agoMy recommendation for keeping second factor key material would be on a supported smartphone and make backups of that device (I use termux and restic but anything goes here, so long as your desktop can't get at the data). The app isolation makes it a lot harder to get at data compared to when malware makes it onto your desktop. Most people also don't have full control of their phone from their desktop and vice versa, making it independent devices where the compromise of one doesn't compromise the other - even if you have photo sync and remote wipe, you usually can't simply get app data. I looked into different apps for a family member (I don't have a secure phone myself because I use the hardware longer than there are updates, so I don't use this personally) and the winner at the time, this was 2017 or so, was Keepass2Android. This is considering both usability and security, but mainly security - I'd probably not be able to teach my grandparents how to use this. An alternative specifically for codes that you should never need is indeed something like a bank vault, or using Shamir's Secret Sharing Scheme to split it up and give one part to a friend in addition to your own share.
- yonixw 5y agoBut then, once a phone get lost, how do you recover those second factor keys? Or do you mean to have encrypted backup but the "active usage" is on another device? If so I agree and do the same.
- RealStickman_ 5y agoI keep my recovery keys encrypted with a different password on my desktop. You could also export the 2FA codes from some apps.
- mr_mitm 5y agoA typical password manager is two factors: something you have (the password database) and something you know (the master password).
- robjan 5y agoA typical password manager is BitWarden or LastPass which is on the cloud and only requires your master password.
- koprulusector 5y agoMy LastPass requires master password + yubikey
- mr_mitm 5y agoIf cloud-based password managers are set up without using a keyfile or something similar, then I agree, they're single factor. I suggest refraining from using such password managers for this reason.
- dividedbyzero 5y agoYou can set up LastPass and 1Password Cloud with second factors like USB security keys
- pid-1 5y agoThats just no true, most pw managers allow setting up MFA.
- rinze 5y agoPrecisely because of that I use a different solution: Dropbox + KeePassXC. If someone wants to access my passwords, they first have to get into my Dropbox account, then get the password to the KeePass file. At this point that level of security is good enough for me. Edit: typos.
- Aachen 5y agoBy that logic the password itself is two-factor, because you need the database password as well as the database file to obtain the target password. I definitely see where you're coming from, but I'm not sure why you'd still bother setting up 2FA with backup codes then if you already consider the password itself 2FA? A higher security level, which isn't needed for everyone indeed, would be to have these two things (where you have your password database unlocked, usually multiple times a day, and the second factor secret codes) in independent locations. This can also be two VMs if you keep the host encrypted and very secure for example. I assumed people with 2FA wanted to achieve a bit higher security level than all eggs in one basket. (None of these things beat a wrench attack of course.)
- leavenotracks 5y agoDespite its shortcomings, I value the attempt to generate this list and thank the author for it. Moreover, it's on Github so issues and pull-requests can be created, and the list can be improved. Even though a ot of the advice will be sound for pretty much all-time, unless this kind of list is maintained in this way it would grow very stale very quickly.
- crispyambulance 5y agoYeah, I would expect a smug, persnickety dismissal from HN folks. But it's largely GOOD advice and we need more of this kind of thing going around. When trying to find advice for personal cyber security by googling around, you get a wild range of material ranging from simplistic listicles, to paranoiac rantings, to BS marketing slick from entities trying to sell stuff. It's hard to find solid advice with actual reasoning behind it. Would a normal person (who is not a target for nation-state actors) be in very good shape, cyber-security-wise, if they followed the "recommended" advice in that checklist? I say yes-- even if they put their 2FA backup codes in their password manager!
- dividedbyzero 5y ago> Aaand we're down to single-factor authentication We're not, not really. The only single password that can unlock 2FA is that for the password manager, but most phishing attacks I'm aware of target the specific services, not password managers, since it's usually way easier to fake a banking login. Good password managers will have dedicated apps, so entering that password on some janky website is not something victims will be used to, plus there should be something 2FA-ish as well (biometrics on an iPhone etc.), so that particular password should be considerably harder to get ahold of than most. That doesn't protect against a fully compromised device, but that's not something 2FA is very effective against anyway. I'd say it's good enough for now. Perfect shouldn't be the enemy of the good; security is always a trade-off between less-than-perfect alternatives, and the obvious alternative for lots of people will be a .txt on their Desktop or in their Dropbox or even an email to themselves, or no 2FA at all. I've been told that no attacker would find one person's password list since they disguised it as an email draft, who'd think to look there? Putting backup codes in one's primay 1Password vault doesn't fare that badly against those. > I do recommend a password manager, but not to keep would-be-two factors in one vault. A separate vault means another password, where do you keep that? It'll be needed very infrequently, so it's easy to forget, especially under stress. Also, you'll want to make sure you have it when you're seven timezones away and just lost your phone, since vacation is prime phone-losing time and also a time when you might have to get at your emails really urgently, e.g. for travel documents; that's also a situation where printing out backup codes on paper might bite you if they stay behind at home. I'm not even sure how I'd set this up, afaik 1Password (Cloud) and LastPass don't support vault-level passwords. This is a surprisingly little-discussed problem outside of corporate. And when it is discussed, many knowledgeable people view personal security through a corporate security lens, which isn't very practical, making this an IMO pretty underserved niche. I've discussed this with lots of people and I'm still not aware of any silver bullet solution, but the recommendation from TFA seems like a decent compromise for a sizable cohort, especially younger people who aren't comfortable with paper documents and/or are highly mobile.
- lbriner 5y ago> We're not, not really. We are, by definition down to single factor if you store the codes in the password vault. The argument wasn't that therefore the system is weak, it is just that the point of having a second/third factor is to add something that isn't already present in an attack against a system. One example would be that you leave your desk momentarily with your password vault unlocked and someone decides to quickly use your account to login to some system. Single point of failure. If you had the codes on a cellphone instead, firstly there is more of a chance that you would have taken your phone with you but even if you didn't, that "attack" now needs to access your phone as well. Not all attacks are strangers and not all are malicious, just somebody elevating their privileges via your status is an attack in the broadest sense, even if they did it for respectable reasons.
- timwis 5y ago> Aaand we're down to single-factor authentication Not necessarily: if your password manager requires more than one factor to access, then there's still no way to access the service with only one factor. This might be standard MFA to login to your password vault, or in the case of 1Password, the vault's encryption key _basically_ serves as a second factor, so long as you never save it digitally (and print it instead).
- hda111 5y agoAgreed. The second factor is merely a protection to login on untrusted browsers. And you probably don’t install your password manager there.
- Aachen 5y agoSomeone else posted the same remark 4 hours before you, one comment down. To not repeat the same conversation, please refer to there: https://news.ycombinator.com/item?id=30904892 https://news.ycombinator.com/item?id=30904892
- aendruk 5y agoPull request: https://github.com/Lissy93/personal-security-checklist/issues/101 https://github.com/Lissy93/personal-security-checklist/issue...
- i13e 5y ago> Aaand we're down to single-factor authentication: your password from your password manager plus your backup codes from your password manager. Couldn't you store your 2FA codes and passwords and backups (theoretically everything) in a password manager (ex. bitwarden), encrypted, salted, hashed and all of that with a strong and complicated password AND hardware 2FA (ex. yubikey) and be better off than separating it out? All of your data is extremely secure, can be managed in one place, and you aren't gonna lose your 2FA codes if your phone randomly breaks. I think for the average user this strategy is the best middle ground for security and simplicity
- mattalex 5y agoDoes it matter if you have two factors in your vault, but secure the vault itself with two factors? I secure my vault with 2 factors, therefore any attacker would 1. have to access my vault in the first place 2. find the first factor 3. find the second factor Technically accessing the vault+password itself would already be a two factor scheme.