[OpenID] Nonces generated by the server?
Andrew Arnott
andrewarnott at gmail.com
Wed Apr 1 00:49:02 UTC 2009
If the RP's DNS is poisoned and the OP endoint is HTTP then no hacker
will bother with a replay. They can just sign their own spoofed
assertion.
Sent from my iPhone
On Mar 31, 2009, at 5:33 PM, Breno de Medeiros <breno at google.com> wrote:
> I would also add that while the responsibility should rely on the OP
> to check nonces in stateless mode, that if the OP does not have an
> HTTPS URL for check_authentication, a compromise of the DNS service
> at the RP allows replay of _any_ earlier cached responses. So RPs
> should at least try to see if the timestamp is not too skewed.
>
>
>
> On Tue, Mar 31, 2009 at 5:25 PM, Andrew Arnott
> <andrewarnott at gmail.com> wrote:
> Yes, Breno. I'd also like to see the spec give a maximum allowable
> length for the nonce to RPs know better what they can expect and how
> much storage to allow for nonces.
>
> --
> Andrew Arnott
> "I [may] not agree with what you have to say, but I'll defend to the
> death your right to say it." - Voltaire
>
>
> 2009/3/31 Breno de Medeiros <breno at google.com>
>
>
>
> On Tue, Mar 31, 2009 at 3:46 PM, Martin Atkins <mart at degeneration.co.uk
> > wrote:
> Andrew Arnott wrote:
> I'm also somewhat curious about how many OpenID consumers actually
> do nonce checking. Net::OpenID::Consumer for Perl actually ignores
> the nonce altogether and implements its own timestamp checking due
> to legacy code for OpenID 1.1, and seems to be vulnerable to replay
> for up to 30 seconds after a positive assertion.
>
>
> The author of the Perl library ought to be ashamed. This kind of
> thing reduces my confidence in using OpenID at any site other than
> one that I wrote the library for myself.
>
> Although this is what OSIS testing is all about. Hopefully there is
> a test to catch RPs and OPs that don't check the nonce for replays.
>
> Yes. As the maintainer of that library (though not its original
> author), I am ashamed, which is what prompted the question in the
> first place.
>
> I believe that the spec should make it clear that the OP is
> responsible for validating the uniqueness of the nonce in stateless
> mode.
>
>
>
> I'd love to have a test in the test suite for this.
>
> RPs only need to do this checking when they're running in stateful
> mode, right? Since stateless RPs have nowhere to store state they
> can't retain a history of nonces.
>
> Can you share some high-level details about your nonce-checking
> implementation? Specifically how you persist the previous nonces,
> when you expire them, etc?
>
> I'm wondering if it would instead be simpler to use a client-
> generated nonce in the return_to URL, as you note that DotNetOpenID
> is doing for 1.1 requests, thus allowing the nonce checking to be a
> whitelist rather than a blacklist and the nonces to be in a known
> format that I can optimize for.
>
>
> _______________________________________________
> general mailing list
> general at openid.net
> http://openid.net/mailman/listinfo/general
>
>
>
> --
> --Breno
>
> +1 (650) 214-1007 desk
> +1 (408) 212-0135 (Grand Central)
> MTV-41-3 : 383-A
> PST (GMT-8) / PDT(GMT-7)
>
> _______________________________________________
> general mailing list
> general at openid.net
> http://openid.net/mailman/listinfo/general
>
>
>
>
>
> --
> --Breno
>
> +1 (650) 214-1007 desk
> +1 (408) 212-0135 (Grand Central)
> MTV-41-3 : 383-A
> PST (GMT-8) / PDT(GMT-7)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openid.net/pipermail/general/attachments/20090331/b53a16f9/attachment.htm>
More information about the general
mailing list