Re: [TLS] Working Group Last Call for draft-ietf-tls-downgrade-scsv-00

Andrey Jivsov <crypto@brainhub.org> Sun, 26 October 2014 03:35 UTC

Return-Path: <crypto@brainhub.org>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 230601A3B9D for <tls@ietfa.amsl.com>; Sat, 25 Oct 2014 20:35:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YKv6LFid6ZVz for <tls@ietfa.amsl.com>; Sat, 25 Oct 2014 20:35:33 -0700 (PDT)
Received: from resqmta-po-04v.sys.comcast.net (resqmta-po-04v.sys.comcast.net [IPv6:2001:558:fe16:19:96:114:154:163]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8B86A1A1F20 for <tls@ietf.org>; Sat, 25 Oct 2014 20:35:33 -0700 (PDT)
Received: from resomta-po-13v.sys.comcast.net ([96.114.154.237]) by resqmta-po-04v.sys.comcast.net with comcast id 7fbK1p00457bBgG01fbY11; Sun, 26 Oct 2014 03:35:32 +0000
Received: from [192.168.1.2] ([71.202.164.227]) by resomta-po-13v.sys.comcast.net with comcast id 7fbV1p0034uhcbK01fbVeV; Sun, 26 Oct 2014 03:35:32 +0000
Message-ID: <544C6C00.3070903@brainhub.org>
Date: Sat, 25 Oct 2014 20:35:28 -0700
From: Andrey Jivsov <crypto@brainhub.org>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.1
MIME-Version: 1.0
To: Brian Smith <brian@briansmith.org>
References: <2112FCAD-4820-49D9-9871-6501C83A554D@cisco.com> <5449E969.9000800@brainhub.org> <CADMpkc+cLJNMYZb4OqukM7qT1aPsqEmCF0JxOyuLYe=78BEcgQ@mail.gmail.com> <544AB4B4.2010305@brainhub.org> <CADMpkc+cku0G6SKs7ZX6oHidiP2X8x8KfB9+E7mjYcNDXrPw9w@mail.gmail.com> <544B5764.9020006@brainhub.org> <CABkgnnVcNgC0SXFkfLYJHyxWe0uxDDShfgPgH=JmmTv0KVQhpg@mail.gmail.com> <544B5D82.2080900@brainhub.org> <CADMpkcLzXV0P8uyoL7F=o3fMUkaJwWZUF7+fBoGYaBri1DgDcg@mail.gmail.com> <544BFCED.9080904@brainhub.org> <CAFewVt4=uBP-J0WJyppph_BzbdEsTHw63BF9XrrHNfqUwapvSg@mail.gmail.com>
In-Reply-To: <CAFewVt4=uBP-J0WJyppph_BzbdEsTHw63BF9XrrHNfqUwapvSg@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20140121; t=1414294532; bh=NPMoKAR87VFtScrflnU+BVXPcdKuGgSOtduFwXYDfWQ=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=DBJFi27dPocSf0NedobVXJNKAjpRhYDBkCjIaXONItUK8UT7A9OtRaQLvgXBuKSo9 0B4tU/6QuVZ4poh6cW9/X3Y3jd3gG7rxYpE5KSbXJRX6K4NB/8qVwvGhWLDFlNttHh zk9yE/OL6e4MZQFp+CM7fncblkGDq9z7XYsyvE+zWPQbHI6v2n7rtEZy7KdkyL30w2 38OKpJW6hpIRtTdSMao4YW3ULREeMDtDYS9lXoutlWb8jInbzKz7vLMeUvr9hrYuCj IiIP2ajpXQpjAxGP3fpIoToNFzlfB4fEhzU3N0tcT6Hx+zsvtWN8wK0kwT+SfXY08L Vk+IBnQcuyI0w==
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/KnbCieOv1_lGo-OszcDpYCUMUA0
Cc: "<tls@ietf.org>" <tls@ietf.org>
Subject: Re: [TLS] Working Group Last Call for draft-ietf-tls-downgrade-scsv-00
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
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/options/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: Sun, 26 Oct 2014 03:35:38 -0000

On 10/25/2014 01:52 PM, Brian Smith wrote:
> On Sat, Oct 25, 2014 at 12:41 PM, Andrey Jivsov <crypto@brainhub.org
> <mailto:crypto@brainhub.org>> wrote:
>
>     what you are saying is that the set of ciphers that can be
>     negotiated with TLS1.2 must be a superset of the ciphers that can be
>     negotiated with TLS1.1 in any server configuration, and so on to SSL 3.0
>
>
> No. The set of ciphers that can be negotiated with TLS 1.2 must overlap
> with the set of ciphers that clients offer in their TLS 1.2 handshake.

I was talking about the way ciphers are structured on the server, but I 
think we agree because you accept the below "table" and use the word 
"overlap" (as oppose to superset).

>
>     I am not sure that this will always be possible. Let's say I must
>     offer RC4-MD5 for legacy products that only support SSL 3.0.
>
>     I think it would be more secure to offer
>
>        TLS1.2: X, Y
>        TLS1.1: X
>        TLS1.0: X
>        SSL3.0: X, RC4-MD5
>
>
> That seems OK to me. You just need to make sure that X is offered by all
> the clients you want to support that support TLS_FALLBACK_SCSV and that
> don't support TLS 1.2, and that at least one of {X, Y}  is supported by
> by all TLS-1.2-capable clients that support TLS_FALLBACK_SCSV.
> (Approximately.)

Let's wait with TLS_FALLBACK_SCSV for a minute :-).

To be even more specific, let's simplify the above a bit:

        TLS1.2: X, Y
        TLS1.1: X
        TLS1.0: X
        SSL3.0: RC4-MD5

( SSL3.0 has only RC4-MD5, and RC4-MD5 is not in X or Y. )

If you accept that this is allowed on the server, for the purpose of the 
draft what's the server's maximum protocol version?

1. TLS1.2
2. runtime-dependent, the highest version that a given ClientHello and 
server's set of ciphersuites can possibly negotiate (e.g. ClientHello 
containing only RC4-MD5 --> SSL3.0).

Certainly, the server max. version is TLS1.2 is the simplest of two. 
However, this results in odd behaviour when the server is required to 
fail fallback handshakes with versions that are more secure than it 
could negotiate if TLS_FALLBACK_SCSV was not present.

Example, using the above table:

ClientHello: TLS1.1+RC4-MD5+TLS_FALLBACK_SCSV
Server: MUST fail

v.s.

ClientHello: TLS1.1+RC4-MD5
Server: negotiates SSL3.0+RC4-MD5

Had it been SHOULD fail for the server, the server could have noticed 
that this is not a downgrade that harms the security and allowed the 
handshake to continue.