Re: [TLS] draft-rescorla-tls-renegotiate and MITM resistance

Nicolas Williams <Nicolas.Williams@sun.com> Mon, 09 November 2009 22:52 UTC

Return-Path: <Nicolas.Williams@sun.com>
X-Original-To: tls@core3.amsl.com
Delivered-To: tls@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id E097528C263 for <tls@core3.amsl.com>; Mon, 9 Nov 2009 14:52:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.718
X-Spam-Level:
X-Spam-Status: No, score=-5.718 tagged_above=-999 required=5 tests=[AWL=-0.272, BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, J_CHICKENPOX_33=0.6, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id GvPfHvyNnv2i for <tls@core3.amsl.com>; Mon, 9 Nov 2009 14:52:54 -0800 (PST)
Received: from sca-ea-mail-3.sun.com (sca-ea-mail-3.Sun.COM [192.18.43.21]) by core3.amsl.com (Postfix) with ESMTP id E8FDE28C205 for <tls@ietf.org>; Mon, 9 Nov 2009 14:52:53 -0800 (PST)
Received: from dm-central-02.central.sun.com ([129.147.62.5]) by sca-ea-mail-3.sun.com (8.13.6+Sun/8.12.9) with ESMTP id nA9MrKX8007187 for <tls@ietf.org>; Mon, 9 Nov 2009 22:53:20 GMT
Received: from binky.Central.Sun.COM (binky.Central.Sun.COM [129.153.128.104]) by dm-central-02.central.sun.com (8.13.8+Sun/8.13.8/ENSMAIL, v2.2) with ESMTP id nA9MrK4L027174 for <tls@ietf.org>; Mon, 9 Nov 2009 15:53:20 -0700 (MST)
Received: from binky.Central.Sun.COM (localhost [127.0.0.1]) by binky.Central.Sun.COM (8.14.3+Sun/8.14.3) with ESMTP id nA9MYIUa011903; Mon, 9 Nov 2009 16:34:18 -0600 (CST)
Received: (from nw141292@localhost) by binky.Central.Sun.COM (8.14.3+Sun/8.14.3/Submit) id nA9MYIvT011902; Mon, 9 Nov 2009 16:34:18 -0600 (CST)
X-Authentication-Warning: binky.Central.Sun.COM: nw141292 set sender to Nicolas.Williams@sun.com using -f
Date: Mon, 09 Nov 2009 16:34:18 -0600
From: Nicolas Williams <Nicolas.Williams@sun.com>
To: Martin Rex <mrex@sap.com>
Message-ID: <20091109223417.GK1105@Sun.COM>
References: <006FEB08D9C6444AB014105C9AEB133FB36A4EBF03@il-ex01.ad.checkpoint.com> <200911092152.nA9LqVkW000963@fs4113.wdf.sap.corp>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <200911092152.nA9LqVkW000963@fs4113.wdf.sap.corp>
User-Agent: Mutt/1.5.7i
Cc: tls@ietf.org
Subject: Re: [TLS] draft-rescorla-tls-renegotiate and MITM resistance
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.9
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/listinfo/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, 09 Nov 2009 22:52:55 -0000

On Mon, Nov 09, 2009 at 10:52:31PM +0100, Martin Rex wrote:
> I whish there was a constraint that an identity/certificate that has
> been established for a party during the TLS handshake MUST not change
> during re-negotiation, but _none_ of the current SSL&TLS specs has
> such a constraint, so the issue of identity change is currently
> dumped as a responsibility onto the application.
> 
> I am certainly in favour of locking this down for the renegotiation.
> I believe it is irresponsible to leave this un(der)specified as it is.

+1

This is the right time to add such a constraint.

I wouldn't be surprised if there are clients (for IMAP? LDAP?) that take
advantage of this to allow the user to switch "hats" without
reconnecting though.

> As previously described in another message, the current spec has a
> requirement that additonal application data may be arbitrarily
> interleaved with a renegotiation handshake.  I think this requirement
> makes a security assessment of the protocol impossible for changing
> identities.

Or at least really difficult.

> Personally, I would it find much cleaner if the semantics for the
> renegotiation would require the TLS peers to suspend transmission
> of application data while performing TLS renegotiation,
> i.e.

+1

This is the right time to add such a constraint.

Unlike a "authenticated identities can't change" constraint, this could
be implemented without conceivable app protocols being broken, I think,
but it may require API changes for some implementations, and that it may
put this change out of reach.

Nico
--