Re: [Ace] draft-ietf-ace-cmpv2-coap-transport-00.txt - do not mention V" of CMP in the document

Mohit Sahni <mohit06jan@gmail.com> Thu, 22 April 2021 14:39 UTC

Return-Path: <mohit06jan@gmail.com>
X-Original-To: ace@ietfa.amsl.com
Delivered-To: ace@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 896003A100D for <ace@ietfa.amsl.com>; Thu, 22 Apr 2021 07:39:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 bKQLjsFJx9ph for <ace@ietfa.amsl.com>; Thu, 22 Apr 2021 07:39:14 -0700 (PDT)
Received: from mail-il1-x130.google.com (mail-il1-x130.google.com [IPv6:2607:f8b0:4864:20::130]) (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 D899C3A1026 for <ace@ietf.org>; Thu, 22 Apr 2021 07:39:03 -0700 (PDT)
Received: by mail-il1-x130.google.com with SMTP id c4so11472819ilq.9 for <ace@ietf.org>; Thu, 22 Apr 2021 07:39:03 -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:content-transfer-encoding; bh=Mac+eSg13vwxchFBc0jWqIyehWcxnaPV6z4ur/TTtAU=; b=OGAXxRyFeh2biV/otN30N7OLAZx/UBZ6aifFasuTvslgyb6mZ0BS8i9F971iXPPBLr 80Z9cMl7tvvMofm4lnbkuoTxZg0RS9w9U6uUMm8bToHvtIuZE74I9ZqNAuPav3LkGCOH q3dOWijI40mHel3j4+fBnuCIG1Fc6xZoa0IOhk8st+Te8pmY3GLe7Cy+eRA6DR9rTJTS E32RYlayk14D7mmL1P+HypLerxl0EqAbdtunRjstAS82ZMMaAXDN6DerjwGAAa2DM/fn P0Kt/wtuWmP3iFiz3yMkUO3I5TdJmk7DH6AK1nouJ2qywF7e6AziLtPTcqJG/qx0vPi/ OwdQ==
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:content-transfer-encoding; bh=Mac+eSg13vwxchFBc0jWqIyehWcxnaPV6z4ur/TTtAU=; b=lUoWo6zqAb0dFqrXGcLpKI5FVXduvVmJnA/ujtpRO/boL1zd0hzxaGNTwbUoGnyG+x qYBRpLCCYWq8VMbnN0dzLrB8yY60NwkoefU7/uOkpQeAELXzne2TT2xJDONfPP5vqOON 9JXIZGUtIfal/5YZeGphDoMMP75N/0kkbblIHQDt7qO6qiPQYzVGXIFSXt3CnOBwOHHg 1LZLvd2cb4C17WCdAJW9thyJbrJAZ+IXlLgYsR26P0pzi+RYGmPiwHyjuMbz3cqcKO0I lNlKveFQheWZne2eWMjHPUpTv7mu7WzHy8ZRm+VcKx3k5NqNW5OzlQ4IRUB70Ktt0Lq/ WQYg==
X-Gm-Message-State: AOAM531O7o5peIpTUhisB0Zc1h0SdC8XAAIJE1+usjBf8bHYsS6Tlley 4JFh/kV8Pn5XIPetLDRlAc8+SV/FW07N/jmgIJnyYY2SP4I=
X-Google-Smtp-Source: ABdhPJz2DBCcVIB5XjcsYq/iTNLfjjtpGmAmVBp+on6FZ1GHWA6oLEiddDlVz4SrwAHx6pSdMeLA5ZqOR/0ybbKe+AE=
X-Received: by 2002:a92:ad07:: with SMTP id w7mr2962907ilh.98.1619102341410; Thu, 22 Apr 2021 07:39:01 -0700 (PDT)
MIME-Version: 1.0
References: <AM0PR10MB24186B276EBD30EE32A7A87BFE969@AM0PR10MB2418.EURPRD10.PROD.OUTLOOK.COM> <CAEpwuw167FdJzQYLK2ZV0B_6=2edV+wj9zKDnpbiN-0aTgNL=g@mail.gmail.com> <4f9d9e3f-be6a-9fe7-40b2-1f018df1742a@siemens.com> <ea9d4f16-8744-c757-6b81-f22b3ff77e5d@siemens.com>
In-Reply-To: <ea9d4f16-8744-c757-6b81-f22b3ff77e5d@siemens.com>
From: Mohit Sahni <mohit06jan@gmail.com>
Date: Thu, 22 Apr 2021 07:38:50 -0700
Message-ID: <CAEpwuw2z=5L_szZihL2giz80dfT+Bx3T2C8tN8LJP-Ro2bgSoA@mail.gmail.com>
To: David von Oheimb <David.von.Oheimb@siemens.com>
Cc: "Brockhaus, Hendrik" <hendrik.brockhaus@siemens.com>, "ace@ietf.org" <ace@ietf.org>, Andreas Kretschmer <Andreas.Kretschmer@siemens.com>, stripathi@paloaltonetworks.com
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ace/9QvpCCsJpVDAxXmMAQXV2MB8aGg>
Subject: Re: [Ace] draft-ietf-ace-cmpv2-coap-transport-00.txt - do not mention V" of CMP in the document
X-BeenThere: ace@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Authentication and Authorization for Constrained Environments \(ace\)" <ace.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ace>, <mailto:ace-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ace/>
List-Post: <mailto:ace@ietf.org>
List-Help: <mailto:ace-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ace>, <mailto:ace-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Apr 2021 14:39:19 -0000

Hi David,
Thanks for your comments, they are very helpful. I apologize, I
thought i have replied to you earlier but later found out that the
email was still my draft messages.  I have made changes to the
abstract section and other items that you pointed out in my draft.
Just want to make some clarifications in respect to a few of your
comments.

Comment:
> maybe weaken?:   mode MUST be used -> mode SHOULD be used
Response:
In my opinion, MUST makes more sense here because firstly this will
avoid IP fragmentation in some of the cases and secondly Block-Wise
option is a critical option as per RFC 7959 and making is SHOULD may
cause some interoperability issues.

Comment:
> To reduce the DoS risk in particular with the need to split larger messages into smaller chunks to re-assemble them later,
> it should be pretty helpful if both sides of the connection minimize the number and contents of CMP message fields as far as possible,
> for instance by leaving out unimportant optional fields, using short strings, preferring PBM-based protection, and generally (also for the certificates being managed) using ECC rather than RSA.
> I suggest placing some remark like this in sections 2.6 and/or 5.
Response:
Based on your and Hendrik's comments, I have added following statement
in the security considerations:
"In order to protect themselves against DDoS attacks, the
implementations SHOULD avoid sending or receiving very small packets
containing partial CMP PKIMessage data."

Thanks
Mohit

On Thu, Mar 11, 2021 at 9:55 AM David von Oheimb
<David.von.Oheimb@siemens.com> wrote:
>
> P.S.
>
> One of the few major comments I gave below was pertaining to the security considerations.
> AFAICS the only security issue induced by using CoAP/UDP with CMP is the increased vulnerability to DoS attacks.
>
> To reduce the DoS risk in particular with the need to split larger messages into smaller chunks to re-assemble them later,
> it should be pretty helpful if both sides of the connection minimize the number and contents of CMP message fields as far as possible,
> for instance by leaving out unimportant optional fields, using short strings, preferring PBM-based protection, and generally (also for the certificates being managed) using ECC rather than RSA.
> I suggest placing some remark like this in sections 2.6 and/or 5.
>
> On 11.03.21 18:10, David von Oheimb wrote:
>
> Hi Mohit,
>
> thanks a lot for providing that draft. It looks very good already.
>
> Good point by Hendrik to replace "CMPv2" by "CMP" since the version really does not matter here.
>
> I'd suggest dropping the hyperlinked reference from the abstract and
> a couple of further adaptations to the abstract, such that it becomes
>
>    This document specifies use of the Constrained Application Protocol
>    (CoAP) for transferring Certificate Management Protocol (CMP) messages.
>    It details the respective option mentioned in the Lightweight CMP Profile.
>    CMP defines the interaction between various PKI entities for certificate
>    enrollment and management.  CoAP is an HTTP-like client-server protocol
>    for use in constrained devices in IoT space.
>
> Further mostly very minor improvement suggestions are given below.
>
> Cheers,
>     David
>
>
> Section 1:
>
> transport -> transfer (several times)
> encryption of messages -> protection of messages
> between CAs -> between RAs
>
> Section 2:
>
> PKIMesssage -> PKIMesssages
>
>
> I do not understand what you want so say here:
>
> An EE MUST verify the configured Root CA
> certificate against the Root CA certificate of the discovered entity
>
> Likely you meant:
>
> An EE MUST verify the certificate of the discovered entity
> against a configured trust anchor (Root CA certificate)
>
>
> The URI's for CoAP resources should start ->
> The only difference is that the URIs for CoAP resources MUST start
>
> should return a "2.05 Content" ->
> MUST return a "2.05 Content"
> (or are there other options in case of success?)
>
> application/pkixcmp -> "application/pkixcmp"
>
> for the possible changes -> for potential changes
>
> Block Wise -> Block-Wise (in title of 2.6)
> Block Wise -> block-wise (in body of 2.6)
>
> header body and optional fields ->
> header, body, protection, and extraCerts including many optional and potentially bulky fields
>
> outgoing interface -> interface
> (because this may also happen for responses)
>
> maybe leave out?   that are exchanged between EEs and RAs or CAs
>
> maybe weaken?:   mode MUST be used -> mode SHOULD be used
>
> then, it -> then it
>
> Proxy opens -> the proxy opens
>
> maybe leave out?   from EEs to RAs or from EEs to CAs
>
> Section 3:
>
> the encryption and authentication of the messages but in cases when ->
> protecting message contents, in case
>
> 7.1 and 7.2 -> 7.2 and 7.3
> (for draft 03 at least)
>
> overhead of using DTLS connection -> overhead of setting up DTLS connections
>
> Sections 4 and 5:
>
> CoAP to HTTP -> CoAP-to-HTTP
> (several times)
>
> significant changes -> changes
>
> Announcements Messages -> announcement messages
>
> MUST be positioned -> SHOULD be positioned
> (else the recommendation given next makes no sense)
>
> between CAs and RAs -> between RAs and CAs
>
> UDP based -> UDP-based
> (two times)
>
> CoAPs to HTTPS -> CoAPS-to-HTTPS
>
> HTTPS protocol, -> HTTPS.
>
> however client SHOULD be configured to trust the CA certificate used by proxy to sign the Man in the Middle (MITM) certificate for certificate chain validation ->
> The client SHOULD be configured with a trust anchor suitable for validating the DTLS server certificate used by the proxy
>
> I doubt if the paragraph
>
>    However, the CoAP protocol which
>    uses UDP as layer 4 transport is vulnerable to many issues due to the
>    connectionless characteristics of UDP itself.  The Security
>    considerations for CoAP protocol are mentioned in the [RFC7252].
>    Using a CoAP to HTTP proxy mitigates some of the risks as the
>    requests from the EE's can terminate inside the trusted network and
>    will not require the server to listen on a UDP port making it safe
>    from UDP based address spoofing, Denial of Service, and amplification
>    attacks due to the characteristics of UDP.
>
> makes sense because, as you wrote before, CMP is already self-contained in terms of security.
> Therefore I think it should be sufficient to say for instance:
>
> Therefore security issues of CoAP due to using UDP do not carry over to the CMP layer
> except for the vulnerability to Denial-of-Service attacks.
>
>
> Section 6:
>
> content-type application/pkixcmp -> content type "application/pkixcmp".
>
>
>
> On 10.03.21 19:44, Mohit Sahni wrote:
>
> Hi Hendrik
> Thanks for the update, I will make changes to remove the CMP version
> references from the document. I think we can exclude CMPv1 from the
> scope as it will obsolete soon.
>
> Thanks
> Mohit
>
> On Fri, Mar 5, 2021 at 9:36 AM Brockhaus, Hendrik
> <hendrik.brockhaus@siemens.com> wrote:
>
> Mohit
>
>
>
> We introduced V3 of CMP in draft-ietf-lamps-cmp-updates-08 Section 2.15. The version of CMP is not relevant to the CoAP transport, I guess. Therefore, I suggest to  remove references to the CMP version from your draft, especially from the title. If you want to exclude CMP V1 as specified in RFC 2510 from the scope of your draft, this is fine with me as well.
>
>
>
> Hendrik