tags:

views:

428

answers:

3

Google uses email addresses as OpenID login strings for its provider service.

I was reading about a conference where they were pushing to have it incorporated into the standard. Microsoft was against this, the "official" reason being security vulnerabilities this would supposedly introduce. Is this bogus? If not, why is it insecure?

A: 

One danger of using email address is that it is guessable. Or rather than someone who wants to break your account will probably know it.

Compare that to the current situation where your username and your OpenID provider could be anything. Maybe that's guessable, maybe it isn't. If it's not it makes it just a little harder to compromise your account.

Some people seem to have a problem with this. Look it's pretty simple. I haven't said that a non-obvious username is in and of itself sufficient security. Far from it. Security through obscurity is no security at all.

However, it's pure commonsense that out of:

  1. A password with an obscure username; and
  2. The same password with an obscure username.

that (1) is, at worst, equally secure to (2) and at best it is more secure.

What's more if your email is your password then if you compromise someone's email address you potentially compromise every system that uses that as a username is more easily compromised both by virtue of "Forget Password?" links and the fact that a password used in one place is more likely to be used in another.

Sorry but that's just commonsense.

cletus
So what if it is guessable? You still need the password. Isn't what you're describing [security through obscurity](http://en.wikipedia.org/wiki/special:search/security_through_obscurity)?
Joe
@Joe: absolutely. If your security relies even *slightly* on people not guessing your username, you're not doing it right.
skaffman
A: 

It's not more insecure than using plain urls.

Imagine my email is [email protected]. It's the same thing as using domain.com/name, right?

It's as guessable as your homepage (almost everyone I know uses their homepage or blog as their OpenID).

What may (although I don't really believe it) be more insecure is if the authentication happens via email. For instance you give your email address, and you receive a token in your email that you have to insert in order to continue (like a temporary password).

That may be insecure if you have an insecure email workflow (specially the email client, and OS. This security is a special concern for Microsoft). That's maybe why they think it's less secure. But if you think you can reset your password by email in most OpenID providers, isn't it the same thing?

Notice however that you can also have email authentication (or even Twitter or SMS-based authentication, I've used for a while) in OpenID even without using email addresses as OpenID, but URLs instead.

Alcides
Virtually all email traffic is neither encrypted nor authenticated and so is insecure, irrespective of the OS the end user client is running on.
Pete Kirkham
Google's linking of email and OpenID means the same password for both which is a massive risk. There was nothing in Google's suggestion about using actual emails as secondary authentication. But I guess your dislike of MS as evidenced in your answer got in the way of thinking it through.
blowdart
Wow, you're seriously claiming that email is secure as long as you're not running Windows?
jalf
Why was this even accepted?! There is no real knowledge backing it and all I really got is a [factually incorrect] MS flame. Email insecure ONLY in MS-land?! FAIL.
Rob Cooper
As another point if somewhat moot, google.com/myname does not map to [email protected] or anything like that if you don't have a gmail address.
Ray Booysen
Wow. Somehow, this answer beautifully showcases both StackOverflow's biggest strengths and its biggest weaknesses (and ironically, both are the same: empowered users).
Konrad Rudolph
This was not MS bashing. If you check my CV you will see I was a Microsoft Student Partner and I promote MS technologies.Maybe the way I exposed the idea was wrong (and someone would have edited it). The email protocol is not secure for all means (that's why something called OpenGPG exists, but sadly not mainstream). I was focusing in the email client (and underlying OS) which security is a big concern for MS.In my experience there were no big issues with non-MS email clients like Thunderbird or Apple Mail (mainly because they are not that popular).So you know, I've edited the answer.
Alcides
People won't edit you because you are wrong - you're responsible for correcting your own mistakes.
blowdart
+18  A: 

This goes against the minimal disclosure concept. Right now if an OpenID relying party wants your email address they ask for it and you are warned about this by the identity provider and asked to confirm it. Using the email address means it goes whether you like it or not unless you're using OpenID 2.0 which can generate unique values on a per relying party basis.

It would also be a big change for all the OpenID libraries - URLs are discoverable, you know where to go with them, email addresses are not, which was why there was outrage at Google unilaterally doing this and effectively forking the OpenID standard to suit themselves.

The other problem lies in phishing. OpenID is very vulnerable to this as users trust the relying party to redirect them to their provider after discovering it via the OpenID provided - so a "mischievous" relying party may redirect to a phishing site which saves the OpenID and the password. With Google the OpenID and password is your gmail account and password so you've not only lost control of your OpenID but your email account as well. Of course this could be secured by the provider - you could have separate email passwords and OpenID passwords, you could have a secret message on a per user basis you show on the OpenID login page, but as we're well aware users are stupid. They don't check URLs in the browser, they blindly click OK on dialog boxes, they simply don't think that a web page could be fake. By using the email address and the same password Google are exposing the majority of their users to an unacceptable risk.

blowdart
+1 for identifying the minimal disclosure problem-1 for accusing Google of forking OpenID 2.0 when they in fact are following the protocol (except delegation).
Andrew Arnott
Wasn't google initial implementation a fork though? It had the extra discovery step just for them where you had to talk to google to get the endpoint?
blowdart