7 ms·
> Compare that to a U2F token where you can very reasonably remove the password entirely and still be just as safe Yeah, and it requires me to use a U2F token,
by Wowfunhappy 5y ago
> Compare that to a U2F token where you can very reasonably remove the password entirely and still be just as safe
Yeah, and it requires me to use a U2F token, which I can loose, etc. You have to balance security and usability, and SMS as a second factor seems like a perfectly reasonable balance.
- staticassertion 5y ago> Yeah, and it requires me to use a U2F token, which I can loose, etc. In which case there are much safer recovery mechanisms available. For example, a second U2F token, or handwritten backup codes. > and SMS as a second factor seems like a perfectly reasonable balance. My point is that it isn't. Unfortunately, today, identity is a true privilege - it pretty much requires purchasing multiple U2F tokens, and that's super shitty. That doesn't mean that SMS 2FA is a good idea - the fact that it can actually reduce your security is very problematic.
- darkwater 5y ago> In which case there are much safer recovery mechanisms available. For example, a second U2F token, or handwritten backup codes. Which have either higher costs or "administrative burden" or both which will lead them to failure for a big chunk of non tech-savvy people. Educating a casual user that they need to print out recovery codes and store them in a safe place it's not exactly top notch usability.
- staticassertion 5y ago> Educating a casual user that they need to print out recovery codes and store them in a safe place it's not exactly top notch usability. So then have two U2F tokens. Or use your phone's TPM as a U2F token. The usability of phone-based U2F is quite good.
- Wowfunhappy 5y agoA phone's TPM is the only U2F token that 99% of the world owns, assuming they own one at all.
- staticassertion 5y agoYes, as I've said, availability is the problem to solve. We should be shipping U2F tokens wherever we can. I'd like to see schools that require students to use GSuite and other U2F supporting sites giving students tokens for free. I'd like to see banks giving their customers tokens. I'd like to see companies giving them to employees. IMO the problem is not "let's get some kind of 2FA" it's "let's get U2F in the hands of as many people as we can".
- tsimionescu 5y agoMost people don't own two phones though, and wouldn't think to have two separate U2F tokens.
- Wowfunhappy 5y ago> the fact that it can actually reduce your security is very problematic. The only way it can ever actively reduce your security is if it's used as a single factor, as it was for the OP.
- staticassertion 5y ago> The only way it can ever actively reduce your security is if it's used as a single factor, as it was for the OP. I don't believe this is true. If I have your SMS I am considerably more likely to be able to phish a recovery, even if recovery also involves something else. Every piece of information the attacker can get is valuable for forging auth. What SMS is good at is being available. At this point cell phones are distributed to a massive portion of the world. But at this point smartphones can also act as U2F devices, I believe, so I'm not sure that benefit is so meaningful anymore. Instead of companies wasting time on SMS 2FA they should be figuring out how to help their customers set up U2F. I'd like to avoid being in a situation in 10 years where we have great options for end users available but 2FA SMS is still supported for legacy reasons, and unwitting users end up using it because it seems easier and they don't understand the risks.
- Wowfunhappy 5y ago> I don't believe this is true. If I have your SMS I am considerably more likely to be able to phish a recovery, even if recovery also involves something else. So it's better to not consider that information at all? What is better? (1) Requiring a password to login or (2) Requiring a password and a code sent via SMS? The problem you're describing is that services accept SMS in leu of other forms of verification, such as an actual password. Personally, I would very much like it if I could turn off any and all forms of "I forgot my password" flows. There should at minimum be a one-week waiting period or similar.
- staticassertion 5y ago> So it's better to not consider that information at all? Exactly > What is better? (1) Requiring a password to login or (2) Requiring a password and a code sent via SMS? They're equivalent in my mind - SMS is such a weak 2FA mechanism, and it's so easy to get wrong and have it decrease your overall security, any benefit is lost. Rather than pushing SMS because it's what we have we should make greater efforts to leverage technology that we know is considerably better in every regard except availability today - IMO that is the problem to solve.
- jsnell 5y agoBut that is my entire point. SMS as a second factor is purely additive. It cannot reduce security. There is pretty much no form of second factor that users are worse at passing than backup codes. Even if people print them out (few do), they won't find them when the emergency happens. You need some form of trust that can be bootstrapped again from scratch. For most of the world, SMS is it. The Nordic countries have the bank if system. But the market is too small. Hopefully the EU-wide identity verification systems solve the scale problem.
- staticassertion 5y ago> SMS as a second factor is purely additive. It cannot reduce security. I responded to this in another post. > There is pretty much no form of second factor that users are worse at passing than backup codes. Agreed, I also mentioned backup U2F. At this point modern smart phones package TPMs that can also do attestation, so we're really not too far away from being in a situation where the vast majority of people have a U2F token in their pocket.
- rocqua 5y ago> Some form of trust that can be bootstrapped again from scratch. This is not using it as a second factor. It is using it as the only factor. Having SMS as the only factor is not purely additive. As such it can (and obviously does) reduce security. Account recovery is hard, SMS is quite usable there, but way to insecure to be the only basis for bootstrapping account recovery.
- jsnell 5y agoI don't really understand why you think I'm advocating for SMS as the only factor, when I very clearly wrote the exact opposite. Let's say that you remember your password, but your house just burned down. You cannot replace the U2F keys and backup codes that were lost in flames. But you almost certainly can bootstrap your real life identity far enough to get a replacement SIM. Which, in combination with your password, should be enough to get your digital identity back.
- 5y ago
- the_snooze 5y agoSMS is better than nothing, but you have a bunch of other better fallback alternatives before you should rely on it. You can support the enrollment of multiple hardware tokens (i.e., you keep one at home, and one on your person). You can have online push login approvals. You can have a TOTP code generator.
- paulryanrogers 5y ago> You can support the enrollment of multiple hardware tokens (i.e., you keep one at home, and one on your person). How many services do that today? And since so few people have fallbacks what is their recovery process like? Because the hackers will find the weaknesses.
- tialaramex 5y agoWebAuthn explicitly tells Relying Parties (ie web sites) to all do this. All the services I use which offer WebAuthn or its predecessor U2F support multiple named hardware tokens and I enroll at least my Yubico branded device and one more at such sites. For those I use from a phone, the phone itself is enrolled. AWS is the counter-example which will be (indeed already has been in this HN comment tree) cited as proof sites don't all do this, I've tried asking if there are literally any others, and never received any ideas. I don't currently have an employer and I don't use AWS for personal projects. It's pretty common for sites that actually care about authenticating you (so, Google but not your Bank, GitHub but not your mortgage lender) to provide you with single use bypass codes which they tell you to write down and keep somewhere safe.
- UncleMeat 5y agoTOTP is the one that makes the least sense to me. It is also weak to phishing (extremely common) but adds protection against SIM-swapping (comparatively very rare). It also has almost all of the downsides of U2F (a pain in the ass if you lose your device).
- nucleardog 5y agoTOTP has the downsides of U2F, but those downsides are comparatively easier to mitigate. Put a plan together for the "house burns down" scenario. With U2F I need to enroll multiple tokens and keep some off-site. So what does this entail? I keep maybe 3 tokens, two on-site that I add the new account to, then on a regular schedule I rotate one off-site and bring the third one on-site and go back through and add it to any accounts I've created in the meantime? The whole process is a pain in the ass, and not all sites allow multiple devices to be registered (e.g., AWS). And new accounts are still vulnerable during the time between registering and rotating the third key on-site. With TOTP you can... just sync your TOTP database. Some apps such as Microsoft Authenticator do this on their own. Personally, I put all my TOTP secrets into a Keepass database and sync it off-site with Nextcloud. There is no way for the site to limit how many devices I enroll so it's easy enough to create as many backup devices as you need. If you're really old school, you can print the secrets and put them in a fire safe. FWIW, I have several yubikeys. I primarily use them as a secure store for TOTP secrets and to store a SSH key (generated off-device and backed up), not for webauthn. It's just too annoying to deal with in a way that ensures I don't lock myself out of an account.
- rocqua 5y agoIts generally not "second factor authentication" but 2-factor authentication. The idea is that you have 2 separate authentication factors. Preferably both with decent security. Besides, I don't believe coinbase does SMS only account recovery. So here SMS really did fail as a second factor. Since it seems attackers must have had a password and SMS. (I am not 100% on the coinbase account recovery process)
- cortesoft 5y agoNo, it sounds like coinbase used email recovery, but his email provider used SMS recovery. So the hacker only needed to hijack his SMS.... with that, they gained access to his email, and then with that gained access to coinbase. No password required.
- LinuxBender 5y agoAnd the site has to support U2F. U2F is a great standard but almost none of the businesses I interact with support it. There are maybe 3 banks in the US that support it, but not mine.
- FabHK 5y agoI don't understand why banks and businesses don't outsource the whole authentication business to someone that does nothing else, and then does proper 2FA (maybe with a choice of security levels), and supports as many standardised solutions as possible.
- esolyt 5y agoI'm glad someone is bringing this up. I witnessed so many people lose access to their accounts because they wiped their phone that had an authenticator app, or they lost their physical 2FA tool.
- geephroh 5y agoServices like Authy address some of the loss of device issue, and always a good idea to have a backup token (e.g., yubikey) physically escrowed somewhere like a safe-deposit box. But it is a whole lot of extra work to set up and maintain long-term, even with the best intentions.
- ncann 5y ago+1 for Authy. Just get a used cheap Android phone for like $30 and use it as the backup device for Authy and never fear about losing your 2FA device again.
- lukeschlather 5y agoDoes Authy actually offer 2FA? It sounds like the security boils down to your encryption passcode used to encrypt the 2FA secret, so you aren't actually using 2FA at the end of the day. For personal use it probably is a good compromise for services which don't implement 2FA properly (that is to say, services that don't allow you to register multiple 2FA devices.) But realistically you might want to just disable 2FA and rely on your password manager.
- ncann 5y ago> Does Authy actually offer 2FA I'm not sure what you meant by this, Authy certainly provides TOTP, and the encryption password is only used when you need to sync the 2FA secret to other devices, which by the way also requires confirmation using SMS to your phone number as well.
- lukeschlather 5y ago
- bun_at_work 5y agoWhat about an authentication app? Google Authenticator or something similar can be installed on the phone which is necessary for SMS, improves the security more than SMS, and doesn't suffer from the problem of losing it, at least not more than SMS auth does.
- FabHK 5y agoWhen your phone is lost or stolen, you buy a new phone and go to your telco provider to get a new SIM with your number. SMS 2FA continues to work. Your Authenticator secrets are gone with the phone, and you're locked out. (Unless you use a solution like Authy with multiple devices, which strikes me as the most sensible solution.)
- filoleg 5y agoIt blows my mind that Google Authenticator still doesn't have a multi-device sync feature (or even a "recover from backup" feature on iOS for that app, because I think they added it recently to Android; just "recover from backup" alone would have been sufficient to convince me not to switch). All of that made me switch to Microsoft Authenticator, as they do have both multi-device sync and "recover from backup" feature as well, so now I don't need to be stressed about my phone getting lost. Kind of sad, given that I've been a user of Google Authenticator for quite many years until that point.
- u801e 5y agoI really wish that web browsers had worked on the UI for generating certificate signing requests and importing certificates and that websites had 2FA via username/password along with client-side TLS certificate for authentication. This is more portable than U2F tokens since client-side certificates are part of the TLS standard and should be supported regardless of the application protocol used. Adding other devices could be done by sending a CSR along with the username and password and authorizing the second device from first device that's already logged into the account.
- baybal2 5y agoIt had it! HTML 5 keygen tag https://developer.mozilla.org/en-US/docs/Web/HTML/Element/keygen https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ke... But Mozilla, and Google double teamed to sink it in W3C to push their own bicycle reinvention attempts, which after 10+ years, multiple incompatible versions, and errata ridden revisions are still not there. https://lists.w3.org/Archives/Public/www-tag/2015Sep/0001.html https://lists.w3.org/Archives/Public/www-tag/2015Sep/0001.ht... Google needs to be kicked out of W3C
- jjav 5y agoYes! This was a very good solution. Built right into the browser, very convenient. We built a related CA product back in the 90s and were issuing client certs on smarts cards via the browser. Plug in smartcard and browser could automatically authenticate to all services. Take it out and go home.
- maxwelljoslyn 5y agoI didn't know that. Oh, come on. That's so unfortunate.
- lmz 5y agoI used an SSL CA (Startcom / StartSSL) that used Client certs as its (only?) method of authentication. It was a terrible experience if you ever had to log in from another browser.
- jjav 5y agoYou can also "loose, etc" the phone so it is equally weak on that front. Except the SIM can be hijacked, so SMS is strictly worse and never better. Best compromise between usability, access and recovery is to always use TOTP but be sure to always securely back up the secret offline. Don't ever just scan it into a single device, as then you're back to being able to lose it and be locked out.
- tgsovlerkhgsel 5y agoThe advantage with the phone is that the web site operator can pawn off the difficult recovery part on your mobile provider (go there, show ID, get a new SIM). IMO both the mobile provider and the web site operator should be jointly liable for damages resulting from SMS 2FA abuse. The mobile operator for giving access to your phone number to an unauthorized person, the web site operator for using a known insecure technique. Both the number of successful hijackings and companies using SMS 2FA would drop drastically.
- tgsovlerkhgsel 5y agoOne of the problems here is that few sites support U2F, and even fewer support it properly. Proper support would mean allowing multiple tokens, so that you can have one permanently on your keychain, one permanently in your computer at home, and an off site backup pair that you rotate (enroll the one that is at home, then swap and enroll the other one). On desktop, touching a U2F token is a lot easier than typing numbers from a SMS, and it actually protects against one of the biggest threats, phishing (the SMS does not - if the phisher bothers to ask for it, the user, who thinks that they're logging into the legit web site, will enter it).