Re: [jose] Field Matrix

"Peck, Michael A" <mpeck@mitre.org> Thu, 27 June 2013 15:44 UTC

Return-Path: <mpeck@mitre.org>
X-Original-To: jose@ietfa.amsl.com
Delivered-To: jose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 346A821F9DC7 for <jose@ietfa.amsl.com>; Thu, 27 Jun 2013 08:44:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.999
X-Spam-Level:
X-Spam-Status: No, score=-3.999 tagged_above=-999 required=5 tests=[HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4]
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 nKslHEhlyPsQ for <jose@ietfa.amsl.com>; Thu, 27 Jun 2013 08:43:56 -0700 (PDT)
Received: from smtpksrv1.mitre.org (smtpksrv1.mitre.org [198.49.146.77]) by ietfa.amsl.com (Postfix) with ESMTP id DF26B21F9AF1 for <jose@ietf.org>; Thu, 27 Jun 2013 08:43:55 -0700 (PDT)
Received: from smtpksrv1.mitre.org (localhost.localdomain [127.0.0.1]) by localhost (Postfix) with SMTP id 918C01F03A7; Thu, 27 Jun 2013 11:43:54 -0400 (EDT)
Received: from IMCCAS01.MITRE.ORG (imccas01.mitre.org [129.83.29.78]) by smtpksrv1.mitre.org (Postfix) with ESMTP id 7A344226009E; Thu, 27 Jun 2013 11:43:54 -0400 (EDT)
Received: from IMCMBX04.MITRE.ORG ([169.254.4.162]) by IMCCAS01.MITRE.ORG ([129.83.29.68]) with mapi id 14.02.0342.003; Thu, 27 Jun 2013 11:43:54 -0400
From: "Peck, Michael A" <mpeck@mitre.org>
To: Richard Barnes <rlb@ipv.sx>, Mike Jones <Michael.Jones@microsoft.com>
Thread-Topic: [jose] Field Matrix
Thread-Index: Ac5t5xRPeyoH6vXbTWe6CTWcVqhYoAAMmugAAABYzwAAAg9agAFKH59g
Date: Thu, 27 Jun 2013 15:43:53 +0000
Message-ID: <8B4C063947CD794BB6FF90C78BAE9B321F064434@IMCMBX04.MITRE.ORG>
References: <053f01ce6de7$8ed108e0$ac731aa0$@augustcellars.com> <CAL02cgTVfWU_Ly1txm_k6s+omX8ZzUHTbp58HK03_EZ0qg_7cA@mail.gmail.com> <4E1F6AAD24975D4BA5B16804296739436787AC69@TK5EX14MBXC283.redmond.corp.microsoft.com> <CAL02cgTu=LMdH5VEdCsUAs0Ro3qeu_4MZ6viY5QF7axpQmYkZQ@mail.gmail.com>
In-Reply-To: <CAL02cgTu=LMdH5VEdCsUAs0Ro3qeu_4MZ6viY5QF7axpQmYkZQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [129.83.31.54]
Content-Type: multipart/alternative; boundary="_000_8B4C063947CD794BB6FF90C78BAE9B321F064434IMCMBX04MITREOR_"
MIME-Version: 1.0
Cc: Jim Schaad <ietf@augustcellars.com>, "jose@ietf.org" <jose@ietf.org>
Subject: Re: [jose] Field Matrix
X-BeenThere: jose@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Javascript Object Signing and Encryption <jose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jose>, <mailto:jose-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/jose>
List-Post: <mailto:jose@ietf.org>
List-Help: <mailto:jose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jose>, <mailto:jose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 27 Jun 2013 15:44:13 -0000

"zip" indicates whether the authenticated encryption is applied to Plaintext vs Compress(Plaintext).

By stripping "zip" an attacker could make the message appear to successfully decrypt to Compress(Plaintext) rather than Plaintext?

I suppose whether that could lead to something bad would be implementation dependent, but anything that can lead to ambiguity about the contents of the original plaintext doesn't seem like a good idea.

Mike

From: jose-bounces@ietf.org [mailto:jose-bounces@ietf.org] On Behalf Of Richard Barnes
Sent: Thursday, June 20, 2013 6:01 PM
To: Mike Jones
Cc: Jim Schaad; jose@ietf.org
Subject: Re: [jose] Field Matrix

There was no such decision.  Quoting directly from the minutes:
"""
**  Crit Text

Two questions were raised for dealing with the cirt field.  Does the crit field need to be signed and do the members listed in the crit field need to be signed.

There was no consensus in the group at this time as we adjourned for the day
"""

In order for the attack you describe to be an actual security risk, it would need to be the case that the parameters in "crit" were security-critical, as opposed to things that would simply cause incorrect processing.  One can certainly imagine parameters that would fall in the latter bin; my current favorite example is a "part" parameter that would allow fragmentation / reassembly.  Because such parameters exist, it's possible to use "crit" safely without integrity protection.

Can we at least agree that integrity protecting "zip" is unnecessary?  The only thing that stripping / changing "zip" causes is a processing failure, not a security compromise.

--Richard


On Thu, Jun 20, 2013 at 5:01 PM, Mike Jones <Michael.Jones@microsoft.com<mailto:Michael.Jones@microsoft.com>> wrote:
There was a working group decision at the Denver meeting that "crit" must be integrity protected.  The reason for this is straightforward.

If not integrity protected, an attacker could strip the "crit" field, defeating the semantic requirement that implementations must reject the input if a "crit" value is used that is not understood.  Thus, the spec requires that this field be integrity protected whenever used.

                                                                -- Mike

From: jose-bounces@ietf.org<mailto:jose-bounces@ietf.org> [mailto:jose-bounces@ietf.org<mailto:jose-bounces@ietf.org>] On Behalf Of Richard Barnes
Sent: Thursday, June 20, 2013 1:52 PM
To: Jim Schaad
Cc: jose@ietf.org<mailto:jose@ietf.org>
Subject: Re: [jose] Field Matrix

You can eliminate the "protection required" field, because there aren't any of those.

Or there shouldn't be: The only security case we have is algorithm dependent ("alg" must be protected if "alg" == "PS256", "PS512").  The only fields for which the specs currently require integrity protection are "zip" and "crit".  Neither of these have the property that changing them would cause a security violation, except in some application-dependent sense.  So the choice of integrity protection should be left to applications, not fixed in the spec.

--Richard

On Thu, Jun 20, 2013 at 2:54 PM, Jim Schaad <ietf@augustcellars.com<mailto:ietf@augustcellars.com>> wrote:
<no hat>

Having just started looking at a design implementation, I am now more than ever interested in seeing this matrix of fields.  At the present time I think the following columns are probably of interest:

Name, must understand, use required, common vs specific, protection required

I was just looking at the alg and enc fields for JWE and realized that one was specific - so it should be one location - and one was common - so it should be in a different location.  And then I needed to start thinking about where it goes in terms of compacted vs one recipient vs two recipients.

Do you have an idea of when this matrix might show up?

Jim