OpenID Warns of Serious Remote Bug, Urges Upgrade
Trailrunner7 writes "The OpenID Foundation is warning users about a weakness in the software that could enable an attacker to change some of the data exchanged between parties that use OpenID. The group is telling sites that implement OpenID to update to a new version in order to fix the problem. The bug in OpenID lies in the system's Attribute Exchange, an extension that gives sites the ability to exchange identity information between endpoints. OpenID, an open source project that enables users to prove their identity to myriad sites without providing their passwords, is used by a slew of popular sites, including Google, Yahoo and Flickr."
Fancy leaving out the NSA backdoor codes first time around. I'll bet they're pissed ...
HAHA YOU SAID PENIS
So, now, everyone is having a security auditing , guess why? By own experience, i can say , security is actually something you do not want to expend money on, of course when the shit hits the fan , it gets a pretty decent budget , until them, you are just paranoid!
Surely calling it "closedID" would be a better way of pushing the product as a secure item.
The purpose of existence is to make money.
So are you arguing that OpenID is sending inaccurate information? What's your point?
My brain is overly lubricated
that CmdrTaco is hung like a toddle.
I've not had to log into a stackoverflow site since the first time I logged in, about 3 months ago.
I conclude "You're doing it wrong".
There is nothing interesting going on at my blog
http://www.pingidentity.com/blogs/pingtalk/index.cfm/2011/5/5/Researchers-find-OpenID-vulnerability-sites-patch-hole
This only affects sites that use OpenID's AttributeExchange. If you just use it for authentication (and use the relying party's claimed identifier as the protocol advises) you are not/never were vulnerable.
until government stuff goes down the same route.
I can see using OpenID for throwaway accounts, but I would never use it for anything serious. I use different passwords for every site I visit, so if one site gets compromised then my other accounts are still safe. OpenID puts all the eggs in one basket, and that just doesn't sit well with me.
Is it a bug or feature of "Open" ID?
Take Nobody's Word For It.
Some time ago myOpenID.com lost all (or some portion) of their registered accounts (afaik this was due to Amazon's cloud trouble). Which was annoying because I used it for my stackexchange login. As it turns out, I could just recreate my login with the same name and voila I could use it to access my stackexchange account. That means if someone had created an account with my name before I did they'd have full access to my SE account.
I never realised how potentially broken things could get with OpenID and I'm being a bit weary about ever using OpenID again, even though I suppose I should've been more careful about what OpenID provider I picked.
From someone who has done multiple OpenID RP and OP implementations, I'd say that they've completely over-reacted. First off, they are sounding alarm bells over Attribute Exchange, which isn't part of the core specification and by doing so are further tarnishing the brand of OpenID. There's no risk to the actual authentication portion of OpenID, which now causual observers will continue to thump their chests on how insecured the protocol is. Secondarily, _anyone_ who has ever read the AX specification knows that it says nothing about signatures in the security sections. It's designed for user-asserted data. If you intend to use it for something else (such as exchanging data verified by an identity assurance process on the OP), generally you would need to have made some out-of-band contract with your OP to ensure they were performing the assurance and signing the information.
How this should have been handled: the Attribute Exchange specification should have been bumped a major version with the new wording to indicate signature requirements on the part of the OP and RP. By declaring this "a bug" they are forcing a non-passive change on potentially thousands of RPs who are consuming AX from OPs and will break as they upgrade to 0.9.6 of OpenID4Java library. If they had simply bumped versions and implemented v2 in the library, then RPs who needed to require signatures could simply request v2 from the provider.
The point here is that the specification clearly doesn't require OPs to sign this extension, as it was intended as exchange of non-authoritative data. I think there may be a greater problem here that too many people were presuming that the data is somehow authoritative without doing any thinking for themselves. Nothing was stopping RPs and OPs from colluding to sign the extension under the current model (granted, the 0.9.5 version of OpenID4Java did not make this an easy task when I wrote an OP implementation that performed AX signing.)
A group of security researchers identified a flaw in how some OpenID relying parties implement Attribute Exchange (AX). See below for information on the suggested fix. The researchers determined that some sites were not confirming that the information passed through AX was signed. That allows an attacker to modify the information. If the site is only using AX to receive low-security information like a users self-asserted gender, then this will probably not be a problem. However if it is being used to receive information that it only trusts the identity provider to assert, then it creates the potential for an attack.
There are no AX attributes that all providers are required to support, nor are there any (as far as I know) available from enough providers to "trust the identity provider" for. Even the basic ones like name and email address can't be relied upon.
Before you log in to a site using OpenID, if you have a decent provider (Google and Launchpad both do this; I don't know about others), it will tell you exactly what information the relying site is asking for, and what it's going to send to the relying party. I have yet to see a relying site that uses AX for anything other than my email address and sometimes my name. And once you register on a site using OpenID, the site will ask you for that information anyway using the AX attributes as default form values if they are available, since AX can't be relied on to provide the information. This "weakness" in OpenID only exists for relying sites that use AX for "information that it only trusts the identity provider to assert", which only exist in theory. Calling this a "serious remote bug" is a joke.
And most importantly, the summary doesn't make clear that even on the theoretical sites where this is an actual problem, your login and valuable personal information cannot be compromised by this vulnerability, because AX is not used for any of that. That is what a "serious remote bug" in OpenID would be.
I just RTFA and it is just as confusing as the summary. I wish blog authors would at least try and understand the subject before writing about it.. OpenID is a specification. As far as I can tell the specification is safe, so implementations that follow the specification correctly are safe. However it seems that there are a few implementations that skip an important part of the process, namely input verification. Basically saying OpenID is broken because of this is like saying SQL is broken because some sites are vulnerable to SQL injection attacks.
Just I don't want my ID open to everyone.
Somewhat OT, but what happened to the ability to log into /. with my open ID? My account still has the OpenID associated with it, but the login area for /. doesn't seem to let me use an open ID anymore. Or is there a lesser known login area that lets one use open ID?
"Save the whales, feed the hungry, free the mallocs" -- author unknown
To be clear. The vulnerability is not about passwords, or really anything at the identity provider.
The openID attribute exchange extension allows attributes like name and email to be sent along with the authentication.
Those attributes being self asserted are not required to be signed to prevent tampering.
The logic being that if you can put anything into those fields at your identity provider why would a user tamper with them on the wire to change them.
The AX extension allows for the signing of those elements.
The problem is that some RP were violating the spec and treating a unsigned email address from the OP as the users identifier and trowing away the rest of the authentication message.
The exploit required the RP to:
a) violate the openID spec
b) do it without without at-least checking that the email came from the OP rather than being self asserted by the user.
So in the end, the fix was asking those RP being affected to stop violating the openID spec.
The more interesting thing to explore is why they ever thought that this was a good idea.
Given that more than one RP was involved, there is a element of group behaviour causing people to make bad security choices.
John B.