Re: [TLS] Breaking into TLS to protect customers

R du Toit <r@nerd.ninja> Mon, 19 March 2018 15:51 UTC

Return-Path: <r@nerd.ninja>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3F335127978 for <tls@ietfa.amsl.com>; Mon, 19 Mar 2018 08:51:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.018
X-Spam-Level:
X-Spam-Status: No, score=-2.018 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nerd.ninja
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 9a8pQ0hypSc9 for <tls@ietfa.amsl.com>; Mon, 19 Mar 2018 08:51:07 -0700 (PDT)
Received: from sender-of-o52.zoho.com (sender-of-o52.zoho.com [135.84.80.217]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7510712D777 for <tls@ietf.org>; Mon, 19 Mar 2018 08:51:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1521474659; s=zoho; d=nerd.ninja; i=r@nerd.ninja; h=Date:Subject:From:To:CC:Message-ID:References:In-Reply-To:Mime-version:Content-type; l=20503; bh=Bp9d4H1T72t4NOjnloKShpmhBlu0G8bf3+xpD8KSdSE=; b=XzKPVl8NRp+KiqBZkjMZKPGGa/U+SNgEhnSck/fh8YQibITnCsj0dUrTPlue1sLg pni1RgVrwEo0jSSckRKY5rDMgn8BWgZuGFN8s+edWQlv3hyjrGfHeskrkNRDJMZyGwU gSAKCRqTvvXYWNlW6hdfTS/wSxZdpEiAfqqHXOb8=
Received: from [192.168.12.220] (66.37.54.70.nauticom.net [66.37.54.70]) by mx.zohomail.com with SMTPS id 1521474659185674.3778207809283; Mon, 19 Mar 2018 08:50:59 -0700 (PDT)
User-Agent: Microsoft-MacOutlook/10.b.0.180311
Date: Mon, 19 Mar 2018 11:50:57 -0400
From: R du Toit <r@nerd.ninja>
To: Colm MacCárthaigh <colm@allcosts.net>, Daniel Kahn Gillmor <dkg@fifthhorseman.net>
CC: "tls@ietf.org" <tls@ietf.org>
Message-ID: <2757CDCE-903D-4CA2-941E-768F96A094BD@nerd.ninja>
Thread-Topic: [TLS] Breaking into TLS to protect customers
References: <C43EDAAC-1CA1-4289-8659-B2E05985F79C@akamai.com> <E22E3F4C-2A44-4F17-9FEA-18760C36A1E8@gmail.com> <0bd7ed2d174a45d993026c8ed0443ae8@LXDOMEXC01.ssidom.com> <6888195D-1AD6-45B1-8F77-AFA088CFF78A@gmail.com> <87y3iottae.fsf@fifthhorseman.net> <CAAF6GDeAOKtCF5BhfyG6wEd5L-mevKeuDMM1AmgdGKyfuEyzdQ@mail.gmail.com>
In-Reply-To: <CAAF6GDeAOKtCF5BhfyG6wEd5L-mevKeuDMM1AmgdGKyfuEyzdQ@mail.gmail.com>
Mime-version: 1.0
Content-type: multipart/alternative; boundary="B_3604305058_1095003250"
X-ZohoMailClient: External
X-ZohoMail: Z_658201841 SPT_1 Z_47369130 SPT_1 SLF_D
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/NT48tdGRkoSt7qV-NIBczxw6m5U>
Subject: Re: [TLS] Breaking into TLS to protect customers
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.22
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: <https://mailarchive.ietf.org/arch/browse/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, 19 Mar 2018 15:51:10 -0000

Commenting purely on the straw-man proposal:

How would passive tools get to the new message if it is sent before the TLS 1.3 server Finished, given that the handshake is already encrypted by that point?

You could send it as plaintext before client Finished, but that changes the properties of resumption_master_secret, and impacts the TLS state machine on the server end, which now has to accept plaintext records after switching to protected handshake records.

 

--Roelof

 

From: TLS <tls-bounces@ietf.org> on behalf of Colm MacCárthaigh <colm@allcosts.net>
Date: Monday, March 19, 2018 at 10:21 AM
To: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Breaking into TLS to protect customers

 

 

It's true that breaking open cleartext runs counter to the mission of end-to-end TLS, but it also seems like operators are going to do it if they can. Whether by staying on plain RSA, using static-DH, MITM through installing a private trusted CA, or exporting session secrets, they can certainly do it.  I worry that we'll lose a good opportunity to improve the security and transparency of things by turning our nose up at that. 

 

Here's a straw-man suggestion:

 

Suppose we took on a draft that adds a new optional handshake message. The message could go immediately before FINISHED, in either direction (or both), and contain an encrypted version of the soon-to-be-session-key.  For back-compat: it could be encrypted with RSA, or whatever else the endpoints want to support. This is basically what STEK encrypted tickets look like today with TLS1.2 anyway, though usually with symmetric encryption, so it's not that wild a departure. 

 

Obviously this breaks forward secrecy, and allows passive tapping and session hi-jacking, but then that's the point. But I think there are some security advantages too: 

 

1/ By making the functionality part of the handshake transcript, it is unforgeably evident to both sides that it is happening. The proponents of this functionality claim that everything is opt-in, but this gives some cryptographic teeth to it. 

 

2/ clients and browsers could easily consider such sessions insecure by default. This would mean that adopters would have to deploy configurations and mechanisms to enable this functionality, similar to - but beyond - how private root CAs can be inserted. 

 

Wouldn't those be good properties to have? Compared to servers secretly exporting transcripts or session keys, or just having a private root CA installed which breaks all sorts of certificate verification infrastructure? 

 

I think the existence of a "standard" here could also serve to encourage providers to do things the more transparent way, and create less likelihood of a mass-market of products that could also be used for more surreptitious tapping. 

 

 

On Mon, Mar 19, 2018 at 12:32 AM, Daniel Kahn Gillmor <dkg@fifthhorseman.net> wrote:

On Thu 2018-03-15 20:10:46 +0200, Yoav Nir wrote:
>> On 15 Mar 2018, at 10:53, Ion Larranaga Azcue <ilarra@s21sec.com> wrote:
>>
>> I fail to see how the current draft can be used to provide visibility
>> to an IPS system in order to detect bots that are inside the bank…
>>
>> On the one hand, the bot would never opt-in for visibility if it’s
>> trying to exfiltrate data…
>
> The presumption is that any legitimate application would opt-in, so
> the IPS blocks any TLS connection that does not opt in.

Thanks for clarifying the bigger picture here, Yoav.

So if this technology were deployed on a network where not all parties
are mutually trusting, it would offer network users a choice between
surveillance by the network on the one hand (opt-in) and censorship on
the other (opt-out and be blocked).  Is that right?

Designing mechanism for the Internet that allows/facilitates/encourages
the network operator to force this choice on the user seems problematic.
Why do we want this for a protocol like TLS that is intended to be used
across potentially adversarial networks?

datacenter operators who want access to the cleartext passing through
machines they already control already have mechanisms at their disposal
to do this (whether they can do so at scale safely without exposing
their customers' data to further risks is maybe an open question,
regardless of mechanism).

Mechanisms that increase "visibility" of the cleartext run counter to
the goals of TLS as an end-to-end two-party secure communications
protocol.

Regards,

     --dkg

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



 

-- 

Colm

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