Re: [TLS] Adoption call for Deprecating FFDH(E) Ciphersuites in TLS

Nimrod Aviram <nimrod.aviram@gmail.com> Sat, 28 August 2021 10:17 UTC

Return-Path: <nimrod.aviram@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 DB2A23A18C5 for <tls@ietfa.amsl.com>; Sat, 28 Aug 2021 03:17:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.097
X-Spam-Level:
X-Spam-Status: No, score=-1.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no 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 aZL4w8QjdrA5 for <tls@ietfa.amsl.com>; Sat, 28 Aug 2021 03:17:22 -0700 (PDT)
Received: from mail-qt1-x834.google.com (mail-qt1-x834.google.com [IPv6:2607:f8b0:4864:20::834]) (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 07A183A18C4 for <tls@ietf.org>; Sat, 28 Aug 2021 03:17:21 -0700 (PDT)
Received: by mail-qt1-x834.google.com with SMTP id s15so4068003qta.10 for <tls@ietf.org>; Sat, 28 Aug 2021 03:17:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=XmcRP3AAH3Z8k9P72bDjh1CRY5IzQdxrjULZmmy6LEk=; b=GMqOlTLvNKiU7ofeOJoMwVlYpziG6LQMx79ui7fCINdQua3ruaInjz4IoiQ1FB5GZm 9HksnOj8S0VageqC2XuWK7CCeaMlblYG+ZqZfA5m4YBC7U9M0WdQA15zmMsjxVWKvZ8h LT5KCynodN0ZAP3U5VcZLIYPCvzL7bTgaZAQhe1Zy59/1jC9je716UYN70QBelXj+4v2 J/cIoOYTb08zqAMsQ3EQNMVKOc+rCZoK4gbSDVzqI8qeEmyMWiA/PPrlSrY6M0zOOVxX bnK/0ho9dOCY6pYCd5c1439L3szRSqEWypGpbH0SxRPwXog5PRSjxq4l0P/o/P9azyc7 YHBw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=XmcRP3AAH3Z8k9P72bDjh1CRY5IzQdxrjULZmmy6LEk=; b=qiSaYaWITn2gwshQaxToSRNVqu+Pe/bL1IiX21g5+5m8y0HcJJusOvQUn4xUGJdpMO GoQoutgdS98MplJqn9WAB1a9U73j+UFJf9ht1lE8u1zxzGT7Sxh1pAmrsfVBIsyG6ujy 7MM+6a4HEsDQ/F3Mifsl0lsAZvwqXgPipe+Q9FQhqEinGwgickXOGd5jcqWCHtA33dRn 3iWNcZi7M2D57WBTGSjKZof4zc6ES4VHcZMV3dUAlCNWaNaYeAdvY5+9L+3hiZWHURI0 T+sv5FM+BCU4aXRJAGJ6On45gEDmhqCXgSU5UlMcx7O2syLH5UVCT5QbHJu+hB40y0Pj Asaw==
X-Gm-Message-State: AOAM532M2Ht+l4gg2LuGb3tJMwl36ZmcteyZbCJhNZ4TjrDHzasFcTic aVitonrclppp2O0pFmSKq81p6RbTr1diwiySKpo=
X-Google-Smtp-Source: ABdhPJwPKrYhGmcspCASLU/gMyk2o7O1KaQDcfZzS5u4yiLQaqlbYKvaTQ5DC5QN1FXhR6wKO9ehu3D5XdipRYQ+pcQ=
X-Received: by 2002:ac8:7118:: with SMTP id z24mr11629978qto.281.1630145840229; Sat, 28 Aug 2021 03:17:20 -0700 (PDT)
MIME-Version: 1.0
References: <CAOgPGoC4C0bWz0h0iyzGzMPEoDKAPv4euoOkmS+6Uuxncux4Zg@mail.gmail.com> <cc9c9d9f-d6b1-3b93-1231-a9a9c34a7fcd@gmail.com> <67533325-2983-47B7-871C-D90799D09532@ll.mit.edu> <CAOgPGoDAvnFic3VmEsge3i8C2FEfWp74ac_ievtfNo=MQB+C8g@mail.gmail.com> <C8E91D9B-2326-4AAF-9952-69481081E337@ll.mit.edu> <BD109A95-129A-4995-AFCA-FEF10DBD6440@icloud.com> <CAOgPGoBMhhsTupXuWF__zkLuy-4qQhha_Kp1_+ToZrNoaFUsgQ@mail.gmail.com> <13b9e674-9e0b-46aa-b5d6-49798c310d85@www.fastmail.com> <CABiKAoT3rwhXHAm3YeuuMzQMp5hH-N2sL6WPadE5i+bX1hrTjw@mail.gmail.com> <b5999c2f-2ba9-e136-98ce-c42c5e41a85f@gmail.com>
In-Reply-To: <b5999c2f-2ba9-e136-98ce-c42c5e41a85f@gmail.com>
From: Nimrod Aviram <nimrod.aviram@gmail.com>
Date: Sat, 28 Aug 2021 13:17:08 +0300
Message-ID: <CABiKAoSjFaR8uBEysD5=wMCNYb+DdLfdqj6JdjoxsDbtyMyN6w@mail.gmail.com>
To: Rene Struik <rstruik.ext@gmail.com>
Cc: "<tls@ietf.org>" <tls@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000bd30bd05ca9be7e7"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/PJO_ZyK76YVAzoNJCN1vAusTwQs>
Subject: Re: [TLS] Adoption call for Deprecating FFDH(E) Ciphersuites in TLS
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.29
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, 28 Aug 2021 10:17:28 -0000

Hi Rene,

We are agreed on the strategy for mitigating Raccoon. We seem to disagree
on how easy it is to implement in constant time.
I'd like to understand your position better: Are you OK with implementers
reusing secret DH values without the above mitigation?
If not, it sounds like you suggest describing this mitigation strategy in
an RFC, and requiring it when DH secrets are reused, in the same vein the
Bleichenbacher mitigation is required. Is this your preferred course of
action?
If this is not your preferred course of action, could you please describe
what is? If you suggest leaving the situation as-is, I'd appreciate it if
you could please state so, so I could better understand your position.

best,
Nimrod


On Fri, 27 Aug 2021 at 20:50, Rene Struik <rstruik.ext@gmail.com> wrote:

> Hi Nimrod:
>
> All the quoted Raccoon attack (of which you are a coauthor) does is
> highlight that poorly designed post-processing of a shared key
> (variable-size bit-string representation) could be used to extract secret
> info by solving an instance of the hidden number problem.
>
> Let us not over-state the importance of this attack, though: the attack
> (for those who care) is easy to mitigate, e.g., as follows:
> a) Let K be the derived shared key; let K1, ..., Kt be a set of keys
> including this key K (where this set has keys of byte-size L-1 and L,
> respectively, say L-1 once and L for all others);
> b) Compute kj:=kdf(Kj) for all j=1,...,t;
> c) Select select kj, where Kj corresponds to K.
> Note: (if t:=2) if K has size L-1, set, e.g., K':=K xor random L-byte
> offset; if K has size L, set, e.g., K':=trunc_{L-1}(K) xor random
> {L-1}-byte offset.
>
> Contrary to what you claim, this seems to be easy to implement in
> constant-time, however if not, this would still most likely thwart the
> attack (since one cannot apply the HNP any more {since one has to guess
> which leaks are real (correct j value) and which are spurious).
>
> Bottom line (for me) is that one should not use attacks that are easy to
> mitigate as a pretext for deprecating things. There may be other reasons
> that have more merit, but the draft in the adoption call does not provide
> any of this. Hence, my feedback to reject the individual draft as it stands
> (based on lack of proper detail).
>
> As Peter Gutmann already said in the thread, what problem is one trying to
> solve here???
>
> Contrary to what Filippo suggests, I do think one should query why
> implementors do not heed advice that has been around for a long time (in
> that case, they should rightfully assume some blame). Implementors have
> duty of care too.
>
> [my email of Aug 13, 2021, 9.58am EDT]
> I think this document should absolutely *not* be adopted, without
> providing far more technical justification. The quoted Raccoon attack is an
> easy to mitigate attack (which has nothing to do with finite field groups,
> just with poor design choices of postprocessing, where one uses
> variable-size integer representations for a key). There are also good
> reasons to have key exchanges where one of the parties has a static key,
> whether ecc-based or ff-based (e.g., sni, opaque), for which secure
> implementations are known. No detail is provided and that alone should be
> sufficient reason to not adopt.
>
> On 2021-08-27 1:00 p.m., Nimrod Aviram wrote:
>
> > The implementation guidance to avoid weaknesses in any ephemeral-static
> exchange is "don't get anything wrong, anything at all
> Agreed that it's not workable. I'm not sure there is existing and suitable
> implementation guidance.
> To avoid the Raccoon attack, one would have to implement the KDF such that
> it is constant time, even for variable-length secrets. This is possible, at
> least in principle, but I'm not aware of any implementation that does it or
> plans to do it, and neither of any document that describes the complex
> strategy for achieving this.
>
>
> On Fri, 27 Aug 2021 at 12:26, Filippo Valsorda <filippo@ml.filippo.io>
> wrote:
>
>> 2021-08-27 05:08 GMT+02:00 Joseph Salowey <joe@salowey.net>et>:
>>
>> Thanks for all the discussion on this topic.  There are several modes
>> that TLS 1.2 can operate with respect to DH.  Below is a proposal on
>> cases to merge some of the cases covered by this draft into the obsolete
>> keyex draft.  I'd like to see if there is some consensus to make this
>> change before we adopt it into the working group.
>>
>> 1. static-static where both client and server have DH certificates with
>> long term keys.  I think we have general consensus that this mode should be
>> a must not.  To deprecate this mode I think we need to state that clients
>> MUST NOT use certificates of type rsa_fixed_dh and dsa_fixed_dh and
>> server MUST NOT request them.  Would the working group support merging this
>> guidance into the obsolete keyex draft?
>>
>> 2. ephemeral-static where the client uses an ephemeral key and the server
>> uses a long term key.  This mode does not provide forward secrecy.  I'm not
>> sure we have reached consensus on how far to deprecate this option.  Would
>> the working group support MUST NOT use these ciphersuites unless forward
>> secrecy does not matter for your use case and any implementation guidance
>> provided to avoid weaknesses is followed?
>>
>>
>> The implementation guidance to avoid weaknesses in any ephemeral-static
>> exchange is "don't get anything wrong, anything at all, all the way down to
>> your field arithmetic libraries". I don't think that's a workable
>> recommendation, and I believe we should deprecate modes that are so unsafe
>> to implement.
>>
>> 3. ephemeral-ephemeral  - I think these are already covered in the
>> obsolete keyex draft.
>>
>> Thanks,
>>
>> Joe
>>
>> On Sun, Aug 22, 2021 at 9:32 PM Carrick Bartle <cbartle891@icloud.com>
>> wrote:
>>
>> >   which is a main reason cited for deprecating RSA
>> in draft-aviram-tls-deprecate-obsolete-kex.
>>
>> Have the authors look at Post-Quantum KEMs?
>>
>>
>> I'm not sure why PQ KEMs are relevant here.
>>
>>
>> On Aug 17, 2021, at 10:41 AM, Blumenthal, Uri - 0553 - MITLL <
>> uri@ll.mit.edu> wrote:
>>
>> >  Regardless of the Raccoon attack, the static DH and ECDH ciphersuites
>> do not provide
>> >  forward secrecy,
>>
>> Unless you use semi-static exchange, which in many cases makes sense.
>>
>> >   which is a main reason cited for deprecating RSA
>> in draft-aviram-tls-deprecate-obsolete-kex.
>>
>> Have the authors look at Post-Quantum KEMs?
>>
>> >  Do you object to just the citation of the Raccoon attack or do you
>> also feel that we
>> >  should keep these ciphersuites that do not provide forward secrecy
>> around?
>>
>> I think these suites should stay around.
>>
>> While static-static indeed do not provide forward secrecy (and many of us
>> – though not everybody! – carry for that), static-ephemeral DH and ECDH are
>> perfectly fine from that point of view.
>>
>>
>>
>> On Fri, Aug 13, 2021 at 10:20 AM Blumenthal, Uri - 0553 - MITLL <
>> uri@ll.mit.edu> wrote:
>>
>> I agree with Rene’s points.
>>
>> --
>> Regards,
>> Uri
>>
>>
>>
>> *From: *TLS <tls-bounces@ietf.org> on behalf of Rene Struik <
>> rstruik.ext@gmail.com>
>> *Date: *Friday, August 13, 2021 at 09:58
>> Dear colleagues:
>>
>> I think this document should absolutely *not* be adopted, without
>> providing far more technical justification. The quoted Raccoon attack is an
>> easy to mitigate attack (which has nothing to do with finite field groups,
>> just with poor design choices of postprocessing, where one uses
>> variable-size integer representations for a key). There are also good
>> reasons to have key exchanges where one of the parties has a static key,
>> whether ecc-based or ff-based (e.g., sni, opaque), for which secure
>> implementations are known. No detail is provided and that alone should be
>> sufficient reason to not adopt.
>>
>> Rene
>>
>> On 2021-07-29 5:50 p.m., Joseph Salowey wrote:
>>
>> This is a working group call for adoption for Deprecating FFDH(E)
>> Ciphersuites in TLS (draft-bartle-tls-deprecate-ffdhe-00
>> <https://datatracker.ietf.org/doc/draft-bartle-tls-deprecate-ffdhe/>).
>> We had a presentation for this draft at the IETF 110 meeting and since it
>> is a similar topic to the key exchange deprecation draft the chairs want to
>> get a sense if the working group wants to adopt this draft (perhaps the
>> drafts could be merged if both move forward).  Please review the draft and
>> post your comments to the list by Friday, August 13, 2021.
>>
>> Thanks,
>>
>> The TLS chairs
>>
>>
>>
>> _______________________________________________
>>
>> TLS mailing list
>>
>> TLS@ietf.org
>>
>> https://www.ietf.org/mailman/listinfo/tls
>>
>>
>>
>> --
>>
>> email: rstruik.ext@gmail.com | Skype: rstruik
>>
>> cell: +1 (647) 867-5658 | US: +1 (415) 287-3867
>>
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>>
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>
> _______________________________________________
> TLS mailing listTLS@ietf.orghttps://www.ietf.org/mailman/listinfo/tls
>
>
> --
> email: rstruik.ext@gmail.com | Skype: rstruik
> cell: +1 (647) 867-5658 | US: +1 (415) 287-3867
>
>