Re: [OAUTH-WG] Mix-Up and CnP/ Code injection

torsten@lodderstedt.net Tue, 10 May 2016 05:53 UTC

Return-Path: <torsten@lodderstedt.net>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 683E112B044 for <oauth@ietfa.amsl.com>; Mon, 9 May 2016 22:53:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.621
X-Spam-Level:
X-Spam-Status: No, score=-2.621 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QtrOlqW4vdwK for <oauth@ietfa.amsl.com>; Mon, 9 May 2016 22:53:43 -0700 (PDT)
Received: from smtprelay05.ispgateway.de (smtprelay05.ispgateway.de [80.67.31.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EA12B12B02C for <oauth@ietf.org>; Mon, 9 May 2016 22:53:42 -0700 (PDT)
Received: from [80.187.100.168] (helo=[10.19.148.171]) by smtprelay05.ispgateway.de with esmtpsa (TLSv1.2:DHE-RSA-AES128-GCM-SHA256:128) (Exim 4.84) (envelope-from <torsten@lodderstedt.net>) id 1b00bz-0002Bv-Sw; Tue, 10 May 2016 07:53:40 +0200
Date: Tue, 10 May 2016 07:53:32 +0200
Message-ID: <9i7j68wb5mksvyl9v5pbmmfm.1462859612477@com.syntomo.email>
In-Reply-To: <CABzCy2CEka2Ko-DpMmNPmFDg+8J7xrcoSbDr4BQv0O8tkGpbNQ@mail.gmail.com>
References: <571B60BA.8090301@lodderstedt.net> <CABzCy2DeMSGc_yjKi=NWJjh7RLoVsb+KyD9S_MuiQ_gJNg5+fw@mail.gmail.com> <49355f12-ef58-0637-47e0-7acd54e882d9@lodderstedt.net> <DA464416-4C42-4A3A-B829-70E14B6C1149@mit.edu> <CABzCy2DD+E4CNUHL3Bh_sZW+UF2Ea4tBA6am+LkJbrisepxMgQ@mail.gmail.com> <FA921CBC-C10F-4262-9D2F-BD2D4AC1A014@lodderstedt.net> <CABzCy2BoDtB9Mf00TOLZx9E7WdsRE9NhLT-OfBTU78axkrgFyg@mail.gmail.com> <qkqj5wmu6f92jxm466vcjwel.1462772730650@com.syntomo.email> <CABzCy2CEka2Ko-DpMmNPmFDg+8J7xrcoSbDr4BQv0O8tkGpbNQ@mail.gmail.com>
From: torsten@lodderstedt.net
To: Nat Sakimura <sakimura@gmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="--_com.syntomo.email_3376154964019450"
X-Df-Sender: dG9yc3RlbkBsb2RkZXJzdGVkdC5uZXQ=
Archived-At: <http://mailarchive.ietf.org/arch/msg/oauth/MocT-7KR5ubThcUPWSqxQ4yPio4>
Cc: oauth@ietf.org
Subject: Re: [OAUTH-WG] Mix-Up and CnP/ Code injection
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/oauth/>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 May 2016 05:53:47 -0000

Hi Nat,

wouldn't a maleware steal the response and the cookies from the device and replay it somewhere else. Or just steal the password? So no need to tweak the response?

best regards,
Torsten.


-------- Originalnachricht --------
Betreff: Re: [OAUTH-WG] Mix-Up and CnP/ Code injection
Von: Nat Sakimura <sakimura@gmail.com>
An: torsten@lodderstedt.net
Cc: jricher@mit.edu,oauth@ietf.org

>Hi Torsten,
>
>No, not defeating, but being able to find out if the input is tainted or
>not.
>
>Nat
>On Mon, May 9, 2016 at 07:46 <torsten@lodderstedt.net> wrote:
>
>> Are you suggesting OAuth should defeat maleware? So far, this was
>> considered to be handled by OS/Anti-Virus/other measures.
>>
>>
>> -------- Originalnachricht --------
>> Betreff: Re: [OAUTH-WG] Mix-Up and CnP/ Code injection
>> Von: Nat Sakimura <sakimura@gmail.com>
>> An: Torsten Lodderstedt <torsten@lodderstedt.net>
>> Cc: Justin Richer <jricher@mit.edu>,"<oauth@ietf.org>" <oauth@ietf.org>
>>
>> Yes, and unfortunately, that is a rather common attack these days.
>> Infesting a user device with a malware is probably easier than having the
>> client developer register its client to unknown server.
>>
>> 2016年5月1日(日) 16:54 Torsten Lodderstedt <torsten@lodderstedt.net>:
>>
>>> Hi Nat,
>>>
>>> please explain the attack. I assume the attacker would need to control
>>> network transmission or client device.
>>>
>>> kind regards,
>>> Torsten.
>>>
>>> Am 01.05.2016 um 07:36 schrieb Nat Sakimura <sakimura@gmail.com>:
>>>
>>> It actually depends on what risk level the transaction is at. For low
>>> risk transactions, just having separate redirection endpoint may be
>>> adequate. On the other hand, I can easily think of an attack that replaces
>>> iss on the authz response making the control invalid posing questions on
>>> whether it is worth introducing it.
>>> On Sun, May 1, 2016 at 14:21 Justin Richer <jricher@mit.edu> wrote:
>>>
>>>> I agree that we’re getting dangerously close to recommending signed
>>>> assertions at every step of the process, thereby bypassing HTTP. This was
>>>> the same mistake that WS-* and SOAP made, let’s not repeat it if we can.
>>>>
>>>>  — Justin
>>>>
>>>> On Apr 30, 2016, at 10:57 AM, Torsten Lodderstedt <
>>>> torsten@lodderstedt.net> wrote:
>>>>
>>>> Hi Nat,
>>>>
>>>> sure, one could also authenticate and cryptographically protect the
>>>> redirect response. Leveraging OIDC concepts is an idea worth considering
>>>> but they should be adopted to the OAuth philosophy. The id token as used in
>>>> the hybrid flows mixes an identity assertion with elements of transport
>>>> security measures. A OAuth AS does not provide identity data to clients, so
>>>> we only need the transport security part.
>>>>
>>>> I personally would prefer a OAuth response object (similar to request
>>>> object you have proposed) over the id token. Such a response object could
>>>> contain (and directly protect) state, code and other response values. I
>>>> consider this the more elegant design and it is easier to implement then
>>>> having detached signatures over hash values of codes or access tokens.
>>>> Moreover, it would allow to encrypt the response as well.
>>>>
>>>> Generally, our threat analysis so far does not have provided
>>>> justification for cryptographically protected redirect responses. All
>>>> proposals currently on the table stop mix up and code injection using
>>>> simpler mechanisms.
>>>>
>>>> I think OAuth 2.0 is a huge success due to its balance of versatility,
>>>> security and _simplicity_. We definitely need to keep it secure, but we
>>>> should also keep it as simple as possible.
>>>>
>>>> kind regards,
>>>> Torsten.
>>>> Am 29.04.2016 um 10:08 schrieb Nat Sakimura:
>>>>
>>>> As I look at it more and more, it started to look like the problem of
>>>> accepting tainted values without message authentication. To fix the root
>>>> cause, we would have to authenticate response. ID Token was designed to
>>>> also serve as a solution anticipating it.
>>>>
>>>> Any concrete ideas?
>>>>
>>>> On Sat, Apr 23, 2016 at 04:47 Torsten Lodderstedt <
>>>> torsten@lodderstedt.net> wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> discussion about Mix-Up and CnP seems to have stopped after the session
>>>>> in BA - at least in the OAuth WG. There is a discussion about
>>>>> mitigations in OpenId Connect going on at the OpenId Connect mailing
>>>>> list.
>>>>>
>>>>> I'm very much interested to find a solution within the OAuth realm as
>>>>> I'm not interested to either implement two solutions (for OpenId Connect
>>>>> and OAuth) or adopt a OpenId-specific solution to OAuth (use id! tokens
>>>>> in the front channel). I therefore would like to see progress and
>>>>> propose to continue the discussion regarding mitigations for both
>>>>> threats.
>>>>>
>>>>> https://tools.ietf.org/html/draft-ietf-oauth-mix-up-mitigation-00
>>>>> proposes reasonable mitigations for both attacks. There are alternatives
>>>>> as well:
>>>>> - mix up:
>>>>> -- AS specific redirect uris
>>>>> -- Meta data/turi
>>>>> (https://tools.ietf.org/html/draft-sakimura-oauth-meta-07#section-5)
>>>>> - CnP:
>>>>> -- use of the nonce parameter (as a distinct mitigation beside state for
>>>>> counter XSRF)
>>>>>
>>>>> Anyone having an opinion?
>>>>>
>>>>> best regards,
>>>>> Torsten.
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>>
>>>>
>>>> --
>> Nat Sakimura
>> Chairman of the Board, OpenID Foundation
>> Trustee, Kantara Initiative
>>
>-- 
>Nat Sakimura
>Chairman of the Board, OpenID Foundation
>Trustee, Kantara Initiative