[saag] Fwd: [websec] Pinning

Yoav Nir <ynir@checkpoint.com> Tue, 05 June 2012 21:46 UTC

Return-Path: <ynir@checkpoint.com>
X-Original-To: saag@ietfa.amsl.com
Delivered-To: saag@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2139621F8779 for <saag@ietfa.amsl.com>; Tue, 5 Jun 2012 14:46:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.548
X-Spam-Level:
X-Spam-Status: No, score=-10.548 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
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 i3gia-eP2Gfw for <saag@ietfa.amsl.com>; Tue, 5 Jun 2012 14:46:22 -0700 (PDT)
Received: from michael.checkpoint.com (smtp.checkpoint.com [194.29.34.68]) by ietfa.amsl.com (Postfix) with ESMTP id 8B82021F8775 for <saag@ietf.org>; Tue, 5 Jun 2012 14:46:20 -0700 (PDT)
Received: from il-ex01.ad.checkpoint.com (dlpgw.checkpoint.com [194.29.34.27]) by michael.checkpoint.com (8.13.8/8.13.8) with ESMTP id q55LkJrE009768 for <saag@ietf.org>; Wed, 6 Jun 2012 00:46:19 +0300
X-CheckPoint: {4FCE8A24-1-1B221DC2-2FFFF}
Received: from il-ex01.ad.checkpoint.com ([126.0.0.2]) by il-ex01.ad.checkpoint.com ([126.0.0.2]) with mapi; Wed, 6 Jun 2012 00:46:18 +0300
From: Yoav Nir <ynir@checkpoint.com>
To: "saag@ietf.org" <saag@ietf.org>
Date: Wed, 06 Jun 2012 00:46:14 +0300
Thread-Topic: [websec] Pinning
Thread-Index: Ac1DZKLe9GWj8p+ZQvGqNZ9OUEal+g==
Message-ID: <8E52CEC5-4FEB-4464-AB11-21F1B9208C5C@checkpoint.com>
References: <31946C2A-4ACD-46D7-8977-49B681204A7B@checkpoint.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
x-kse-antivirus-interceptor-info: scan successful
x-kse-antivirus-info: Clean
x-cpdlp: 118f82a43ade27cbe23c720ea4af59ae5edf178aa4
Content-Type: multipart/alternative; boundary="_000_8E52CEC54FEB4464AB1121F1B9208C5Ccheckpointcom_"
MIME-Version: 1.0
Subject: [saag] Fwd: [websec] Pinning
X-BeenThere: saag@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Security Area Advisory Group <saag.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/saag>, <mailto:saag-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/saag>
List-Post: <mailto:saag@ietf.org>
List-Help: <mailto:saag-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/saag>, <mailto:saag-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Jun 2012 21:46:23 -0000

At Paul's request, forwarding to SAAG.

Begin forwarded message:

From: Yoav Nir <ynir@checkpoint.com<mailto:ynir@checkpoint.com>>
Subject: Re: [websec] Pinning
Date: June 6, 2012 12:11:37 AM GMT+03:00
To: IETF WebSec WG <websec@ietf.org<mailto:websec@ietf.org>>

Hi

The similarity of pinning and DANE has been discussed before. DANE relies on DNSSEC being deployed, which key-pinning does not. Come to think of it, the draft needs a section comparing with DANE, but that's for another thread.

draft-perrin-tls-tack seems to tackle the same problem as key-pinning. Instead of the pins getting attested to in HTTP headers, you have a special public/private key pair, that you use to sign the SPKI from the server certificate within the a TLS extension. Like key-pinning there's a TOFU element here, because the client only learns about the special key when it encounters it in a TLS handshake.

The obvious question is why would we need both key-pinning and tack. It has been asked on the TLS mailing list:
http://www.ietf.org/mail-archive/web/tls/current/msg08818.html

An answer by the draft authors is here:
http://www.ietf.org/mail-archive/web/tls/current/msg08830.html

In the grand scheme of things, it's not good for the IETF to make >1 standards, both of which need to be implemented in both servers and browsers, that accomplish the same thing, and Sean is correct that implementing more than one may lead to mismatching information. In a sense DANE is also doing the same thing, but DANE requires DNSSEC everywhere, so it's operational profile is different. But Tack and cert pinning both have no prerequisites and accomplish the same thing, so what if one's at the HTTP layer, while the other is at the TLS layer.

I don't think the TLS WG is very excited about TACK (see the mailing list) but regardless, I think it's up to us to look at both options and decide if we would like to go on with cert-pinning, or whether we thing TACK is better.

Yoav

On Jun 5, 2012, at 11:47 PM, Paul Hoffman wrote:

>From the SAAG mailing list, but appropriate here. I bet that Sean would appreciate all discussion to go on on the SAAG mailing list...

Begin forwarded message:

From: Sean Turner <turners@ieca.com>
Subject: [saag] Pinning
Date: June 5, 2012 12:55:29 PM PDT
To: saag@ietf.org

All,

There are many proposals for how to say which key or certificate or trust anchor should be used by the client in a TLS session that it is about to open. These proposals include making that decision in the DNS (https://datatracker.ietf.org/doc/draft-ietf-dane-protocol/), in the application after TLS has happened once, to be remembered in the future (https://datatracker.ietf.org/doc/draft-ietf-websec-key-pinning/), and in the TLS handshake (https://datatracker.ietf.org/doc/draft-perrin tls-tack/). If more than one of these protocols are deployed, operational mistakes could lead to a client getting conflicting information.

Similarly, there are also proposals on how to say whether or not a client should expect to see a particular service running under TLS. These proposals include making that indication in the DNS (draft hoffman-server-has-tls, expired but might be revived) and in the application after TLS has happened once, to be remembered in the future (https://datatracker.ietf.org/doc/draft-ietf-websec-strict-transport sec/). If more than one of these protocols are deployed, operational mistakes could lead to a client getting conflicting information.

Is a standards-track operations statement needed to describe the choices that a TLS server administrator has, and to deal with conflicts between the proposals?

spt

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

Scanned by Check Point Total Security Gateway.