Re: [OAUTH-WG] WGLC on draft-ietf-oauth-v2-threatmodel-01, ends 9 Dec 2011

Michael Thomas <mike@mtcc.com> Thu, 05 January 2012 15:39 UTC

Return-Path: <mike@mtcc.com>
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 45DBD21F875F for <oauth@ietfa.amsl.com>; Thu, 5 Jan 2012 07:39:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dq9RClJcQFRv for <oauth@ietfa.amsl.com>; Thu, 5 Jan 2012 07:39:23 -0800 (PST)
Received: from mtcc.com (mtcc.com [50.0.18.224]) by ietfa.amsl.com (Postfix) with ESMTP id 31C3121F8716 for <oauth@ietf.org>; Thu, 5 Jan 2012 07:39:23 -0800 (PST)
Received: from takifugu.mtcc.com (takifugu.mtcc.com [50.0.18.224]) (authenticated bits=0) by mtcc.com (8.14.3/8.14.3) with ESMTP id q05FR853007228 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Thu, 5 Jan 2012 07:27:08 -0800
Message-ID: <4F05C14C.30801@mtcc.com>
Date: Thu, 05 Jan 2012 07:27:08 -0800
From: Michael Thomas <mike@mtcc.com>
User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.8.1.22) Gecko/20090605 Thunderbird/2.0.0.22 Mnenhy/0.7.5.0
MIME-Version: 1.0
To: Mark Mcgloin <mark.mcgloin@ie.ibm.com>
References: <CALaySJKhYQQdmjvWBLS3mwzzrDt35jfDn2xZCuDOk=hpwEUiKQ@mail.gmail.com> <8AB6F5CC-E9A2-4A07-9AA0-83FB7C67A221@oracle.com> <4EEA3951.5010904@mtcc.com> <OF6C9EBE7C.1B053FE3-ON80257968.003C02DF-80257968.003CAA12@ie.ibm.com> <4EEB5BDD.7080401@mtcc.com> <4F038CB9.1040403@mtcc.com> <F674B8D6-54D6-4B39-A494-9D7EB6E058D6@oracle.com> <4F0394D6.1090006@mtcc.com> <OFD88021B6.E1FD29B9-ON8025797B.004036CF-8025797B.00404EA6@ie.ibm.com> <4F04AAAE.6080702@mtcc.com> <4F04ACE4.1070006@stpeter.im> <4F04B101.3070708@mtcc.com> <OF0587BA9E.B7B40207-ON8025797B.00702BFB-8025797B.007103EA@ie.ibm.com> <CALaySJLcFGyt97OVFZY34kZSjp2bKRqiH_JSDQQaO-aTjSWh2g@mail.gmail.com> <4F04BF70.3 <90C41DD21FB7C64BB94121FBBC2E723453A72D09B9@P3PW5EX1MB01.EX1.SECURESERVER.NET> <OF8B311AA2.ACF026F4-ON8025797C.00460040-8025797C.004D16DC@ie.ibm.com>
In-Reply-To: <OF8B311AA2.ACF026F4-ON8025797C.00460040-8025797C.004D16DC@ie.ibm.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=6791; t=1325777292; x=1326641292; c=relaxed/simple; s=thundersaddle.kirkwood; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=mtcc.com; i=mike@mtcc.com; z=From:=20Michael=20Thomas=20<mike@mtcc.com> |Subject:=20Re=3A=20[OAUTH-WG]=20WGLC=20on=20draft-ietf-oau th-v2-threatmodel-01,=20ends=209=0A=20Dec=202011 |Sender:=20 |To:=20Mark=20Mcgloin=20<mark.mcgloin@ie.ibm.com> |Content-Type:=20text/plain=3B=20charset=3DISO-8859-1=3B=20 format=3Dflowed |Content-Transfer-Encoding:=207bit |MIME-Version:=201.0; bh=GEmbL4N5Tzq9THBqKlOoh4JtfqbwkSZcp+wquMC9DQw=; b=Dsdq17c2VssUVtV8Kyq4O+wDi2w9rg27RYReFPTdV/eF7Qc87ffqVzKGEl kjWHOf38dGMzaKw3okjjEvuwlxDL52a3mCYzkGyv0CIAZBgif2bb0ok9W8Sh 0V543tCN5DwjPoAxHLinpLnvO56uk6U3CKPvZmDZkvW36sXhNU8Ts=;
Authentication-Results: ; v=0.1; dkim=pass header.i=mike@mtcc.com ( sig from mtcc.com/thundersaddle.kirkwood verified; ); dkim-asp=pass header.From=mike@mtcc.com
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] WGLC on draft-ietf-oauth-v2-threatmodel-01, ends 9 Dec 2011
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.12
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: <http://www.ietf.org/mail-archive/web/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: Thu, 05 Jan 2012 15:39:24 -0000

The wording you propose is unacceptable. It is a rehash of the
same misleading nonsense that is in there now. In particular #1 and
#3 that say in effect "bad guys really should be good" are silly
and unhelpful. #2 has possibilities, but in its current form gives
absolutely no guidance as to what might be done; mine at least
explicitly said that the status quo is unacceptable.

I also completely object to the notion that the authentication
service has no part in protecting itself. It has complete control
over who it allows to register as a client, and as written Eran's
text contradicts #2's possibility of mitigation -- even if William
thinks it's hopeless (as I read him). If William is right the
appropriate guidance is that authentication services MUST NOT
enroll clients that use untrusted browsers. Putting this on the
end users shoulders is useless and should be a reason that the
IESG should just reject the protocol.

I also object to not *explicitly* pointing out that native apps
mean apps from App stores, markets,  etc. and the general problem
that users cannot know a priori whether an app is malicious or not. I
don't  see why this is even controversial -- unless your aim is to hide
that uncomfortable fact.

This is a threat document, not a marketing puff piece. Downplaying
threats does nobody any good. Except bad guys.

Mike

On 01/05/2012 06:01 AM, Mark Mcgloin wrote:
> Having read the suggested wording from Eran, William and Michael, I think
> Eran's description is the most succinct and relevant: "OAuth does not
> provide any protection against malicious applications and that the end user
> is solely responsible for the trustworthiness of any native application
> installed"
> @William: The threat has been described in the context of installing
> malicious apps so the wording above it more applicable
> @Michael: It has been repeated many times that we should only address
> security issues specific to Oauth, and Oauth does not make things worse if
> a user installs a malicious client. If you want to continue the discussion,
> please email me directly and we can revert to this forum if you still think
> your point is relevant
>
> Section 4.1.4 of the threat model will be updated as below. Remember the
> threat model is just offering advice on best practices.
>
>
> Threat: End-user credentials phished using compromised or  embedded browser
>
> A malicious application could attempt to phish end-user passwords by
> misusing an embedded browser in the end-user authorization process, or by
> presenting its own user-interface instead of allowing trusted system
> browser to render the authorization user interface.  By doing so, the usual
> visual trust mechanisms may be bypassed (e.g.  TLS confirmation, web site
> mechanisms).  By using an embedded or internal client application user
> interface, the client application has access to additional information it
> should not have access to (e.g. uid/password).
>
> Impact: If the client application or the communication is compromised, the
> user would not be aware and all information in the authorization exchange
> could be captured such as username and password.
>
> Countermeasures:
>
> 1. The OAuth flow is designed so that client applications never need to
> know user passwords. Client applications SHOULD avoid directly asking users
> for the their credentials. In addition, end users could be educated about
> phishing attacks and best practices, such as only accessing trusted
> clients, as OAuth does not provide any protection against malicious
> applications and the end user is solely responsible for the trustworthiness
> of any native application installed
>
> 2. Client applications could be validated prior to publication in an
> application market for users to access. That validation is out of scope for
> OAuth but could include validating that the client application handles user
> authentication in an appropriate way
>
> 3. Client developers should not write client applications that collect
> authentication information directly from users and should instead delegate
> this task to a trusted system component, e.g. the system-browser.
>
> Regards
> Mark
>
> oauth-bounces@ietf.org wrote on 05/01/2012 00:05:04:
>
>> From:
>>
>> Eran Hammer-Lahav<eran@hueniverse.com>
>>
>> To:
>>
>> Michael Thomas<mike@mtcc.com>, Torsten Lodderstedt
> <torsten@lodderstedt.net>
>> Cc:
>>
>> Barry Leiba<barryleiba@computer.org>, oauth WG<oauth@ietf.org>
>>
>> Date:
>>
>> 05/01/2012 00:05
>>
>> Subject:
>>
>> Re: [OAUTH-WG] WGLC on draft-ietf-oauth-v2-threatmodel-01, ends 9 Dec
> 2011
>> Sent by:
>>
>> oauth-bounces@ietf.org
>>
>>
>>
>>> -----Original Message-----
>>> From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf
>>> Of Michael Thomas
>>> Sent: Wednesday, January 04, 2012 3:40 PM
>>> My concern is that putting on a veneer of "security" will lull people
> into
>>> thinking "Oh, it's safe to enter my credentials here because this is
> really
>>> twitterbook, not evilapp!". When I had to ask them directly to put
> their
>>> twitterbook credentials into my app, there at least wasn't any
>> confusion that
>>> I had access to them.
>> This is ridiculous (e.g. the fact we are still discussing this).
>>
>> First, end users know nothing about security or OAuth. Second, evil
>> apps can create this veneer of security by faking a redirection flow
>> with or without OAuth. Suggesting that OAuth (which is a de-facto
>> web pattern for over a decade) makes anything worse is patently false.
>>
>> The only thing we can possibly add to the threat model document is
>> to mention that "OAuth does not provide any protection against
>> malicious applications and that the end user is solely responsible
>> for the trustworthiness of any native application installed". That
>> is accurate (and completely obvious to the target audience of this
>> document). It is not very helpful but if it will make you feel
>> better (since no one else here seems to share your concerns), I have
>> no objection to such one line added.
>>
>> And again, to highlight the absurdity of your security claim, it is
>> equally important to warn developers in earthquake-prone countries
>> to put enough distance between the Approve and Deny buttons so that
>> the user will not accidentally hit Approve during a tremor.
>>
>> EHL
>>
>>
>>
>>
>>
>> _______________________________________________
>> 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