Re: [TLS] Update spec to match current practices for certificate chain order

Peter Gutmann <pgut001@cs.auckland.ac.nz> Sat, 09 May 2015 12:55 UTC

Return-Path: <pgut001@cs.auckland.ac.nz>
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 5B7E71ACD0B for <tls@ietfa.amsl.com>; Sat, 9 May 2015 05:55:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.011
X-Spam-Level:
X-Spam-Status: No, score=-0.011 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, T_RP_MATCHES_RCVD=-0.01] 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 SfHZWSrUQkNo for <tls@ietfa.amsl.com>; Sat, 9 May 2015 05:55:47 -0700 (PDT)
Received: from mx4.auckland.ac.nz (mx4.auckland.ac.nz [130.216.125.248]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A07D21ACD0A for <tls@ietf.org>; Sat, 9 May 2015 05:55:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=auckland.ac.nz; i=@auckland.ac.nz; q=dns/txt; s=uoa; t=1431176146; x=1462712146; h=from:to:subject:date:message-id: content-transfer-encoding:mime-version; bh=UqqTucPR4zWkWNvb2yN1sf4RaSX07YD58lp8+SXZvxc=; b=c06u6O+TMNGykglPBc8ek8GxQQWQ5If4q9wEMtgv3cAQYqJjbNRnHCpj gnGY8Ngi3WrZX2rIZliL0SvBEEwcgk1XCushOllOvOfBKi6G2C6x1phSn zjj8UlUwMaIrUwdozY/fBSzlJTnLJzQ/weDH1y1dJLTCOy1+vjH72o7Tb 8=;
X-IronPort-AV: E=Sophos;i="5.13,396,1427713200"; d="scan'208";a="3892852"
X-Ironport-HAT: MAIL-SERVERS - $RELAYED
X-Ironport-Source: 130.216.4.112 - Outgoing - Outgoing
Received: from uxchange10-fe1.uoa.auckland.ac.nz ([130.216.4.112]) by mx4-int.auckland.ac.nz with ESMTP/TLS/AES128-SHA; 10 May 2015 00:55:44 +1200
Received: from UXCN10-TDC05.UoA.auckland.ac.nz ([169.254.9.151]) by uxchange10-fe1.UoA.auckland.ac.nz ([130.216.4.112]) with mapi id 14.03.0174.001; Sun, 10 May 2015 00:55:43 +1200
From: Peter Gutmann <pgut001@cs.auckland.ac.nz>
To: "<tls@ietf.org>" <tls@ietf.org>
Thread-Topic: [TLS] Update spec to match current practices for certificate chain order
Thread-Index: AdCKV3UzODUTUzO2QVicmec9zXDrZw==
Date: Sat, 09 May 2015 12:55:42 +0000
Message-ID: <9A043F3CF02CD34C8E74AC1594475C73AB019AE1@uxcn10-tdc05.UoA.auckland.ac.nz>
Accept-Language: en-NZ, en-GB, en-US
Content-Language: en-NZ
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [130.216.158.4]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/hsNsVasAcgN59uYBL_hUkM7pY1M>
Subject: Re: [TLS] Update spec to match current practices for certificate chain order
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: Sat, 09 May 2015 12:55:51 -0000

Martin Rex <mrex@sap.com> writes:

>A TLS client should not know or care about the hostname of the server it is
>talking to, and there is no requirement what kind of stuff is contained in
>the server's certificate.

Which is far too true, unfortunately, particularly among Android and iOS apps,
as recent research (e.g. "Why Eve and Mallory Love Android: An Analysis of
Android SSL (In)Security" and "The most dangerous code in the world:
validating SSL certificates in non-browser software") has pointed out.  Still,
not caring whether the supposed www.bankofamerica.com presents a cert for
www.qwertyuiop.com doesn't strike me as a sound security strategy.

>Our TLS client does _not_ know the server's hostname (it gets a connected
>socket).

So it's like all the insecure Android and iOS apps?

>I find it quite appalling how many broken TLS implementations out there fail
>to properly encode an ordered list of certificates into the Certificate
>handshake message.

That's really small beans compared to the huge numbers of apps that don't care
about what they're connecting to, one's a trivial (and arguably irrelevant)
protocol violation, the other is reducing the security of the TLS handshake to
anon-DH [0].

Peter.

[0] Whether browser PKI as currently practiced is much better than anon-DH to
    begin with is a debate for a different mailing list :-).