Re: [TLS] Verify data in the RI extension?

Michael D'Errico <mike-list@pobox.com> Sat, 28 November 2009 19:31 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 16B123A6901 for <tls@core3.amsl.com>; Sat, 28 Nov 2009 11:31:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.511
X-Spam-Level:
X-Spam-Status: No, score=-2.511 tagged_above=-999 required=5 tests=[AWL=0.088, 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 EKdwuEzMibNL for <tls@core3.amsl.com>; Sat, 28 Nov 2009 11:31:42 -0800 (PST)
Received: from sasl.smtp.pobox.com (a-pb-sasl-sd.pobox.com [64.74.157.62]) by core3.amsl.com (Postfix) with ESMTP id 33C553A68D0 for <tls@ietf.org>; Sat, 28 Nov 2009 11:31:40 -0800 (PST)
Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id E77CBA2595 for <tls@ietf.org>; Sat, 28 Nov 2009 14:31:33 -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=YVxVd9dWqVmy HkyMBcPi2aQPiNA=; b=eZPo4hlY+enJcu+tRLFjZ1EHkDGkNHjtR7Y4ijmUHLIZ 5rF8kX28OuxK4uUQ7smxzYrEgFUAVTBTjs/8pvV8/kTp3cHdiHrtJHOyi5YmRDfY MYSmvwIw+FYodagx6WZI1Nhv6eUHIHb9II6P2oqr4YfxbXHjv1xRu6ZNqaZcr60=
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=utCazN dEQzBjRz6GEiQtsYcRm0W7kygGyvSFYLPWwn0m3lGmuG5sBeScFqTMumj31vEy5V EQvgwHP2mDg/uT5Yg7D/9pzqJwTi/m/Pa69OfihqPR4/H92iogM6YP99Bsfwfonc +L/r+02tsqfpAqr6ffdkYi4BzrLpi1xVhAwUw=
Received: from a-pb-sasl-sd.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id E2AE5A2593 for <tls@ietf.org>; Sat, 28 Nov 2009 14:31:33 -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-sd.pobox.com (Postfix) with ESMTPSA id 953EAA2592 for <tls@ietf.org>; Sat, 28 Nov 2009 14:31:33 -0500 (EST)
Message-ID: <4B117AF2.20703@pobox.com>
Date: Sat, 28 Nov 2009 11:33:06 -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: <9923D81D-BABA-4897-A0E3-6938FFB70045@checkpoint.com> <C7355261.6BB2%stefan@aaa-sec.com> <20091127151113.BDEF16C3795@kilo.networkresonance.com> <4B10E225.4010501@jacaranda.org>
In-Reply-To: <4B10E225.4010501@jacaranda.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Pobox-Relay-ID: A310FC16-DC54-11DE-BE05-EF34BBB5EC2E-38729857!a-pb-sasl-sd.pobox.com
Subject: Re: [TLS] Verify data in the RI extension?
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, 28 Nov 2009 19:31:43 -0000

David-Sarah Hopwood wrote:
> Eric Rescorla wrote:
>> I also share [David-Sarah] Hopwood's concern about ambiguity in the handshake
>> hashes stream created by having data which is not properly formatted
>> injected into the hash
>> (http://www.ietf.org/mail-archive/web/tls/current/msg04857.html),
>> so I don't think the particular approach in Martin's draft is
>> really satisfactory.
> 
> That potential weakness can be avoided by encoding the data to be added
> into the hash as follows:
> 
>    struct {
>        enum { fake_finished(20) } fake_handshake_type;
>        enum { zero(0), (2^24-1) } fake_length;
>        opaque previous_client_verify_data<12..255>;
>        opaque previous_server_verify_data<12..255>;
>    } PreviousVerifyData;

I like the direction this is going, but think that using a length of
zero doesn't quite patch the potential weakness.  So instead of zero,
why not use 0xFFFFFF?  An attack would require that a 16MB Finished
message be ignored.

Mike