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

Bodo Moeller <bmoeller@acm.org> Wed, 05 November 2014 08:54 UTC

Return-Path: <SRS0=YCei=73=acm.org=bmoeller@srs.kundenserver.de>
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 555511A87F0 for <tls@ietfa.amsl.com>; Wed, 5 Nov 2014 00:54:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.522
X-Spam-Level:
X-Spam-Status: No, score=-1.522 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HELO_EQ_DE=0.35, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.594, SPF_PASS=-0.001] autolearn=no
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 eeScswY4BWpj for <tls@ietfa.amsl.com>; Wed, 5 Nov 2014 00:54:07 -0800 (PST)
Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.126.131]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A99931A87EF for <tls@ietf.org>; Wed, 5 Nov 2014 00:54:06 -0800 (PST)
Received: from mail-ob0-f181.google.com (mail-ob0-f181.google.com [209.85.214.181]) by mrelayeu.kundenserver.de (node=mreue002) with ESMTP (Nemesis) id 0LlMaV-1YMN6C34Mx-00bMdD; Wed, 05 Nov 2014 09:54:04 +0100
Received: by mail-ob0-f181.google.com with SMTP id uy5so217692obc.12 for <tls@ietf.org>; Wed, 05 Nov 2014 00:54:01 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.60.80.231 with SMTP id u7mr47850156oex.27.1415177641609; Wed, 05 Nov 2014 00:54:01 -0800 (PST)
Received: by 10.60.32.42 with HTTP; Wed, 5 Nov 2014 00:54:01 -0800 (PST)
In-Reply-To: <20141029202745.9CB281AF69@ld9781.wdf.sap.corp>
References: <CADMpkcLLOrUQMxbeCW7RB+Gf12Ux_wK_eotKdbH0RMpeuaptfQ@mail.gmail.com> <20141029202745.9CB281AF69@ld9781.wdf.sap.corp>
Date: Wed, 05 Nov 2014 09:54:01 +0100
Message-ID: <CADMpkcJatXy2=TadWAq6ND2O5f=-Y=RebJYHC1bw=bTXf8Zc3Q@mail.gmail.com>
From: Bodo Moeller <bmoeller@acm.org>
To: "tls@ietf.org" <tls@ietf.org>
Content-Type: multipart/alternative; boundary="089e013cc0549f6a77050718b80b"
X-Provags-ID: V02:K0:uaHvguqnMUFAtKqpEgOBjlrMhqEqp4ywLarftFuIJNC fwDKX0HyaKUXBJOmQYbI7W2+EfglIbKJDeLTTR78zX0hy+ZS4E wQ99q2QuLzPilBMYAgIgrJLUmRpX2wRSTzvu2Mcc/J5kepJmnW RmmxxBySkCpKumXuTxGMRPIo7vJ9vbsnHCPJJdQam1APt0mEoB /J1J2d4nFlIicGFZUlOZDGqTm7KJeHheiaVSdTuZGNAW++YeHT Kg+Jhz0wiL5eYi1v/bsIBKvLJUS6N5/rMHgJJT1JkI1OD3R8jj sPDHSOvvWT2/lTZYjFgKqJA73/WRyWKocjWFwQVk8oRWL7j7gy PGbIPdwpCLhy1VwRKM2sGrtBzV2+i0M4+XanOGEtZzcievkZrh ZtV+/WcJowcXtQXcvaTVk3/3rc+rGTjLLoEkZH3sjX/214Td1o MDahx
X-UI-Out-Filterresults: notjunk:1;
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/kjSNvqJ1NgP2KD1n8eYKet2aw6g
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: Wed, 05 Nov 2014 10:11:34 -0000

Martin Rex <mrex@sap.com>:

> Bodo Moeller wrote:
>


> > Continuing the handshake would not require any app-level changes to
> Servers
> > > that have not been writing fatal SSL alerts to the network before
> > > connection closure in the past, such as Microsoft IIS, so clients
> > > with fallback heuristics will be in a *MUCH* better position to
> > > recognize and distinguish accidental network glitches or connection
> > > management bugs from attacks.  I expect the false positives to
> > > outnumber attacks by at least three orders of magnitudes.
>


> > If there's an *actual* attack and the client doesn't continue with the
> > connection, the attacker can suppress alert details anyway. The alert (if
> > it gets through) is useful for heuristics; the only definitive protection
> > is from making sure that the client and server won't exchange application
> > data.
>


> I believe we're still talking past each other.
>
> It will be impossible to protect the handshakes between two TLS peers
> where one of them does not know about the FALLBACK_SCSV.
>
> We're discussing purely the situation where _both_ sides are patched.
>

Right. I was commenting on your remark about distinguishing non-attacks
from attacks: this is never reliably possible, because the attacker could
make its behavior look like network glitches.



> If instead, the server includes a ServerHelloExtension when recognizing
> the Fallback SCSV, then the client will have *MUCH* better information
> available to make sensible risk management:

[...]

> It's up to you / the WG to decide what the contents / semantics of
> such a ServerHelloExtension should be, i.e. whether the presence
> of the extension is a simple Boolean with a meaning closer to
> the currently suggested fatal alert (i.e. an encouragement for the
> client to abort and reconnect), or whether there should be a more
> fine grained response, such as a structure that conveys the highest
> protocol version of the server, whether the TLS server understands
> and would appreciate TLS extensions or even a list of TLS extensions
> that the server would _really_ like to see (such as ECC, SNI, ...)
> or whether the server would really appreciate being offered
> a larger variety of TLS cipher suites.
>

I think this would amount to over-engineering (and due to that,
unnecessarily delaying) the fix.

With a well-functioning (version-tolerant!) server, there won't be fallback
retries, except those caused by network glitches. For those, having the
(necessarily unauthenticated) network glitch eventually result in an (also
unauthenticated) fatal inappropriate_fallback alert shouldn't be
problematic. Continuing with the handshake to authenticate a
ServerHelloExtension that tells you more about the problem will make both
parties spend more time and computational effort before they abort the
connection, with little gain.

Bodo