Re: [websec] #58: Should we pin only SPKI, or also names

"Jeremy Rowley" <jeremy.rowley@digicert.com> Tue, 13 August 2013 04:23 UTC

Return-Path: <jeremy.rowley@digicert.com>
X-Original-To: websec@ietfa.amsl.com
Delivered-To: websec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A36EF21E80A6 for <websec@ietfa.amsl.com>; Mon, 12 Aug 2013 21:23:05 -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=[BAYES_50=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 VQZ0S06u7Vwc for <websec@ietfa.amsl.com>; Mon, 12 Aug 2013 21:23:01 -0700 (PDT)
Received: from mail.digicert.com (mail.digicert.com [64.78.193.232]) by ietfa.amsl.com (Postfix) with ESMTP id A0ED721E8093 for <websec@ietf.org>; Mon, 12 Aug 2013 21:22:58 -0700 (PDT)
Received: from JROWLEYL1 (unknown [12.165.222.10]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.digicert.com (Postfix) with ESMTPSA id C05307FA093; Mon, 12 Aug 2013 22:22:55 -0600 (MDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=digicert.com; s=mail; t=1376367776; bh=cobzp3BbznU0gMTdmfKaXLeDKNbzbP9EthjgT0KzcU4=; h=Reply-To:From:To:Cc:References:In-Reply-To:Subject:Date; b=zkp4SYYvW20HeWCHzBY9Our17zJMyxWvwVHeEn32nUvWqLKZMcc3T9hCXSxEJffel tzg/CNnjQYEtBn/7txiZjGPm0WaWK9CMDTiJFnxXeJILhr8gWMuz88GGQxyHX1lsEp JKeEsG8qNVDpIUlH+Nn5+kqY7ylbyCJt+nyFKGwM=
From: Jeremy Rowley <jeremy.rowley@digicert.com>
To: 'Trevor Perrin' <trevp@trevp.net>, 'Gervase Markham' <gerv@mozilla.org>
References: <060.be9b0009dc0350ca543f553042673944@trac.tools.ietf.org> <073501ce8c6e$f6c17d90$e44478b0$@digicert.com> <CAMm+LwjdGJC4FHCJ_OAYGRqCGGc0Nz1pLV=yVGK9M9E7drfujQ@mail.gmail.com> <CAOuvq200e9HnPX1w9sZ+e7ipBmdgZdPL5xzKDgcaDpSxz1N=gg@mail.gmail.com> <CAMm+Lwh384YBMXw-BDoxJw+AN4qv8x6GQpF9YK4PW1gQRnadpg@mail.gmail.com> <6125A841-6C85-4858-B37F-C021067F0CFA@checkpoint.com> <2035FF99-A079-4F2F-B4DE-962FE1C1B964@checkpoint.com> <CAOuvq20O9bqHGR-5eKPmasNnWEuNW7ACL7PxM09yoTmmyt1UUg@mail.gmail.com> <CAGZ8ZG2C4uB=4vgH325TWeNW89ne4E_DN0j9ZV0t2AKa1o+x9g@mail.gmail.com> <52089A35.9040103@mozilla.org> <CAGZ8ZG3HUUsQJ63mCqHd_LOq+KSdsVpG7Gibdif5dS4oGLywpA@mail.gmail.com> <52091598.7000306@mozilla.org> <CAGZ8ZG1GPxOFP-v=kjGVj=7qLv-hYsbfwYweU7k3E3FoyRF-eg@mail.gmail.com>
In-Reply-To: <CAGZ8ZG1GPxOFP-v=kjGVj=7qLv-hYsbfwYweU7k3E3FoyRF-eg@mail.gmail.com>
Date: Mon, 12 Aug 2013 22:22:56 -0600
Organization: DigiCert
Message-ID: <05e001ce97dc$c9d5bbb0$5d813310$@digicert.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQJoJKS5/1/Jv2JXKWhm99jqPYGDVAJNKJejAdJQI9sCGoZA7wM5pAdUAiWKukcBIDPIBwNTr9QiAme7tNcCJlWFCwIOi6NMAeW0QiMCcxkmuJeHWBRQ
Content-Language: en-us
Cc: 'websec' <websec@ietf.org>
Subject: Re: [websec] #58: Should we pin only SPKI, or also names
X-BeenThere: websec@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
Reply-To: jeremy.rowley@digicert.com
List-Id: Web Application Security Minus Authentication and Transport <websec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/websec>, <mailto:websec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/websec>
List-Post: <mailto:websec@ietf.org>
List-Help: <mailto:websec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/websec>, <mailto:websec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 13 Aug 2013 04:23:05 -0000

The problems with pinning a CA are similar to problems with pinning a SPKI.
Eventually, the browser needs updated pinned information.  CA pinning shifts
coordination of this update from the Website-Browser to a CA-Browser
communication.  

Permitting CA pinning allows an entity to essentially delegate certificate
decisions to single CA entity.  The usability problems are somewhat resolved
(although not eliminated) because the entity no longer needs to figure out
exactly which keys should be pinned.  Management can adopt a policy to only
use fooCA and then pin that CA, eliminating the need to try and coordinate
all the people responsible for making a decision and making the solution
easier for management to understand than a presented set of SPKIs.   

Jeremy

-----Original Message-----
From: websec-bounces@ietf.org [mailto:websec-bounces@ietf.org] On Behalf Of
Trevor Perrin
Sent: Monday, August 12, 2013 6:53 PM
To: Gervase Markham
Cc: websec
Subject: Re: [websec] #58: Should we pin only SPKI, or also names

On Mon, Aug 12, 2013 at 10:04 AM, Gervase Markham <gerv@mozilla.org> wrote:
> On 12/08/13 17:11, Trevor Perrin wrote:
>> If people hate this, someone should make a proposal for a registry:
>
> Or make a proposal to stick with the current spec, and not pin names 
> :-)

Sure.  But then I'd also like to hear an argument for how this style of
pinning could solve its usability problems and become widespread, given that
Chrome's preloaded version of this attracted only 3 users in 27 months.


>> Could you explain how these problems would arise?
>>
>> I'm proposing CAs would coordinate with browsers, then inform their 
>> customers (websites) which name to use.  A misbehaving CA could 
>> inform its customers of a meaningless name, causing browsers to 
>> ignore the pin.  But a misbehaving CA could violate its customers' 
>> security in other ways.
>
> They would arise via any of the obvious mechanisms this could go 
> wrong,
> e.g.:
>
> * CA fails to communicate with (some subset of) browsers, perhaps the 
> small ones, leading to divergent behaviour

Well, either a popular CA communicates its key list to browsers, or it
communicates it to the (thousands? millions?) of websites that would like to
be pinned to that CA.

There's a coordination problem either way.  So pointing out that browser/CA
coordination is a hassle and has some failure modes doesn't seem a
compelling argument against it, given the alternatives.


> * Browser update is not universally accepted, leading to divergent 
> behaviour
>
> Say Foo CA merges with Bar CA, and issues an edict that from now on 
> the string "fooca.com" will include the already-deployed root, "Bar CA 
> Super-Secure". Six months later, after gnashing their teeth at the 
> delay that this process is introducing into their business, they start 
> issuing certs from "Bar CA Super-Secure" to Foo CA customers. A site, 
> naiveshop.com, is pinned to fooca.com, and buys one of these new certs.
> All naiveshop.com's customers whose browsers are older than 6 months 
> get connection failures, and naiveshop.com can't easily detect that 
> this is happening, or to how many people.

Coordination between browsers and CAs would have to involve timing rules.  A
browser who has not updated a name/key mapping after some period of time
would have to stop using it, just as browsers stop using preloaded pins if
they're too old.


Trevor
_______________________________________________
websec mailing list
websec@ietf.org
https://www.ietf.org/mailman/listinfo/websec