Re: [TLS] Suspicious behaviour of TLS server implementations

Martin Thomson <martin.thomson@gmail.com> Sat, 10 September 2016 10:38 UTC

Return-Path: <martin.thomson@gmail.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 9F3BB12B0E9 for <tls@ietfa.amsl.com>; Sat, 10 Sep 2016 03:38:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 eiK7K3uJcEJF for <tls@ietfa.amsl.com>; Sat, 10 Sep 2016 03:38:53 -0700 (PDT)
Received: from mail-qt0-x22d.google.com (mail-qt0-x22d.google.com [IPv6:2607:f8b0:400d:c0d::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BA8BA12B004 for <tls@ietf.org>; Sat, 10 Sep 2016 03:38:53 -0700 (PDT)
Received: by mail-qt0-x22d.google.com with SMTP id 11so52632479qtc.0 for <tls@ietf.org>; Sat, 10 Sep 2016 03:38:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=azYQKmLIpklpMW0bUJ6ZehF3O6rIZBn/ukjqBfKdjjs=; b=aG/0CP7pC+uL/D21iay7SxCvm9ONg758a42FZbdUE/6s5buZbE/KRS1wFl1IfQT05e X0WLH6m0tVY0oQsvX9/s7lyjvBAWR/tPmiPCBMea3cljFmu3bED0N5PvMXTByN1J8HxI M57m2eHSdXkW1TPCGTR0LPHSCQ8O49KPZ0A8UZgSkh4N58eIaPHWsgjWYRFgKnf4nhB7 tFO89eqeD1jtRfdNM3C5airFlFNRV8Wcfzn+bi/Eu8t572drPhd7R8NPU3ACvqW7YemY T9cAUDESMt3ttV6gmzp3I84fZSbI5ITlQHVLoTpdHhUQQ0sqIwiixXa1bMrPGsWhHPMp +24g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=azYQKmLIpklpMW0bUJ6ZehF3O6rIZBn/ukjqBfKdjjs=; b=maW0IxvJdMVBmHqtTEqERpfSh7/P7TS/YcfhbefdEgbB3J4dX35YecNqQUVcW+uel9 KWzqv3vZZaTIyiU4rZv+87GxJTnsC99LIW3NLDBu1hnvrYJqY19nKwIniZPYJWivMiwK 7SEjDa+uvPZtxMXby7xXrkR9UmGRPnHzG7duF6n1xad7ThzIPoM+SqrkM6eDcU1xSkfB zfWzj5p/fvFdjdPkQgDNpQqM1/yrjP0bmG80rYOoMJYzjbKXeCMiwDE/8DpuI7/5c4I+ IlWiEj5SG1RPgBtamr2391n1nZdNOx1jvaYIoBqH2dtZlZaLfQ0ndqyNvdI2ORxojtT9 eK0g==
X-Gm-Message-State: AE9vXwOhqchlvjzaGm7rt61vVVl7BWK0MoXY4c5OvP0LmHFO1trtACojM5eBPThvHAFtbCK5I5u7N3Zf2cIB+A==
X-Received: by 10.237.37.106 with SMTP id w39mr6825814qtc.16.1473503932882; Sat, 10 Sep 2016 03:38:52 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.140.22.146 with HTTP; Sat, 10 Sep 2016 03:38:52 -0700 (PDT)
In-Reply-To: <57D2E218020000AC0011B17E@gwia2.rz.hs-offenburg.de>
References: <57D2E218020000AC0011B17E@gwia2.rz.hs-offenburg.de>
From: Martin Thomson <martin.thomson@gmail.com>
Date: Sat, 10 Sep 2016 20:38:52 +1000
Message-ID: <CABkgnnV-rQZraMo3j8QmP-f-VmrR_XUhQq3ooxC+nicUq_TkpQ@mail.gmail.com>
To: Andreas Walz <andreas.walz@hs-offenburg.de>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/5XkmfrmtvErJ7gnrAiqQ-oimS7E>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Suspicious behaviour of TLS server implementations
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
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: <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: Sat, 10 Sep 2016 10:38:55 -0000

I think that Martin (R) provided you with the answers I would have.

Have you filed bugs against the servers in question for the issues
that you have seen?

On 10 September 2016 at 00:23, Andreas Walz
<andreas.walz@hs-offenburg.de> wrote:
> Dear all,
>
> we are working on an approach/framework for testing TLS implementations
> (currently only servers, but clients are planned for the future as well).
> While running our tests against a bunch of different TLS (server)
> implementations, we found several types of suspicious behaviour (see below).
> As the TLS specification left me with doubts on what the correct behaviour
> should be, I'd like to raise this questions here (please let me know if this
> is not the appropriate place or this has been answered before).
>
> (1) Several server implementations seem to ignore the list of proposed
> compression methods in a ClientHello and simply select null compression even
> if that has not been in the ClientHello's list. The specification is rather
> clear that null compression MUST be part of the list. However, I'm not aware
> of any clear statement about what a compliant server should do in case it
> receives a ClientHello without null compression. My best guess would have
> been that in such cases the server should abort the handshake (at least if
> it does not support whatever the client proposed).
>
> (2) In a ClientHello several server implementations don't ignore data
> following the extension list. That is, they somehow seem to ignore the
> length field of the extension list and simply consider everything following
> the list of compression methods as extensions. Aside from this certainly
> being a deviation from the specification, I was wondering whether a server
> should silently ignore data following the extension list (e.g. for the sake
> of upward compatibility) or (as one could infer from RFC5246, p. 42) send
> e.g. a "decode_error" alert.
>
> (3) If a ClientHello contains multiple extensions of the same type, several
> server implementations proceed with the handshake (even if they parse these
> specific extensions). The specification again is clear that "there MUST NOT
> be more than one extension of the same type". However, what should a server
> do in case there are? Again, my guess would be that it should abort the
> handshake. Should this also be the case for extensions that a server simply
> ignores (as it e.g. doesn't know them)?
>
> Thank you very much.
>
> Cheers,
> Andi
>
>
> _______________________________________________
> TLS mailing list
> TLS@ietf.org
> https://www.ietf.org/mailman/listinfo/tls
>