Re: [TLS] simplistic renego protection

Eric Rescorla <ekr@networkresonance.com> Mon, 16 November 2009 11:27 UTC

Return-Path: <ekr@networkresonance.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 86EA53A6958 for <tls@core3.amsl.com>; Mon, 16 Nov 2009 03:27:30 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.495
X-Spam-Level:
X-Spam-Status: No, score=-0.495 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_COM=0.553, RDNS_NONE=0.1]
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 Y1Db5WCfvnMO for <tls@core3.amsl.com>; Mon, 16 Nov 2009 03:27:29 -0800 (PST)
Received: from kilo.networkresonance.com (unknown [194.126.108.9]) by core3.amsl.com (Postfix) with ESMTP id 801BE3A6957 for <tls@ietf.org>; Mon, 16 Nov 2009 03:27:29 -0800 (PST)
Received: from kilo.local (localhost [127.0.0.1]) by kilo.networkresonance.com (Postfix) with ESMTP id 82CF269F8D7; Mon, 16 Nov 2009 13:28:46 +0200 (EET)
Date: Mon, 16 Nov 2009 13:28:45 +0200
From: Eric Rescorla <ekr@networkresonance.com>
To: mrex@sap.com
In-Reply-To: <200911160036.nAG0atRS014903@fs4113.wdf.sap.corp>
References: <200911160036.nAG0atRS014903@fs4113.wdf.sap.corp>
User-Agent: Wanderlust/2.15.5 (Almost Unreal) Emacs/22.3 Mule/5.0 (SAKAKI)
MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka")
Content-Type: text/plain; charset="US-ASCII"
Message-Id: <20091116112846.82CF269F8D7@kilo.networkresonance.com>
Cc: tls@ietf.org
Subject: Re: [TLS] simplistic renego protection
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, 16 Nov 2009 11:27:30 -0000

At Mon, 16 Nov 2009 01:36:55 +0100 (MET),
Martin Rex wrote:
> 
> The most simplistic approch to renego protection is
> 
>    1. the client signals that it is patched through a fake
>       ciphersuite ID in each ClientHello
> 
>    2. the client only supports secure renegotiation and
>       secure renegotiation is specified to change the definition
>       of the handshake message hash for renegotiation handshakes
>       to include the verify_data of the client.finished and
>       server.finished after the ServerHello.
> 
> Everything else is options for vendors and users.

This is an interesting suggestion, but I think it has some problematic
aspects.

As has been noted several times, if the client desires to guarantee
that it does not form connections to unpatched servers, then servers
need to behave differently only on the initial connection. Your
proposal doesn't accomodate this.

Obviously this could be fixed--the natural approach is to modify
the server's Finished even on the initial negotiation, but this
requires conditional behavior in the Finished processor, which
is sort of distressing. The problem becomes even more complicated
when we consider resumption. 

We could use other mechanisms, such as ServerRandom signalling, but
we're now at the point where we're generating a lame version of
extension signalling using other mechanisms. Absent some evidence that
there is a real SSLv3 compatibility issue, I'm not sure why that's a
good idea.

On an aesthetic level, the TLS handshake hashes are just that,
handshake hashes. Injecting new data into that computation doesn't
strike me as really that architecturally fantastic an idea. If we
were to go down that road, I suspect that Rob Dugal's suggestion
of just continuing the handshake hashes would be superior.

-Ekr