Re: [TLS] Thoughts on Version Intolerance
mrex@sap.com (Martin Rex) Wed, 20 July 2016 17:30 UTC
Return-Path: <mrex@sap.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C6CE812D8E7 for <tls@ietfa.amsl.com>; Wed, 20 Jul 2016 10:30:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.922
X-Spam-Level:
X-Spam-Status: No, score=-6.922 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 wz6-BShSEnK0 for <tls@ietfa.amsl.com>; Wed, 20 Jul 2016 10:30:30 -0700 (PDT)
Received: from smtpde01.smtp.sap-ag.de (smtpde01.smtp.sap-ag.de [155.56.68.170]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9896112D8DE for <tls@ietf.org>; Wed, 20 Jul 2016 10:30:30 -0700 (PDT)
Received: from mail06.wdf.sap.corp (mail06.sap.corp [194.39.131.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtpde01.smtp.sap-ag.de (Postfix) with ESMTPS id 3rvkT0278vz1HXs; Wed, 20 Jul 2016 19:30:28 +0200 (CEST)
X-purgate-ID: 152705::1469035828-0000299C-09F29E2A/0/0
X-purgate-size: 3132
X-purgate: clean
X-purgate: This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de
X-purgate-type: clean
X-SAP-SPAM-Status: clean
Received: from ld9781.wdf.sap.corp (ld9781.wdf.sap.corp [10.21.82.193]) by mail06.wdf.sap.corp (Postfix) with ESMTP id 3rvkSz4lrQzkvlx; Wed, 20 Jul 2016 19:30:27 +0200 (CEST)
Received: by ld9781.wdf.sap.corp (Postfix, from userid 10159) id 9BC3D1A504; Wed, 20 Jul 2016 19:30:27 +0200 (CEST)
In-Reply-To: <7776970.MmWSFEWlvc@pintsize.usersys.redhat.com>
To: Hubert Kario <hkario@redhat.com>
Date: Wed, 20 Jul 2016 19:30:27 +0200
X-Mailer: ELM [version 2.4ME+ PL125 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="US-ASCII"
Message-Id: <20160720173027.9BC3D1A504@ld9781.wdf.sap.corp>
From: mrex@sap.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/CZQCVkKz-9_a1TvbzD_mhYf3tS4>
Cc: tls@ietf.org
Subject: Re: [TLS] Thoughts on Version Intolerance
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: mrex@sap.com
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: <https://mailarchive.ietf.org/arch/browse/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, 20 Jul 2016 17:30:36 -0000
Hubert Kario wrote: > Martin Rex wrote: >> >> Forget TLS extensions, forget ClientHello.client_version. >> Both in fundamentally broken, and led to Web Browsers coming up >> with the "downgrade dance" that is target&victim of the POODLE attack. >> >> We know fairly reliably what kind of negotiation works just fine: >> TLS cipher suite codepoints. > > please re-read my mail, they don't: > > 49% (6240) are intolerant to a Client Hello with no extensions but > big number of ciphers that bring its size to 16388 bytes) > 91.5% (11539) are intolerant to a Client Hello with no extensions > but a number of ciphers that bring it well above single record layer limit > (16.5KiB) You're seriously confusing things here. Any ClientHello with > 200 Cipher suite code points indicates fairly insane Client behaviour, so rejecting it is _perfectly_sane_ server behaviour. Trying to support theoretical encoding size limits is a stupid idea, because it leads to endless security problems. Imposing sane sizes plus a safety margin is solid implementation advice. Large stuff that doesn't need to be exchanged in abbreviated handshakes should *NEVER* be included in ClientHello, because of the performance penalties this creates (Network bandwidth for TLS handshake, and TCP slow start). > >>> I'm now also collecting some data and have some preliminary >>> suspicion on affected devices. My numbers roughly match yours that we >>> are in the more or less 3% area of 1.3 intolerance. >> >> The TLSv1.2 version intolerance is already a huge problem, >> and I'm not seeing it go away. Acutally Microsoft created an >> awfully large installed base of TLSv1.2-intolerant servers >> (the entire installed base of Win7 through Win8.1 aka 2008R2, 2012, 2012R2). Please recheck with a vanilla (aka extension-free) ClientHello that has ClientHello.client_version = (3,3), to recognize all TLSv1.2-intolerant implementations in your counts. >> >> I would really like to see the TLS WG improving the situation >> rather than keep sitting on its hands. The problem has been well-known >> since 2005. And the "downgrade dance" was a predictably lame approach >> to deal with the situation, because it completely subverts/evades the >> cryptographic protection of the TLS handshake. > > it's not IETF's fault that the implementers add unspecified by IETF > restrictions and limitations to parsers of Client Hello messages or that > they can't handle handshake messages split over multiple record layer > messages, despite the standard being very explicit in that they MUST > support this. Nope, not really. Limiting PDU sizes to reasonably sane sizes is perfectly valid behaviour. X.509v3 certificates can theoretically include CAT MPEGs and amount to megabytes. A TLS implementation that limits the certificate chain (i.e. the TLS Certificate Handshake message) to a reasonably sane size with safety margin, say 32 KBytes in total, is acting totally reasonable. Anyone who creates an insane PKI deserves to loose, and deserves to loose quite badly. -Martin
- [TLS] Client Hello size intolerance Was: Re: Thou… Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Yuhong Bao
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Ivan Ristić
- Re: [TLS] Thoughts on Version Intolerance Yuhong Bao
- Re: [TLS] Thoughts on Version Intolerance Yuhong Bao
- Re: [TLS] Thoughts on Version Intolerance David Benjamin
- Re: [TLS] Thoughts on Version Intolerance Brian Smith
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Peter Gutmann
- Re: [TLS] Thoughts on Version Intolerance Ilari Liusvaara
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance David Benjamin
- Re: [TLS] Thoughts on Version Intolerance Watson Ladd
- Re: [TLS] Thoughts on Version Intolerance Martin Rex
- Re: [TLS] Thoughts on Version Intolerance Benjamin Kaduk
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Watson Ladd
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Kyle Rose
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance Martin Rex
- Re: [TLS] Thoughts on Version Intolerance Hanno Böck
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- Re: [TLS] Thoughts on Version Intolerance David Benjamin
- Re: [TLS] Thoughts on Version Intolerance Ilari Liusvaara
- Re: [TLS] Thoughts on Version Intolerance Hubert Kario
- [TLS] Thoughts on Version Intolerance Hanno Böck
- Re: [TLS] Client Hello size intolerance Was: Re: … David Benjamin
- Re: [TLS] Client Hello size intolerance Was: Re: … Hubert Kario
- Re: [TLS] Client Hello size intolerance Was: Re: … Brian Smith
- Re: [TLS] Thoughts on Version Intolerance Dave Garrett
- Re: [TLS] Thoughts on Version Intolerance Ilari Liusvaara