Re: [TLS] draft-ietf-tls-renegotation: next

David-Sarah Hopwood <david-sarah@jacaranda.org> Fri, 18 December 2009 05:26 UTC

Return-Path: <djhopwood@googlemail.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 79D103A68D2 for <tls@core3.amsl.com>; Thu, 17 Dec 2009 21:26:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[AWL=0.000, 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 OIN1NF44APnZ for <tls@core3.amsl.com>; Thu, 17 Dec 2009 21:26:54 -0800 (PST)
Received: from ey-out-2122.google.com (ey-out-2122.google.com [74.125.78.27]) by core3.amsl.com (Postfix) with ESMTP id AC4D93A6887 for <tls@ietf.org>; Thu, 17 Dec 2009 21:26:53 -0800 (PST)
Received: by ey-out-2122.google.com with SMTP id 9so734865eyd.51 for <tls@ietf.org>; Thu, 17 Dec 2009 21:26:36 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :x-enigmail-version:content-type; bh=ZzqDfdEILsl1hnTUJvi8R3QZOAoiA7MOJBBsmzv9tAg=; b=Pdm6yKcxEQjAxHvq5cH4zMCwQuochIAps/id2DTHAzSQUK9OmItvgcz+N6r2Dqww+6 0v8p/+t/8OTpr9WFCYXG79ylMHuufzdcnYAd1iQMPQaoFr4EGv5xiKUAAyfFa+VK8CV8 QsBPzzjG1etUtMtWeNKEmeUzmNYU/OrpToBxc=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:x-enigmail-version:content-type; b=syWeqLbx1nklul+3YAYoFZxCfvMo8u9Id0oK2bCTgF1fQyYcJlUKA59RIcuF0E6KLf D4BQtXq8kXMmWkHdwLo31U6L9lBaSFkjCGtcsZkQVeAd6Qzcq3rbsALZnDRA5EavQtI1 EQ73FtpWXKzoBHx5PLPW7j26gPcE9PFYD9Krc=
Received: by 10.213.50.69 with SMTP id y5mr4029196ebf.48.1261113995983; Thu, 17 Dec 2009 21:26:35 -0800 (PST)
Received: from ?192.168.0.2? (5e058d2d.bb.sky.com [94.5.141.45]) by mx.google.com with ESMTPS id 13sm1712402ewy.1.2009.12.17.21.26.33 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 17 Dec 2009 21:26:34 -0800 (PST)
Sender: David-Sarah Hopwood <djhopwood@googlemail.com>
Message-ID: <4B2B124E.3030907@jacaranda.org>
Date: Fri, 18 Dec 2009 05:25:34 +0000
From: David-Sarah Hopwood <david-sarah@jacaranda.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-GB; rv:1.8.1.3) Gecko/20070326 Thunderbird/2.0.0.0 Mnenhy/0.7.5.666
MIME-Version: 1.0
To: tls@ietf.org
References: <200912162001.nBGK1K4I028293@stingray.missi.ncsc.mil> <200912162059.nBGKx7Sv017923@fs4113.wdf.sap.corp> <808FD6E27AD4884E94820BC333B2DB774F31F777D1@NOK-EUMSG-01.mgdnok.nokia.com> <6b9359640912171455j4c949defu25b5ad79348197da@mail.gmail.com>
In-Reply-To: <6b9359640912171455j4c949defu25b5ad79348197da@mail.gmail.com>
X-Enigmail-Version: 0.96.0
Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="------------enigFF7D68A4638108FFE67DC10A"
Subject: Re: [TLS] draft-ietf-tls-renegotation: next
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: Fri, 18 Dec 2009 05:26:55 -0000

Kyle Hamilton wrote:
> Also, it is illegal for any TLS implementation to negotiate
> NULL-NULL-NULL, and it is illegal for any TLS implementation to
> transmit application data after the initial handshake has been
> initiated and before the Finished messages have been generated by both
> sides.
> 
> This would suggest that another mitigation for this attack would be to
> include a zero-length application-data packet in all renegotiations;
> if one side thinks it's an initial negotiation, and it receives an
> application data packet under the state that it thinks is
> NULL-NULL-NULL, it is required that it close the connection with a
> fatal handshake_failure alert.
> 
> (The only problem with this potential mitigation is that if the client
> is connected to the MITM, and the MITM is connected to the server, the
> MITM could simply strip out the zero-length application-data chunk,
> since TLS relies on underlying mechanisms to verify that it has a
> two-way error-detected/corrected clear channel -- TCP/IP, SPX/IPX, a
> clean serial line, or an MNP5 modem.  TLS doesn't try to detect lost
> chunks from the server.)

Unfortunately, this problem is a fatal objection to what was otherwise
a very interesting idea:

 - If the extra record is sent before the ChangeCipherSpec of a
   renegotiating handshake, then the attacker can strip it out
   (because it won't be included in the handshake_messages,
   and it doesn't affect the sequence number of messages after the
   ChangeCipherSpec, which resets the sequence number to zero).

 - If the extra record is sent after the ChangeCipherSpec but
   before the Finished message, then (by my reading) the receiving
   peer MUST treat this as a fatal error regardless of whether it
   believed the handshake was initial or renegotiating.

-- 
David-Sarah Hopwood  ⚥  http://davidsarah.livejournal.com