Re: [TLS] Quest for Unified Solution to TLS Renegotiation

David-Sarah Hopwood <david-sarah@jacaranda.org> Thu, 26 November 2009 06:56 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 F152D3A677E for <tls@core3.amsl.com>; Wed, 25 Nov 2009 22:56:11 -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 di2r0Y1Ck-dr for <tls@core3.amsl.com>; Wed, 25 Nov 2009 22:56:11 -0800 (PST)
Received: from mail-ew0-f214.google.com (mail-ew0-f214.google.com [209.85.219.214]) by core3.amsl.com (Postfix) with ESMTP id 99D293A69E2 for <tls@ietf.org>; Wed, 25 Nov 2009 22:56:10 -0800 (PST)
Received: by ewy6 with SMTP id 6so472798ewy.29 for <tls@ietf.org>; Wed, 25 Nov 2009 22:56:02 -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=nfHBQ2f+PXMXqtvetl57DgBfVW3j3wsV+nZ82429xf4=; b=Uvagr5U2HQ+VR/anoJmkb7dgd/+bLCw+InMyx6OQqa61i+nLTFw7+tL3ZL1Y8nhJ7X mkEgnESSc93q5UC8SliCST3jONtVpmiFPgu6D8tmVYJ8RS4ciyOKZLrmT+XAPl58y8yq 56VhFuI/yRT2dVYpA+53brbe+xKbh4XA+6yhc=
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=kD6HeZknU9vDiFoUWbcl2Z8mBGjYnFflPrmXUN5w04cjlmmg9eCze9VORXBVvFpoiS wKzcMB4GffodYsRJ5tExM/pXyhuf41ltwsyNMyoYqYznhAq2vf8VvllO8syAJ4r7devq EODanmQD3iOaovsv2G2Bk5SZBecFMxuQjuAGA=
Received: by 10.213.23.201 with SMTP id s9mr2431274ebb.15.1259218560424; Wed, 25 Nov 2009 22:56:00 -0800 (PST)
Received: from ?192.168.0.2? (5adcc5d2.bb.sky.com [90.220.197.210]) by mx.google.com with ESMTPS id 15sm192851ewy.0.2009.11.25.22.55.59 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 25 Nov 2009 22:55:59 -0800 (PST)
Sender: David-Sarah Hopwood <djhopwood@googlemail.com>
Message-ID: <4B0E267F.1080102@jacaranda.org>
Date: Thu, 26 Nov 2009 06:55:59 +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: <200911260550.nAQ5oID8027283@fs4113.wdf.sap.corp>
In-Reply-To: <200911260550.nAQ5oID8027283@fs4113.wdf.sap.corp>
X-Enigmail-Version: 0.96.0
Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="------------enig2AA0730617BCB0D940917CD2"
Subject: Re: [TLS] Quest for Unified Solution to TLS Renegotiation
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: Thu, 26 Nov 2009 06:56:12 -0000

Martin Rex wrote:
> David-Sarah Hopwood wrote:
>> The old verify_data should not just be appended to the handshake_messages
>> without any further encoding, though, because it might match the bytes
>> of some valid handshake message. In that case, there is the possibility
>> that a MITM might insert the old verify_data into the stream sent to
>> one peer, as though it were a handshake message. If that peer is using
>> the unmodified Finished computation (either because it is unpatched or
>> it is doing an initial handshake), then it may end up computing the same
>> Finished hash as the other peer that is using the modified computation.
>>
>> I haven't gone through the details of this attack thoroughly enough
>> to be sure it will work, but it is too near working for comfort.
> 
> There are no handshake messages after finished.

That's not relevant.

> You forgot the signaling in the ServerHello and ClientHello
> that is also covered by the handshake message hash.

It appears that
<http://www.ietf.org/id/draft-mrex-tls-secure-renegotiation-01.txt>
is indeed not vulnerable, because of the requirement that allow_old_renego
MUST be set to false when the peer is found not to be updated. Previous
summaries of the proposal on the list were not clear about this; they
implied that updating the finished hash would automatically make
renegotiations with an unupdated peer fail.

Note, however, that (unless it is changed as I suggested) this
contradicts one of the claimed advantages over RI.

> the verify_data should be added directly following ServerHello.

Yes, that's where the attacker would send it. (You may have been
confused by my choice of the word "appended"; I meant "appended at
the point where the it is known that the new Finished computation
will be used".)

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