Re: [OAUTH-WG] draft-ietf-oauth-v2-threatmodel

2012-05-02 Thread Phil Hunt
I think you hit the nail on the head. 

My feeling is that threats not directly related to OAuth obfuscate the key 
issues we are trying to alert implementers and deployers to. 

I think Barry made a good proposal but Michael still feels Barry's text has not 
addressed the issue. 

I think you are right to escalate the issue for guidance. 

Phil

On 2012-05-02, at 9:02, Hannes Tschofenig  wrote:

> Hi all, 
> 
> I looked at the feedback for the draft-ietf-oauth-v2-threatmodel and I want 
> to share my thoughts with you (as a WG co-chair).
> 
> I believe there are three questions that need to be answered:
> 
> 1) Is malicious code a problem? 
> 
> I believe most people would agree that malicious code is indeed a problem for 
> Internet security. 
> 
> 2) Are IETF working groups required to address this extended Internet threat 
> model? 
> 
> RFC 3552 provides guidance for protocol developers writing security 
> considerations. It also defines terminology and a threat model. 
> The model, however, does not consider malicious code as a threat. 
> 
> Malicious code is a problem for any IETF protocol, not just for OAuth. This 
> requires a broader IETF discussion.  
> 
> If there is the believe that IETF groups should (a) describe threats that 
> result from malicious code and (b) develop solutions to deal with it then the 
> IAB  should facilitate such a discussion. I will discuss this topic within 
> the IAB. 
> 
> Despite the lack of available guidance in RFC 3552 
> draft-ietf-oauth-v2-threatmodel talks about this threat. 
> 
> 3) What can we do to highlight the threat in our document? 
> 
> Barry proposed additional text (see below) that highlights the challenges. 
> 
> This issue as resolved. Let's move forward. 
> 
> Ciao
> Hannes
> 
> PS: Here is Barry's proposed tet
> 
> -
> 5.5.  A Word on User Interaction and User-Installed Apps
> 
> OAuth, as a security protocol, is distinctive in that its flow usually
> involves significant user interaction, making the end user a part of
> the security model.  This creates some important difficulties in
> defending against some of the threats discussed above.  Some of these
> points have already been made, but it's worth repeating and
> highlighting them here.
> 
> * End users must understand what they are being asked to approve (see
> Section 5.2.4.2).  Users often do not have the expertise to understand
> the ramifications of saying "yes" to an authorization request. and are
> likely not to be able to see subtle differences in wording of
> requests.  Malicious software can confuse the user, tricking the user
> into approving almost anything.
> 
> * End-user devices are prone to software compromise.  This has been a
> long-standing problem, with frequent attacks on web browsers and other
> parts of the user's system.  But with increasing popularity of
> user-installed "apps", the threat posed by compromised or malicious
> end-user software is very strong, and is one that is very difficult to
> mitigate.
> 
> * Be aware that users will demand to install and run such apps, and
> that compromised or malicious ones can steal credentials at many
> points in the data flow.  They can intercept the very user login
> credentials that OAuth is designed to protect.  They can request
> authorization far beyond what they have led the user to understand and
> approve.  They can automate a response on behalf of the user, hiding
> the whole process.  No solution is offered here, because none is
> known; this remains in the space between better security and better
> usability.
> 
> * Addressing these issues by restricting the use of user-installed
> software may be practical in some limited environments, and can be
> used as a countermeasure in those cases.  Such restrictions are not
> practical in the general case, and mechanisms for after-the-fact
> recovery should be in place.
> -
> ___
> 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-WG] OAuth WG Rechartering

2012-05-02 Thread Hannes Tschofenig
Hi Stephen, Hi IESG secretary, 

Derek and myself would like to submit the updated OAuth charter to the IESG. 
Please find it below. 

Ciao
Hannes

--

Web Authorization Protocol (oauth)

Description of Working Group

The Web Authorization (OAuth) protocol allows a user to grant
a third-party Web site or application access to the user's protected
resources, without necessarily revealing their long-term credentials,
or even their identity. For example, a photo-sharing site that supports
OAuth could allow its users to use a third-party printing Web site to
print their private pictures, without allowing the printing site to
gain full control of the user's account and without having the user 
sharing his or her photo-sharing sites' long-term credential with the 
printing site. 

The OAuth protocol suite encompasses
* a procedure for allowing a client to discover a resource server, 
* a protocol for obtaining authorization tokens from an authorization 
server with the resource owner's consent, 
* protocols for presenting these authorization tokens to protected 
resources for access to a resource, and 
* consequently for sharing data in a security and privacy respective way.

In April 2010 the OAuth 1.0 specification, documenting pre-IETF work,
was published as an informational document (RFC 5849). With the 
completion of OAuth 1.0 the working group started their work on OAuth 2.0
to incorporate implementation experience with version 1.0, additional
use cases, and various other security, readability, and interoperability
improvements. An extensive security analysis was conducted and the result 
is available as a stand-alone document offering guidance for audiences 
beyond the community of protocol implementers.

The working group also developed security schemes for presenting authorization
tokens to access a protected resource. This led to the publication of
the bearer token as well as the message authentication code (MAC) access 
authentication specification. 

OAuth 2.0 added the ability to trade a SAML assertion against an OAUTH token 
with 
the SAML 2.0 bearer assertion profile.  This offers interworking with existing 
identity management solutions, in particular SAML based deployments.

OAuth has enjoyed widespread adoption by the Internet application service 
provider 
community. To build on this success we aim for nothing more than to make OAuth 
the 
authorization framework of choice for any Internet protocol. Consequently, the 
ongoing standardization effort within the OAuth working group is focused on 
enhancing interoperability of OAuth deployments. While the core OAuth 
specification 
truly is an important building block it relies on other specifications in order 
to 
claim completeness. Luckily, these components already exist and have been 
deployed 
on the Internet. Through the IETF standards process they will be improved in 
quality and will undergo a rigorous review process. 

Goals and Milestones

Done  Submit 'OAuth 2.0 Threat Model and Security Considerations' as a working 
group item
Done  Submit 'HTTP Authentication: MAC Authentication' as a working group item
Done  Submit 'The OAuth 2.0 Protocol: Bearer Tokens' to the IESG for 
consideration as a Proposed Standard
Done  Submit 'The OAuth 2.0 Authorization Protocol' to the IESG for 
consideration as a Proposed Standard

May  2012  Submit 'SAML 2.0 Bearer Assertion Profiles for OAuth 2.0' to the 
IESG for consideration as a Proposed Standard
May  2012  Submit 'OAuth 2.0 Assertion Profile' to the IESG for consideration 
as a Proposed Standard 
May  2012  Submit 'An IETF URN Sub-Namespace for OAuth' to the IESG for 
consideration as a Proposed Standard 
May  2012  Submit 'OAuth 2.0 Threat Model and Security Considerations' to the 
IESG for consideration as an Informational RFC
Dec. 2012  Submit 'HTTP Authentication: MAC Authentication' to the IESG for 
consideration as a Proposed Standard

Aug. 2012  Submit 'Token Revocation' to the IESG for consideration as a 
Proposed Standard
[Starting point for the work will be 
http://datatracker.ietf.org/doc/draft-lodderstedt-oauth-revocation/]

Nov. 2012  Submit 'JSON Web Token (JWT)' to the IESG for consideration as a 
Proposed Standard
[Starting point for the work will be 
http://tools.ietf.org/html/draft-jones-json-web-token]

Nov. 2012  Submit 'JSON Web Token (JWT) Bearer Token Profiles for OAuth 2.0' to 
the IESG for consideration as a Proposed Standard
[Starting point for the work will be 
http://tools.ietf.org/html/draft-jones-oauth-jwt-bearer]

Dec. 2012  Submit 'OAuth Use Cases' to the IESG for consideration as an 
Informational RFC
[Starting point for the work will be 
http://tools.ietf.org/html/draft-zeltsan-oauth-use-cases] 

Jul. 2013  Submit 'OAuth Dynamic Client Registration Protocol' to the IESG for 
consideration as a Proposed Standard
[Starting point for the work will be 
http://tools.ietf.org/html/draft-hardjono-oauth-dynreg] 

___
OAuth 

Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-26.txt

2012-05-02 Thread Eran Hammer
Thanks Phil.

These will be corrected in -27 (if we publish one to close IESG issues) or 
during AUTH48.

EH

> -Original Message-
> From: oauth-boun...@ietf.org [mailto:oauth-boun...@ietf.org] On Behalf
> Of Phil Harvey
> Sent: Wednesday, May 02, 2012 8:24 AM
> To: oauth@ietf.org
> Subject: Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-26.txt
> 
> Hello,
> 
> I noticed draft 26 was published and found a few typos while reading the diff
> against draft 25:
> 
> 1) Where the word SHALL was inserted into the paragraph under "2. Client
> Registration", I noticed that the first word of each bullet point in the list 
> that
> follows it needs to be altered to flow properly:
> 
> When registering a client, the client developer SHALL:
> 
>o  specifies the client type as described in Section 2.1,
>o  provides its client redirection URIs as described in
>   Section 3.1.2, and
>o  includes any other information required by the authorization
>   server (e.g. application name, website, description, logo image,
>   the acceptance of legal terms).
> 
> To read like this:
> 
> When registering a client, the client developer SHALL:
> 
>o  specify the client type as described in Section 2.1,
>o  provide its client redirection URIs as described in
>   Section 3.1.2, and
>o  include any other information required by the authorization
>   server (e.g. application name, website, description, logo image,
>   the acceptance of legal terms).
> 
> 2) under "10.3 Access Tokens" (delineated by brackets):
> 
> This specification does not provide any methods for the resource
> server to ensure that an access token presented to it by a given
> client, was issued to [the that] client by the authorization server.
> 
> Which was probably intended to read like this?:
> 
> This specification does not provide any methods for the resource
> server to ensure that an access token presented to it by a given
> client, was issued to that client by the authorization server.
> 
> 3) under both "11.1 The OAuth Access Token Type Registry" and "11.2 The
> OAuth Parameters Registry", there are two instances where it says "two
> weeks" when it should say "two week" in a sentence like this:
> 
> "...after a two weeks review period..."
> 
> Hope that helps,
> 
> Phil Harvey
> eBiz Web Developer
> The Lampo Group, Inc.
> http://www.daveramsey.com
> 
> -Original Message-
> From: internet-dra...@ietf.org [mailto:internet-dra...@ietf.org]
> Sent: Tuesday, May 01, 2012 2:13 AM
> To: i-d-annou...@ietf.org
> Cc: oauth@ietf.org
> Subject: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-26.txt
> 
> 
> A New Internet-Draft is available from the on-line Internet-Drafts 
> directories.
> This draft is a work item of the Web Authorization Protocol Working Group of
> the IETF.
> 
>   Title   : The OAuth 2.0 Authorization Framework
>   Author(s)   : Eran Hammer
>   David Recordon
>   Dick Hardt
>   Filename: draft-ietf-oauth-v2-26.txt
>   Pages   : 66
>   Date: 2012-05-01
> 
>The OAuth 2.0 authorization framework enables a third-party
>application to obtain limited access to an HTTP service, either on
>behalf of a resource owner by orchestrating an approval interaction
>between the resource owner and the HTTP service, or by allowing the
>third-party application to obtain access on its own behalf.  This
>specification replaces and obsoletes the OAuth 1.0 protocol described
>in RFC 5849.
> 
> 
> A URL for this Internet-Draft is:
> http://www.ietf.org/internet-drafts/draft-ietf-oauth-v2-26.txt
> 
> Internet-Drafts are also available by anonymous FTP at:
> ftp://ftp.ietf.org/internet-drafts/
> 
> This Internet-Draft can be retrieved at:
> ftp://ftp.ietf.org/internet-drafts/draft-ietf-oauth-v2-26.txt
> 
> The IETF datatracker page for this Internet-Draft is:
> https://datatracker.ietf.org/doc/draft-ietf-oauth-v2/
> 
> 
> ___
> 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-WG] draft-ietf-oauth-v2-threatmodel

2012-05-02 Thread Hannes Tschofenig
Hi all, 

I looked at the feedback for the draft-ietf-oauth-v2-threatmodel and I want to 
share my thoughts with you (as a WG co-chair).

I believe there are three questions that need to be answered:

1) Is malicious code a problem? 

I believe most people would agree that malicious code is indeed a problem for 
Internet security. 

2) Are IETF working groups required to address this extended Internet threat 
model? 

RFC 3552 provides guidance for protocol developers writing security 
considerations. It also defines terminology and a threat model. 
The model, however, does not consider malicious code as a threat. 

Malicious code is a problem for any IETF protocol, not just for OAuth. This 
requires a broader IETF discussion.  

If there is the believe that IETF groups should (a) describe threats that 
result from malicious code and (b) develop solutions to deal with it then the 
IAB  should facilitate such a discussion. I will discuss this topic within the 
IAB. 

Despite the lack of available guidance in RFC 3552 
draft-ietf-oauth-v2-threatmodel talks about this threat. 

3) What can we do to highlight the threat in our document? 

Barry proposed additional text (see below) that highlights the challenges. 
 
This issue as resolved. Let's move forward. 

Ciao
Hannes

PS: Here is Barry's proposed tet

-
5.5.  A Word on User Interaction and User-Installed Apps

OAuth, as a security protocol, is distinctive in that its flow usually
involves significant user interaction, making the end user a part of
the security model.  This creates some important difficulties in
defending against some of the threats discussed above.  Some of these
points have already been made, but it's worth repeating and
highlighting them here.

* End users must understand what they are being asked to approve (see
Section 5.2.4.2).  Users often do not have the expertise to understand
the ramifications of saying "yes" to an authorization request. and are
likely not to be able to see subtle differences in wording of
requests.  Malicious software can confuse the user, tricking the user
into approving almost anything.

* End-user devices are prone to software compromise.  This has been a
long-standing problem, with frequent attacks on web browsers and other
parts of the user's system.  But with increasing popularity of
user-installed "apps", the threat posed by compromised or malicious
end-user software is very strong, and is one that is very difficult to
mitigate.

* Be aware that users will demand to install and run such apps, and
that compromised or malicious ones can steal credentials at many
points in the data flow.  They can intercept the very user login
credentials that OAuth is designed to protect.  They can request
authorization far beyond what they have led the user to understand and
approve.  They can automate a response on behalf of the user, hiding
the whole process.  No solution is offered here, because none is
known; this remains in the space between better security and better
usability.

* Addressing these issues by restricting the use of user-installed
software may be practical in some limited environments, and can be
used as a countermeasure in those cases.  Such restrictions are not
practical in the general case, and mechanisms for after-the-fact
recovery should be in place.
-
___
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth


Re: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-26.txt

2012-05-02 Thread Phil Harvey
Hello,

I noticed draft 26 was published and found a few typos while reading the diff 
against draft 25:

1) Where the word SHALL was inserted into the paragraph under "2. Client 
Registration", I noticed that the first word of each bullet point in the list 
that follows it needs to be altered to flow properly:

When registering a client, the client developer SHALL:

   o  specifies the client type as described in Section 2.1,
   o  provides its client redirection URIs as described in
  Section 3.1.2, and
   o  includes any other information required by the authorization
  server (e.g. application name, website, description, logo image,
  the acceptance of legal terms).

To read like this:

When registering a client, the client developer SHALL:

   o  specify the client type as described in Section 2.1,
   o  provide its client redirection URIs as described in
  Section 3.1.2, and
   o  include any other information required by the authorization
  server (e.g. application name, website, description, logo image,
  the acceptance of legal terms).

2) under "10.3 Access Tokens" (delineated by brackets):

This specification does not provide any methods for the resource
server to ensure that an access token presented to it by a given
client, was issued to [the that] client by the authorization server.

Which was probably intended to read like this?:

This specification does not provide any methods for the resource
server to ensure that an access token presented to it by a given
client, was issued to that client by the authorization server.

3) under both "11.1 The OAuth Access Token Type Registry" and "11.2 The OAuth 
Parameters Registry", there are two instances where it says "two weeks" when it 
should say "two week" in a sentence like this:

"...after a two weeks review period..."

Hope that helps,

Phil Harvey
eBiz Web Developer
The Lampo Group, Inc.
http://www.daveramsey.com

-Original Message-
From: internet-dra...@ietf.org [mailto:internet-dra...@ietf.org] 
Sent: Tuesday, May 01, 2012 2:13 AM
To: i-d-annou...@ietf.org
Cc: oauth@ietf.org
Subject: [OAUTH-WG] I-D Action: draft-ietf-oauth-v2-26.txt


A New Internet-Draft is available from the on-line Internet-Drafts directories. 
This draft is a work item of the Web Authorization Protocol Working Group of 
the IETF.

Title   : The OAuth 2.0 Authorization Framework
Author(s)   : Eran Hammer
  David Recordon
  Dick Hardt
Filename: draft-ietf-oauth-v2-26.txt
Pages   : 66
Date: 2012-05-01

   The OAuth 2.0 authorization framework enables a third-party
   application to obtain limited access to an HTTP service, either on
   behalf of a resource owner by orchestrating an approval interaction
   between the resource owner and the HTTP service, or by allowing the
   third-party application to obtain access on its own behalf.  This
   specification replaces and obsoletes the OAuth 1.0 protocol described
   in RFC 5849.


A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-oauth-v2-26.txt

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

This Internet-Draft can be retrieved at:
ftp://ftp.ietf.org/internet-drafts/draft-ietf-oauth-v2-26.txt

The IETF datatracker page for this Internet-Draft is:
https://datatracker.ietf.org/doc/draft-ietf-oauth-v2/


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


[OAUTH-WG] I-D Action: draft-ietf-oauth-assertions-03.txt

2012-05-02 Thread internet-drafts

A New Internet-Draft is available from the on-line Internet-Drafts directories. 
This draft is a work item of the Web Authorization Protocol Working Group of 
the IETF.

Title   : OAuth 2.0 Assertion Profile
Author(s)   : Michael B. Jones
  Brian Campbell
  Yaron Y. Goland
Filename: draft-ietf-oauth-assertions-03.txt
Pages   : 17
Date: 2012-05-02

   This specification provides a general framework for the use of
   assertions as client credentials and/or authorization grants with
   OAuth 2.0.  It includes a generic mechanism for transporting
   assertions during interactions with a token endpoint, as wells as
   rules for the content and processing of those assertions.  The intent
   is to provide an enhanced security profile by using derived values
   such as signatures or HMACs, as well as facilitate the use of OAuth
   2.0 in client-server integration scenarios where the end-user may not
   be present.

   This specification only defines abstract message flow and assertion
   content.  Actual use requires implementation of a companion protocol
   binding specification.  Additional profile documents provide standard
   representations in formats such as SAML and JWT.


A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-oauth-assertions-03.txt

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

This Internet-Draft can be retrieved at:
ftp://ftp.ietf.org/internet-drafts/draft-ietf-oauth-assertions-03.txt

The IETF datatracker page for this Internet-Draft is:
https://datatracker.ietf.org/doc/draft-ietf-oauth-assertions/

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


Re: [OAUTH-WG] Proposed URN for JWT token type: urn:ietf:params:oauth:token-type:jwt

2012-05-02 Thread Brian Campbell
I agree that context does sufficiently differentiate. I guess I'm just
lamenting the way that type has been overloaded in the base OAuth
stuff and am already dreading the conversions that might go something
like, "well which type of token type are we talking about here?"

This particular URN probably doesn't change that one way or the other
and I'm okay with what you've proposed. I just felt compelled to
mention the potential confusion point.

On Tue, May 1, 2012 at 6:39 PM, Mike Jones  wrote:
> I understand what you're saying, but I still believe that the URN is the 
> correct one.
>
> While I agree that the potential for confusion is unfortunate, context will 
> actually successfully differentiate the two uses of similar terms.  Bear in 
> mind that the OAuth usage of the term is actually short for "Access Token 
> Type" (see OAuth Core sections 8.1 and 11.1), whereas the URN above is to 
> provide a type identifier for a particular kind of security token.
>
> I also believe that the examples in the Bearer spec (see 
> http://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-19#section-4), the MAC 
> spec (see 
> http://tools.ietf.org/html/draft-ietf-oauth-v2-http-mac-01#section-5.1), and 
> the JWT spec will make the uses of these terms clear to implementers in 
> context.
>
>                                -- Mike
>
> -Original Message-
> From: Brian Campbell [mailto:bcampb...@pingidentity.com]
> Sent: Tuesday, May 01, 2012 4:26 PM
> To: Mike Jones
> Cc: oauth@ietf.org
> Subject: Re: [OAUTH-WG] Proposed URN for JWT token type: 
> urn:ietf:params:oauth:token-type:jwt
>
> The only concern I might raise with it is that use of the "token-type"
> part might lead to some confusion. The term token type and the parameter 
> token_type are already pretty loaded and have specific meaning from the core 
> OAuth framework:
> http://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-7.1
>
> That token type is about providing "the client with the information required 
> to successfully utilize the access token to make a protected resource 
> request" (i.e. mac and bearer) and is not about the structure of the token 
> itself which is what this URI seems to want to describe.
> JWTs are usually thought of as bearer type tokens but might someday have HoK 
> (http://lists.openid.net/pipermail/openid-specs-ab/Week-of-Mon-20120430/001860.html)
> or mac like constructs.
>
> I don't think there's really a problem with name collisions here but I think 
> that the current use of token type in the frame work spec is already the 
> cause of some confusion and I'd hate to exacerbate that.
>
> On Tue, May 1, 2012 at 5:04 PM, Mike Jones  
> wrote:
>> I'm editing the JWT spec to prepare for the OAuth WG version and to
>> track changes in the JOSE specs.  Currently the "typ" values defined
>> for JWT tokens are "JWT" and "http://openid.net/specs/jwt/1.0"; (see
>> http://tools.ietf.org/html/draft-jones-json-web-token-08#section-5).
>> I believe that the URN value should be changed to use a URN taken from
>> the OAuth URN namespace urn:ietf:params:oauth (defined in
>> http://tools.ietf.org/html/draft-ietf-oauth-urn-sub-ns-02).
>>
>>
>>
>> I propose to use the URN:
>>
>>    urn:ietf:params:oauth:token-type:jwt
>>
>>
>>
>> I believe this fits well with the other four uses of this namespace to date:
>>
>>    urn:ietf:params:oauth:grant-type:saml2-bearer
>>
>>
>> urn:ietf:params:oauth:client-assertion-type:saml2-bearer
>>
>>    urn:ietf:params:oauth:grant-type:jwt-bearer
>>
>>    urn:ietf:params:oauth:client-assertion-type:jwt-bearer
>>
>>
>>
>> (The first two are from
>> http://tools.ietf.org/html/draft-ietf-oauth-saml2-bearer-11.  The
>> latter two are from
>> http://tools.ietf.org/html/draft-jones-oauth-jwt-bearer-04.)
>>
>>
>>
>> Do people agree with this URN choice?
>>
>>
>>
>>     Thanks,
>>
>>     -- Mike
>>
>>
>>
>>
>> ___
>> 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