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 
> <mailto: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 
>> <mailto: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 
>>> <mailto: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 <http://www.independentid.com/>phil.h...@oracle.com 
>>>> <mailto:phil.h...@oracle.com>
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> On Jan 25, 2016, at 4:52 PM, nov matake <mat...@gmail.com 
>>>>> <mailto:mat...@gmail.com>> wrote:
>>>>> 
>>>>> The first assumption is coming from the original security report at 
>>>>> http://arxiv.org/abs/1601.01229 <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/
>>>>>  
>>>>> <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 
>>>>>> <mailto:phil.h...@oracle.com>> wrote:
>>>>>> 
>>>>>> Sorry, meant to reply-all.
>>>>>> 
>>>>>> Phil
>>>>>> 
>>>>>> @independentid
>>>>>> www.independentid.com 
>>>>>> <http://www.independentid.com/>phil.h...@oracle.com 
>>>>>> <mailto:phil.h...@oracle.com>
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> Begin forwarded message:
>>>>>>> 
>>>>>>> From: Phil Hunt <phil.h...@oracle.com <mailto: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 <mailto: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 
>>>>>>> <http://www.independentid.com/>phil.h...@oracle.com 
>>>>>>> <mailto:phil.h...@oracle.com>
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On Jan 25, 2016, at 2:58 PM, Nat Sakimura <sakim...@gmail.com 
>>>>>>>> <mailto: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/ 
>>>>>>>> <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 
>>>>>>>> <mailto: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 
>>>>>>>> > <mailto:gffle...@aol.com>> wrote:
>>>>>>>> >
>>>>>>>> > would
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> OAuth mailing list
>>>>>>>> OAuth@ietf.org <mailto:OAuth@ietf.org>
>>>>>>>> https://www.ietf.org/mailman/listinfo/oauth 
>>>>>>>> <https://www.ietf.org/mailman/listinfo/oauth>
>>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> OAuth mailing list
>>>>>> OAuth@ietf.org <mailto:OAuth@ietf.org>
>>>>>> https://www.ietf.org/mailman/listinfo/oauth 
>>>>>> <https://www.ietf.org/mailman/listinfo/oauth>
>>>>> 
>>>> 
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org <mailto:OAuth@ietf.org>
>> https://www.ietf.org/mailman/listinfo/oauth 
>> <https://www.ietf.org/mailman/listinfo/oauth>

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to