Yup.

For the RPs that would deal with valuable data, I also recommend it to
become HTTPS only. This will effectively close the hole for the AS Mix-Up.
Also, I would recommend to the clients to think twice before accepting
random ASs.
To prevent the code phishing, it is a good idea to require the same
authority restriction. Otherwise, use some variant of discovery to get the
authoritative token endpoints.


2016年1月27日(水) 21:49 George Fletcher <gffle...@aol.com>:

> Based on Hans' response to Nat I understand why this doesn't solve all the
> use cases. It does still seem like a good idea from a client perspective
> that would address the dynamic client registration cases where the Bad AS
> is returning mixed endpoints.
>
>
> On 1/27/16 7:43 AM, George Fletcher wrote:
>
> Following up on Nat's last paragraph... did the group in Darmstadt discuss
> this option? Namely, to require that the authority section of the AuthZ and
> Token endpoints be the same? Are there known implementations already
> deployed where the authority sections are different? It seems like a simple
> check that would address the endpoint mix-up cases.
>
> Thanks,
> George
>
> On 1/26/16 8:58 PM, Nat Sakimura wrote:
>
> John,
>
> Nov is not talking about the redirection endpoint. I just noticed that
> 3.1.2.1 of RFC 6749 is just asking TLS by "SHOULD" and I think it needs to
> be changed to "MUST" but that is not what he is talking about.
>
> Instead, he is talking about before starting the RFC 6749 flow.
>
> In many cases, a non TLS protected sites have "Login with HIdP" button
> linked to a URI that initiates the RFC 6749 flow. This portion is not
> within  RFC 6749 and this endpoint has no name or no requirement to be TLS
> protected. Right, it is very stupid, but there are many sites like that.
> As a result, the attacker can insert itself as a proxy, say by providing a
> free wifi hotspot, and either re-write the button or the request so that
> the RP receives "Login with AIdP" instead of "Login with HIdP".
>
> I have add a note explaining this to
> http://nat.sakimura.org/2016/01/15/idp-mix-up-attack-on-oauth-rfc6749/
>
> I also have added a bit of risk analysis on it and considered other risk
> control measures as well.
>
> It does not seem to be worthwhile to introduce a new wire-protocol element
> to deal with this particular attack. (I regard code cut-and-paste attack a
> separate attack.) I am inclining to think that just to TLS protect the
> pre-RFC6749 flow portion and add a check to disallow the ASs that has
> different authority section for the Auhtz EP and Token EP would be
> adequate.
>
> Nat
>
> 2016年1月27日(水) 2:18 John Bradley <ve7...@ve7jtb.com>:
>
>> Nov,
>>
>> Are you referring to Sec 3.1.2.1 of RFC 6749.
>>
>> Stating that the the redirection endpoint SHOULD require TLS, and that
>> the AS should warn the user if the redirect URI is not over TLS (Something
>> I have never seen done in the real world)
>>
>> Not using TLS is reasonable when the redirect URI is using a custom
>> scheme for native apps.
>>
>> It might almost be reasonable for the token flow where the JS page itself
>> is not loaded over TLS so the callback to extract the fragment would not be
>> as well.
>> Note that the token itself is never passed over a non https connection in
>> tis case.
>> I would argue now that it is irresponsible to have a non TLS protected
>> site, but not everyone is going to go along with that.
>>
>> Using a http scheme URI for the redirect is allowed but is really stupid.
>>   We did have a large debate about this when profiling OAuth for Connect.
>> We did tighten connect to say that if you are using the code flow then a
>> http scheme redirect URI is only allowed if the client is confidential.
>>
>> John B.
>>
>> On Jan 26, 2016, at 1:14 AM, Phil Hunt (IDM) <phil.h...@oracle.com>
>> wrote:
>>
>> Still don't see it. Though i think the diagram is wrong (the rp should
>> redirct to the ua and not call the authz direct), the IDP should either
>> return an error or redirect the RP to TLS.
>>
>> I don't see this as proper oauth protocol since the RP is MITM the UA
>> rather than acting as a client.
>>
>> Phil
>>
>> On Jan 25, 2016, at 19:57, nov matake <mat...@gmail.com> wrote:
>>
>> In this flow, AuthZ endpoint is forced to be TLS-protected.
>> http://nat.sakimura.org/wp-content/uploads/2016/01/oauth-idp-mixup.png
>>
>> However, RP’s redirect response which causes following AuthZ request is
>> still not TLS-protected, and modified on the attacker’s proxy.
>>
>> Section 3.2 of this report also describes the same flow.
>> http://arxiv.org/pdf/1601.01229v2.pdf
>>
>> On Jan 26, 2016, at 12:37, Phil Hunt (IDM) <phil.h...@oracle.com> wrote:
>>
>> Also the authz endpoint is required to force tls. So if the client
>> doesn't do it the authz should reject (eg by upgrading to tls).
>>
>> Phil
>>
>> On Jan 25, 2016, at 19:29, Phil Hunt (IDM) <phil.h...@oracle.com> wrote:
>>
>> When the RP acting as the client issues a authorize redirect to the UA it
>> has to make it with TLS
>>
>> Phil
>>
>> On Jan 25, 2016, at 17:53, Nov Matake <mat...@gmail.com> wrote:
>>
>> It doen't say anything about the first request which initiate the login
>> flow.
>> It is still a reasonable assumption that RP puts a "login with FB" button
>> on a non TLS-protected page.
>>
>> nov
>>
>> On Jan 26, 2016, at 10:45, Phil Hunt <phil.h...@oracle.com> wrote:
>>
>> I would find it hard to believe that is true.
>>
>> From 6749 Sec 3.1
>>
>>    Since requests to the authorization endpoint result in user
>>    authentication and the transmission of clear-text credentials (in the
>>    HTTP response), the authorization server MUST require the use of TLS
>>    as described in Section 1.6 
>> <https://tools.ietf.org/html/rfc6749#section-1.6> when sending requests to 
>> the
>>    authorization endpoint.
>>
>>
>> Sec 3.1.2.1
>>
>>    The redirection endpoint SHOULD require the use of TLS as described
>>    in Section 1.6 <https://tools.ietf.org/html/rfc6749#section-1.6> when the 
>> requested response type is "code" or "token",
>>    or when the redirection request will result in the transmission of
>>    sensitive credentials over an open network.  This specification does
>>    not mandate the use of TLS because at the time of this writing,
>>    requiring clients to deploy TLS is a significant hurdle for many
>>    client developers.  If TLS is not available, the authorization server
>>    SHOULD warn the resource owner about the insecure endpoint prior to
>>    redirection (e.g., display a message during the authorization
>>    request).
>>
>>    Lack of transport-layer security can have a severe impact on the
>>    security of the client and the protected resources it is authorized
>>    to access.  The use of transport-layer security is particularly
>>    critical when the authorization process is used as a form of
>>    delegated end-user authentication by the client (e.g., third-party
>>    sign-in service).
>>
>>
>> Section 10.5 talks about transmission of authorization codes in
>> connection with redirects.
>>
>> Also see 6819, Sec 4.4.1.1 regarding eavesdropping or leaking of authz
>> codes.
>>
>>
>> Phil
>>
>> @independentid
>> www.independentid.com
>> phil.h...@oracle.com
>>
>>
>>
>>
>>
>> On Jan 25, 2016, at 4:52 PM, nov matake <mat...@gmail.com> wrote:
>>
>> The first assumption is coming from the original security report at
>> http://arxiv.org/abs/1601.01229.
>> RFC 6749 requires TLS between RS and AS, and also between UA and AS, but
>> not between UA and RS.
>>
>> The blog post is based on my Japanese post, and it describes multi-AS
>> case.
>> Nat's another post describes the case which can affect single-AS case too.
>>
>> http://nat.sakimura.org/2016/01/22/code-phishing-attack-on-oauth-2-0-rfc6749/
>>
>> nov
>>
>> On Jan 26, 2016, at 08:22, Phil Hunt <phil.h...@oracle.com> wrote:
>>
>> Sorry, meant to reply-all.
>>
>> Phil
>>
>> @independentid
>> www.independentid.com
>> phil.h...@oracle.com
>>
>>
>>
>>
>>
>> Begin forwarded message:
>>
>> *From: *Phil Hunt <phil.h...@oracle.com>
>> *Subject: **Re: [OAUTH-WG] Call for Adoption: OAuth 2.0 Mix-Up
>> Mitigation*
>> *Date: *January 25, 2016 at 3:20:19 PM PST
>> *To: *Nat Sakimura <sakim...@gmail.com>
>>
>> I am having trouble with the very first assumption. The user-agent sets
>> up a non TLS protected connection to the RP? That’s a fundamental violation
>> of 6749.
>>
>> Also, the second statement says the RP (assuming it acts as OAuth client)
>> is talking to two IDPs.  That’s still a multi-AS case is it not?
>>
>> Phil
>>
>> @independentid
>> www.independentid.com
>> phil.h...@oracle.com
>>
>>
>>
>>
>>
>> On Jan 25, 2016, at 2:58 PM, Nat Sakimura <sakim...@gmail.com> wrote:
>>
>> Hi Phil,
>>
>> Since I was not in Darmstadt, I really do not know what was discussed
>> there, but with the compromised developer documentation described in
>> http://nat.sakimura.org/2016/01/15/idp-mix-up-attack-on-oauth-rfc6749/,
>> all RFC6749 clients with a naive implementer will be affected. The client
>> does not need to be talking to multiple IdPs.
>>
>> Nat
>>
>> 2016 年1月26日(火) 3:58 Phil Hunt (IDM) <phil.h...@oracle.com>:
>>
>>> I recall making this point in Germany. 99% of existing use is fine. OIDC
>>> is probably the largest community that *might* have an issue.
>>>
>>> I recall proposing a new security document that covers oauth security
>>> for dynamic scenarios. "Dynamic" being broadly defined to mean:
>>> * clients who have configured at runtime or install time (including
>>> clients that do discovery)
>>> * clients that communicate with more than one endpoint
>>> * clients that are deployed in large volume and may update frequently
>>> (more discussion of "public" cases)
>>> * clients that are script based (loaded into browser on the fly)
>>> * others?
>>>
>>> Phil
>>>
>>> > On Jan 25, 2016, at 10:39, George Fletcher <gffle...@aol.com> wrote:
>>> >
>>> > would
>>>
>>> _______________________________________________
>>> OAuth mailing list
>>> OAuth@ietf.org
>>> https://www.ietf.org/mailman/listinfo/oauth
>>>
>>
>>
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>>
>>
>>
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>>
>>
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>>
>>
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
>>
>
>
> _______________________________________________
> OAuth mailing listOAuth@ietf.orghttps://www.ietf.org/mailman/listinfo/oauth
>
>
> --
> Chief Architect
> Identity Services Engineering     Work: george.fletc...@teamaol.com
> AOL Inc.                          AIM:  gffletch
> Mobile: +1-703-462-3494           Twitter: http://twitter.com/gffletch
> Office: +1-703-265-2544           Photos: http://georgefletcher.photography
>
>
>
> _______________________________________________
> OAuth mailing listOAuth@ietf.orghttps://www.ietf.org/mailman/listinfo/oauth
>
>
> --
> Chief Architect
> Identity Services Engineering     Work: george.fletc...@teamaol.com
> AOL Inc.                          AIM:  gffletch
> Mobile: +1-703-462-3494           Twitter: http://twitter.com/gffletch
> Office: +1-703-265-2544           Photos: http://georgefletcher.photography
>
>
_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to