security
Martin Atkins
mart at degeneration.co.uk
Wed Oct 25 07:11:23 UTC 2006
Eddy Nigg (StartCom Ltd.) wrote:
>
> Too bad, now anybody can point an http sniffer to your IDP server and
> wait patiently for the user/pass pair...However I suspect, that you mix
> up the IDP and RP here....The above looks more like an IDP ;-)
>
The more I read your replies the more I get the impression that you
don't really understand the OpenID protocol flow. In particular, thue
"username/password pair" is OUT OF SCOPE FOR OPENID. How the IdP
authenticates the user, whether by username/password, a cookie, SSL
client cert, or even just "I know this client is on the same LAN as me",
is NOT SPECIFIED by OpenID. What *is* specified by OpenID is how the IdP
communicates the positive assertion back to the RP.
In a separate message I posted the following diagram showing the flow of
information in a "smart mode" OpenID transaction:
<http://i13.tinypic.com/2w3ch7b.png>
The arrows shown in bright red are those which could be theoretically
compromised if the RP doesn't use SSL. The dark red arrow shows what
could be theoretically compromised if the identity URL does not use SSL.
As you can see:
* A username/password pair does not feature anywhere in the protocol
* A cleartext RP is compromising only:
* The claimed_identifier (public knowledge)
* The authentication signature, which is already cryptographically
protected using a shared secret exchanged over a secure link
between the RP and the IdP. It is also RP-specific and non-
replayable.
* A cleartext identity URL may allow an attacker to spoof the URL of
the IdP and the IdP Token.
My take-away from this is that:
* The IdP MUST run an SSL server.
* The RP MAY run an SSL server, but OpenID doesn't care either way
* The identity URL SHOULD be on an SSL server, but due to real-world
adoption problems early adopters will probably not use SSL. Moving
forward, reputable IdPs could begin offering SSL-secured identity
URLs for a fee, which would cover costs of supplying a dedicated
IP address to the user, the extra computing power required to do SSL,
and perhaps a bundled SSL certificate. However, we are not yet at
the point where we can get away with mandating this.
More information about the general
mailing list