Re: [TLS] About encrypting SNI

Martin Thomson <martin.thomson@gmail.com> Mon, 07 April 2014 17:36 UTC

Return-Path: <martin.thomson@gmail.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8AF221A07A1 for <tls@ietfa.amsl.com>; Mon, 7 Apr 2014 10:36:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0aaQC915qsw2 for <tls@ietfa.amsl.com>; Mon, 7 Apr 2014 10:36:30 -0700 (PDT)
Received: from mail-wi0-x231.google.com (mail-wi0-x231.google.com [IPv6:2a00:1450:400c:c05::231]) by ietfa.amsl.com (Postfix) with ESMTP id 8C3E81A07BE for <tls@ietf.org>; Mon, 7 Apr 2014 10:36:24 -0700 (PDT)
Received: by mail-wi0-f177.google.com with SMTP id cc10so5494586wib.16 for <tls@ietf.org>; Mon, 07 Apr 2014 10:36:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=OxgTuARU/J9+7eu+AXs0LvbLZQ31lP3ahtGy823wv0I=; b=xOsQVO23VOqLL/b0WehchVc7+KQ0nxgDvBImC3CE05Fpj3IxT9Jf/CL25MqN2NjbZp 3r5Rn1hK5BxWJKzgSRANEbzUT10VfTz9xFwntH4QwSPs3iKdLp9p+HOntIopB/lPBoXc 9XUwBWbnhwd/zHwYDpzTRpPqz8hR+/1W/eNx7T6aEEOQBc4IBH2tCvUpI2JmJgnoGK0E VZj37SwySSDgxS5u6kAwXVbJ3+JmtTg4UGTFfgFcvJp5MHsAlgyfAsR2crUjYjQ92z00 9EQzBHOPt+gv2IuIowW88aVSqcx2RTtAQuXP7UmMvXporSA2F+ynkzaaDCiBfwLb8iT5 /O5Q==
MIME-Version: 1.0
X-Received: by 10.195.12.14 with SMTP id em14mr43801740wjd.15.1396892178483; Mon, 07 Apr 2014 10:36:18 -0700 (PDT)
Received: by 10.227.147.10 with HTTP; Mon, 7 Apr 2014 10:36:18 -0700 (PDT)
In-Reply-To: <2A0EFB9C05D0164E98F19BB0AF3708C7120A04ED40@USMBX1.msg.corp.akamai.com>
References: <2A0EFB9C05D0164E98F19BB0AF3708C7120A04ED40@USMBX1.msg.corp.akamai.com>
Date: Mon, 07 Apr 2014 10:36:18 -0700
Message-ID: <CABkgnnX_xvdff8hREMwEz3dLP4OF3vz=JFFcdTxLhMQXZ6ROcg@mail.gmail.com>
From: Martin Thomson <martin.thomson@gmail.com>
To: "Salz, Rich" <rsalz@akamai.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/fO6KfErZ6Q_D9MRUI6gw1D7VThc
Cc: "TLS@ietf.org (tls@ietf.org)" <tls@ietf.org>
Subject: Re: [TLS] About encrypting SNI
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Apr 2014 17:36:34 -0000

Rich,

Did you consider the solution proposed by dkg at the meeting?  That
is, embed routing information in the server_key_label [1].  That means
that you can identify flows as precisely as you need prior to
decrypting.  No need then for 15m IP addresses, certainly.

--Martin

[1] http://tools.ietf.org/html/draft-rescorla-tls13-new-flows-01#section-6.4.3

On 7 April 2014 07:29, Salz, Rich <rsalz@akamai.com> wrote:
> I have concerns some about SNI encryption.
>
> First, I think it addresses a problem that is actually not that important for most. There are comparatively few sites on the web that have multiple properties served from a single host (or cluster). Certainly the biggest sites that received the most publicity for being under attack by the NSA -- Microsoft, Google, Yahoo, etc. -- are really a few to smallish number of services. And those companies have the wherewithal to deploy separate identities and IP addresses for their properties.
>
> Second, it potentially disadvantages a portion of the net: large CDN's and their customers. My employer, for example, serves thousands of sites on its TLS network, and encrypting SNI requires us to either have a single long-lived keypair for all customers, or require an extra RTT for clients to fetch an EDH key, perhaps still shared, but hopefully more secure. The latter is particularly off-putting since customers paying for a "faster, better" end-user experience are now at a disadvantage. Some in this community might not deploy TLS 1.3 to avoid the "retry penalty." This would be a shame.
>
> Third, we have not heard from the real potential community of consumers of this. I posit that they are mid-size sites with a "handful" of hosted properties. They are currently adequately served by virtual IP's, and even more so in the future by IPv6. And in terms of adversaries, does it matter which property within peacefire, for example, a user is contacting?  A site under surveillance by a national-scale adversary will have *everything* scooped up anyway.
>
> Let me put some numbers on the previous points. We deliver content for around 10K domains, each with its own RSA keypair, out of 1500 locations. Without SNI, that means we need 15Million IP addresses, while being able to use SNI we only need one per location (region in our terminology). With SNI encryption we either need to share keys (bad for security, and perhaps not compliant with some regulations) or fragment IPs (bad for the web long-term). And that's just us.  Add in all the CDNs, hosting companies, cloud providers... it's big.  Do we know what people like AWS, Rackspace, IBM Cloud, etc., think about this?
>
> Fourth, it potentially "unlevels" the playing field. Organizations that have both a browser and servers of interest could, trivially, arrange to push out keys on a regular basis. I am not suggesting that anyone is planning on doing this, but I fear the temptation to do so in the name of "improving the user experience" will prove too great. In darker moments, I extrapolate the " browser list of  CA's" story and imagine a future where Chrome talking to Google will be faster than IE talking to Bing, and Firefox will end up selling slots in its EDH store (sic) to attract revenue.
>
> Fifth, it introduces unknown security and trust implications in browsers. It took years to make "certificate stores" actually secure. And we are potentially opening up a new avenue of active attacks over the network while increasing the expectation that things are more secure. We are also increasing the client-side attack surface.
>
> Sixth, it adds an extra burden to servers. I think it also improves potential DoS attacks, since they could start at the first PDU exchange.
>
> Seventh, it ignores some of our own history. When HTTP/1.1 mandated the Host header, the virtual hosting industry was created. Until virtual IP's were well-known and SNI was widely adopted (I'm being charitable here), adoption of TLS among hosting providers had significant drag. If SNI is routing, then routing is plaintext and we are now going hide it without understanding the trade-offs.
>
> Finally, it is a lot of mechanism.  As ekr said in London, "you have to do all this if you want to protect the SNI." It's not worth it.
>
> I think we're going too far, and we should come down on the side of simplicity, not for its own sake, but for security's sake.
>
>         /r$
> --
> Principal Security Engineer
> Akamai Technology
> Cambridge, MA
>
> _______________________________________________
> TLS mailing list
> TLS@ietf.org
> https://www.ietf.org/mailman/listinfo/tls