Re: [TLS] Abbreviated Handshake != Renegotiated Handshake

Michael D'Errico <mike-list@pobox.com> Sat, 19 December 2009 23:32 UTC

Return-Path: <mike-list@pobox.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 1A07C3A6989 for <tls@core3.amsl.com>; Sat, 19 Dec 2009 15:32:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.547
X-Spam-Level:
X-Spam-Status: No, score=-2.547 tagged_above=-999 required=5 tests=[AWL=0.052, BAYES_00=-2.599]
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 vRgUsadAeZNa for <tls@core3.amsl.com>; Sat, 19 Dec 2009 15:32:13 -0800 (PST)
Received: from sasl.smtp.pobox.com (a-pb-sasl-quonix.pobox.com [208.72.237.25]) by core3.amsl.com (Postfix) with ESMTP id 1E09D3A6980 for <tls@ietf.org>; Sat, 19 Dec 2009 15:32:13 -0800 (PST)
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 3C4838939A for <tls@ietf.org>; Sat, 19 Dec 2009 18:31:57 -0500 (EST)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=message-id :date:from:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; s=sasl; bh=AcVB8LD6iS9k kBI+YQeV6oqvOWM=; b=bPwhRekcviE0NvTtcO7a5pQ3KRlhsLj2ZfqdrMbvvVmv r7Md4QXr3/g3DRUNCkyohIStHFa1VaVLDWkUsufWfH8sgl2JnsaJR/HJGyH6xNwC Lt9H1v0ZWNxbKlx5dvUDCTQHI4YnfOej7cpHM0Jhr49hQwUOZZ7Z5ZMBExo0lRw=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=message-id:date :from:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; q=dns; s=sasl; b=apFvMr gTTEvA1X6scC7AUi3u0xIzwzOHWU+VYwpCiLQ0AV7fEyoIEdsvD52DdHIS73guGj njY8CzVWwbdgoScnerCZmf//20Y2rvqiuOnhZXO/zk6ZkUTKQP/Brn9uOS2m49N7 iXLz4bXl4IC8P3+FEyU3WQDo7Pl+UXdOj4fZ4=
Received: from a-pb-sasl-quonix. (unknown [127.0.0.1]) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTP id 3A2C289399 for <tls@ietf.org>; Sat, 19 Dec 2009 18:31:57 -0500 (EST)
Received: from administrators-macbook-pro.local (unknown [24.234.114.35]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-quonix.pobox.com (Postfix) with ESMTPSA id D122A89398 for <tls@ietf.org>; Sat, 19 Dec 2009 18:31:56 -0500 (EST)
Message-ID: <4B2D62E0.2090509@pobox.com>
Date: Sat, 19 Dec 2009 15:33:52 -0800
From: Michael D'Errico <mike-list@pobox.com>
User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812)
MIME-Version: 1.0
To: tls@ietf.org
References: <3561bdcc0912190913t7bf4ea3fkc3ec29117b268b96@mail.gmail.com> <4B2D22C6.9090109@extendedsubset.com> <3561bdcc0912191343n33b51ebdh260d8048ecd0857f@mail.gmail.com> <20091219221416.46E066C89B6@kilo.networkresonance.com> <3561bdcc0912191507y45ec359bma3b32f12dbcad07@mail.gmail.com>
In-Reply-To: <3561bdcc0912191507y45ec359bma3b32f12dbcad07@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Pobox-Relay-ID: B2B5D8E6-ECF6-11DE-9D78-DC0DEE7EF46B-38729857!a-pb-sasl-quonix.pobox.com
Subject: Re: [TLS] Abbreviated Handshake != Renegotiated Handshake
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: Sat, 19 Dec 2009 23:32:14 -0000

Ravi Ganesan wrote:
> I agree completely with the comments below, and those of Mike, that a 
> smart app completely aware of the doings of the ssl stack, can ensure 
> the ssl stack underneath it does not do something unexpected. One could 
> by the same token claim that a smart app aware of the doings of the ssl 
> stack would not have mixed up the before and after of the 'pizza order' 
> in your exposition of the original attack. I figured the goals were to 
> save a not-so-smart app from itself to extent possible.

Preventing session resumption is (or should be) easy for the server. Just
set a maximum session lifetime in your session cache.  If the client
attempts to resume a session older than that, the server won't find it in
the cache and will be forced into a full handshake.

> Anyway, for my taste, if one side says I want to renegotiate, and the 
> other responds with a message that results in NON-renegotiation it makes 
> no sense to allow it within TLS itself.  I have not seen any use case 
> where this peculiar behaviour should be tolerated. And if such a use 
> case does not exist, it might be wise to be parsimonious and disallow it.

You've confused renegotiation with resumption.  The peers DO renegotiate,
but they perform a full handshake if either side doesn't want to resume
a previous session.

Mike