The entire telephone ecosystem is built on trust and poor security. relying on them is badAm I missing something here, or does the issue highlighted in the article have nothing to do with SMS and is basically just about poorly managed self-authenticating links?
Not saying SMS is a legitimate flow for second factors or anything related to security, but AFAICT, the article is not about SMS at all. It’s about insecure authentication links — regardless of how they are communicated (could be SMS, email, snail mail, or any other messaging service).
I think the emphasis on SMS is that it’s easier to obtain the magic link via SMS than one sent to email, because in theory, email is better protected and more difficult to obtain. I think they got these messages for research off of poorly secured SMS gateway providers who send the links, if I’m understanding correctly.Am I missing something here, or does the issue highlighted in the article have nothing to do with SMS and is basically just about poorly managed self-authenticating links?
Not saying SMS is a legitimate flow for second factors or anything related to security, but AFAICT, the article is not about SMS at all. It’s about insecure authentication links — regardless of how they are communicated (could be SMS, email, snail mail, or any other messaging service).
EDIT: checking the link to the paper, they do clearly call out SMS. But unless I’ve misunderstood the issue, links sent via email are equally at risk. It’s concerning to me that the paper could lead people to believe that moving these links to email would protect them in any way.
I think this probably is why they're calling out SMS:Am I missing something here, or does the issue highlighted in the article have nothing to do with SMS and is basically just about poorly managed self-authenticating links?
Not saying SMS is a legitimate flow for second factors or anything related to security, but AFAICT, the article is not about SMS at all. It’s about insecure authentication links — regardless of how they are communicated (could be SMS, email, snail mail, or any other messaging service).
EDIT: checking the link to the paper, they do clearly call out SMS. But unless I’ve misunderstood the issue, links sent via email are equally at risk. It’s concerning to me that the paper could lead people to believe that moving these links to email would protect them in any way.
Granted, this CAN be done with e-mail links. But those are harder to get and verify than phone numbers are. So by my read, the issue is more about accessibility to dupe someone than it is about the method used to dupe them.Easy to execute at scale
A paper published last week has found more than 700 endpoints delivering such texts on behalf of more than 175 services that put user security and privacy at risk.
There are more risks associated with SMS than emails, and the SMS data was publicly and ethically available for research compared to a similar amount of email data. However, the issue highlighted is that these tokens are not short-lived, one-time use, or cryptographically secure.Am I missing something here, or does the issue highlighted in the article have nothing to do with SMS and is basically just about poorly managed self-authenticating links?
Not saying SMS is a legitimate flow for second factors or anything related to security, but AFAICT, the article is not about SMS at all. It’s about insecure authentication links — regardless of how they are communicated (could be SMS, email, snail mail, or any other messaging service).
EDIT: checking the link to the paper, they do clearly call out SMS. But unless I’ve misunderstood the issue, links sent via email are equally at risk. It’s concerning to me that the paper could lead people to believe that moving these links to email would protect them in any way.
The SMS gateways are only used as a lens into the overall SMS ecosystem as service providers send similar emails to real phone numbers that are used to register for these services.I think the emphasis on SMS is that it’s easier to obtain the magic link via SMS than one sent to email, because in theory, email is better protected and more difficult to obtain. I think they got these messages for research off of poorly secured SMS gateway providers who send the links, if I’m understanding correctly.
There are more risks associated with SMS than emails, and the SMS data was publicly and ethically available for research compared to a similar amount of email data. However, the issue highlighted is that these tokens are not short-lived, one-time use, or cryptographically secure.
I'm a subscriber to that same list (Hi Ed Zitron, I'm a huge fan!), & I find it annoying that every time I go to his site, I have to do the dance of inputting my email address, then going to gmail to collect the link. His blog is good enough that I'm willing to do that, but I certainly count that as friction.The absolute most user friendly login system I have ever used is the one for members on https://www.wheresyoured.at/
There is no password at all, no SSO, no 2FA logging in simply requires inputting an email address then either clicking a link 1 time link in the email or entering a 1 time code. The code is 6 digit numerical and the link seems to contain plenty of entropy.
You might think that failing to require a password is a security issue, but, if someone has access to your email, they can just change your password, so for most typical uses a password doesn't add any meaningful amount of security.
Sure 2FA makes sense for more important sites, but for access to a premium newsletter it's perfectly cromulent.
It doesn't leave you signed in?I'm a subscriber to that same list (Hi Ed Zitron, I'm a huge fan!), & I find it annoying that every time I go to his site, I have to do the dance of inputting my email address, then going to gmail to collect the link. His blog is good enough that I'm willing to do that, but I certainly count that as friction.
I'm a subscriber to that same list (Hi Ed Zitron, I'm a huge fan!), & I find it annoying that every time I go to his site, I have to do the dance of inputting my email address, then going to gmail to collect the link. His blog is good enough that I'm willing to do that, but I certainly count that as friction.
Nope. :|It doesn't leave you signed in?
Jesus.. It's called a cryptographic nonce you idiot programmers. Generate a random one and store it in a table with an expiration date.By incrementing the token—for instance, by first changing 123 to 124 or ABC to ABD and so on—the researchers were able to access accounts belonging to other users.
I've seen that name before...(Hi Ed Zitron, I'm a huge fan!)
That's rather strong language there. o_oJesus.. It's called a cryptographic nonce you idiot programmers.
For sites the use magic links, the benefit is not having to store a ton of data that hackers are just dying to steal. That's a huge boon that partially helps you, despite the extra friction.This is my thought as well around “magic” links. I understand what they are trying to do with them, but for those who are using a password manager properly (unique password per account, some kind of OTP, passkey, etc), magic links are incredibly annoying. It really just feels like sites are trying to offload their risk to another service (email), at the cost of a streamlined login process. I’ll take decent 2FA over a magic link any day.
I hate "magic links" with a passion.This is my thought as well around “magic” links. I understand what they are trying to do with them, but for those who are using a password manager properly (unique password per account, some kind of OTP, passkey, etc), magic links are incredibly annoying. It really just feels like sites are trying to offload their risk to another service (email), at the cost of a streamlined login process. I’ll take decent 2FA over a magic link any day.
Jesus.. It's called a cryptographic nonce you idiot programmers. Generate a random one and store it in a table with an expiration date.
Not to mention that if I’m reading on desktop for the reason of a larger screen and they send the link by SMS to my mobile, I have to open the site on my mobile.
How TF do I open it on desktop?
With robust functionality of generating and saving passwords using built-in password managers you’d have thought the issue of password reuse has been solved.
But it looks like the real issue is companies not willing to do the hard work and inserted offload auth security to email providers and plunge companies.
I'm a subscriber to that same list (Hi Ed Zitron, I'm a huge fan!), & I find it annoying that every time I go to his site, I have to do the dance of inputting my email address, then going to gmail to collect the link. His blog is good enough that I'm willing to do that, but I certainly count that as friction.
Exactly! The paper mentions all links were not one time and at least 1 year old and some even from 2019. Also, the majority of services had lower than required entropy.I think this is the part that matters. SMS, email, smoke signals, whatever - if you fail the short-lived/one-time/lack of entropy, you're dead in the water regardless of method.
Hell, that's something that should be required for session tokens like cookies too, and if you need them longer lived you silently renew them (that's what I do with my reverse proxy - sessions last as long as configured but default to 20 hours, but the session cookie is only valid for very limited time - while its valid, it can be renewed unless you've exceeded the session limit...)
Edit: I can understand the lack of "one-time" though - you can implement short-lived and plenty of entropy with stateless management (just encode it and sign it appropriately - that's what JWTs are for though you can use any method you like), but one-time requires keeping state to track its use, and depending on the volume that can be pretty ugly. If the short-lived is low and robust enough I'd have to think about the trade-off of true one-time.
It doesn't make sense for a newsletter but the paper mentioned financial services among top 3 industries.I'm a subscriber to that same list (Hi Ed Zitron, I'm a huge fan!), & I find it annoying that every time I go to his site, I have to do the dance of inputting my email address, then going to gmail to collect the link. His blog is good enough that I'm willing to do that, but I certainly count that as friction.
The paper not only mentions enumerable but also weak random characters. For example a 5 character alhpanumeric token for a service with large userbase like Everquote. That's why it got a hit even within 10 manual attempts of changing the token.Jesus.. It's called a cryptographic nonce you idiot programmers. Generate a random one and store it in a table with an expiration date.
5 character? Holy hell, even with base 64 that's only 30 bits. I get twitchy at less than 128. SMS is tight, but not that tight.Exactly! The paper mentions all links were not one time and at least 1 year old and some even from 2019. Also, the majority of services had lower than required entropy.
It doesn't make sense for a newsletter but the paper mentioned financial services among top 3 industries.
The paper not only mentions enumerable but also weak random characters. For example a 5 character alhpanumeric token for a service with large userbase like Everquote. That's why it got a hit even within 10 manual attempts of changing the token.
Average SMS contains 10 URL links factoid actualy just statistical error. 2FA Georg, who authenticates 315 million login attempts every year, is an outlier adn should not be countedThe researchers collected 322,949,000 unique SMS-delivered URLs extracted from over 33 million texts
As someone with a password manager it's a huge annoyance. I get it's trying to help people who are bad with passwords and reset every time they log in, but leaving two options would be pretty nice.
Two of the big one mentioned in paper having millions of active users, iHire and Everquote, both have 5 character tokens. More than 72% of the service providers had less than 64 bit entropy.5 character? Holy hell, even with base 64 that's only 30 bits. I get twitchy at less than 128. SMS is tight, but not that tight.
Edit: SMS uses a weird restricted character set, not allowing complete ASCII, so have to be really careful. I think base64-URL is ok, and maybe standard base64 is ok too. When I'm not sure, I just use base32 because there's virtually no place it's not safe and it can be case insensitive.
That's a mistake in the writing. The paper mentions 322,949 URLs.Average SMS contains 10 URL links factoid actualy just statistical error. 2FA Georg, who authenticates 315 million login attempts every year, is an outlier adn should not be counted
Two of the big one mentioned in paper having millions of active users, iHire and Everquote, both have 5 character tokens. More than 72% of the service providers had less than 64 bit entropy.
True, service providers with small user base might get away with a little lower entropy but those with millions of users should certainly be near the 64 bit mark. The paper notes this 64 bit is actually based on OWASP recommendation in "Insufficient Session ID Length"~60 bits (10 character base64 or 12 base32) I can almost see if its for a random token that's very short lived - it's a large enough space that brute forcing it should hopefully be impractical. But you're back to making sure all the factors like short live are actually there.
30 isn't even close though. That's about a billion, and sending a billion requests to a large service from a botnet? Well, they'll notice it, but probably too late.
True, service providers with small user base might get away with a little lower entropy but those with millions of users should certainly be near the 64 bit mark. The paper notes this 64 bit is actually based on OWASP recommendation in "Insufficient Session ID Length"
Shout out for KDE Connect too.Phone link SMS to desktop is already a thing. It's standard for all Apple ecosystem stuff, and Windows is trying its best.
I agree, but they don't even meet 64 bit entropy requirements. There are also cases where they have long strong tokens in the final redirected URL but the initial URL sent to user has been shortened with a short token which makes the final stronger URL useless. It's pretty dumb but it's still true in real world applications.That 64 bit length is probably a bit due for revision. Anything I write would scream blue murder if you set a key used for internal derivation to anything less than 128 bits. It'll accept it, but it'll scale it's internal use up with 256/384/512 bits (and unfortunately truncate at 512 bits, because it's deriving keys using SHA functions or similar)
Edit: I worded that wrong. It won't accept <128 bit, and at 128+ it scales up the longer the key.
I agree, but they don't even meet 64 bit entropy requirements. There are also cases where they have long strong tokens in the final redirected URL but the initial URL sent to user has been shortened with a short token which makes the final stronger URL useless. It's pretty dumb but it's still true in real world applications.
I agree, its good to be on the safer side, especially when the cost of doing so is negligible, considering how rapidly things are evolving in the tech space.Honestly, I think 60 bits is "close enough" if 64 fits their use case. But they're very much having to make a decent argument that it's good enough at 64 bits in the first place, which can be done if they know their use case well enough. 96? Yeah, wouldn't really care. More than 64 and plenty enough for most token lengths I think - it's the nonce size typically used in GCM for example. The only reason I set my limits at 128/256/512 bits is because I don't write standards for things I use, and sometimes I'm stuck dealing with those exact figures in places, so I have to make sure nothing stupid gets used by mistake. When I actually set my keys when configured, I just randomly generate something long enough and stick it in the config and forget about it after that.
I agree, its good to be on the safer side, especially when the cost of doing so is negligible, considering how rapidly things are evolving in the tech space.
It's applicable to all services which otherwise does or does not require a password, but the issue is when they send a magic link and that magic link has no or weak authentication before showing user PII or giving escalated privileges. The guessing part is only true when the token in the URL or the authentication parameters do not have rate limiting or timeouts.Not fully understanding the implication of this story, but I know someone here can clear this up, so here goes.
Based on info from this article / study, is it correct to say that any legit services site, which:
A) Requires you to generate an account ID, but specifically does NOT allow passwords, and
B) When logging in, instead sends you a code via email or SMS, which you then copy-paste into the supplied field...
... is by definition a security flaw that easily allows anyone to gain access to your account and the info in it, without actually having access to your phone or email (essentially because it's easy to guess or force-generate the right code)?
If so, it seems to me the solution is for everyone to find the legitimate services they use which have this flawed approach, leave the service if you can with an email to their customer service that you're leaving because their login method is one giant security flaw and that strong password + 2FA is a bare minimum to get by in this world.
Additionally, is it correct the implications in this article do NOT impact the many legitimate sites that require BOTH an ID and a strong password, and THEN, both having been supplied by the user, requires them to retrieve and paste a numeric 2FA code from their phone / email to complete the login? (Assuming all certificates, server setups, etc are solid.)