Re: [Anima] 2nd WGLC for draft-ietf-anima-constrained-join-proxy-12, ends September 20th 2022

Michael Richardson <mcr+ietf@sandelman.ca> Mon, 24 October 2022 01:22 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: anima@ietfa.amsl.com
Delivered-To: anima@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DDF3FC14F749 for <anima@ietfa.amsl.com>; Sun, 23 Oct 2022 18:22:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.907
X-Spam-Level:
X-Spam-Status: No, score=-1.907 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6I2k-4eB8I18 for <anima@ietfa.amsl.com>; Sun, 23 Oct 2022 18:22:26 -0700 (PDT)
Received: from relay.sandelman.ca (relay.cooperix.net [IPv6:2a01:7e00:e000:2bb::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 05881C14F73F for <anima@ietf.org>; Sun, 23 Oct 2022 18:22:25 -0700 (PDT)
Received: from dyas.sandelman.ca (cable-24-135-63-90.dynamic.sbb.rs [24.135.63.90]) by relay.sandelman.ca (Postfix) with ESMTPS id 467801F450; Mon, 24 Oct 2022 01:22:22 +0000 (UTC)
Received: by dyas.sandelman.ca (Postfix, from userid 1000) id DE9B0A02E9; Sun, 23 Oct 2022 21:21:50 -0400 (EDT)
Received: from dyas (localhost [127.0.0.1]) by dyas.sandelman.ca (Postfix) with ESMTP id DC7B9A01A0; Mon, 24 Oct 2022 03:21:50 +0200 (CEST)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: Toerless Eckert <tte@cs.fau.de>, Esko Dijk <esko.dijk@iotconsultancy.nl>, Anima WG <anima@ietf.org>
In-reply-to: <YzH8R88OY/kNDLxz@faui48e.informatik.uni-erlangen.de>
References: <Yxd/oBl0dmbmUI8L@faui48e.informatik.uni-erlangen.de> <DU0P190MB1978F420D478B93CE29F36D3FD4C9@DU0P190MB1978.EURP190.PROD.OUTLOOK.COM> <46723.1663756262@dooku> <DU0P190MB1978AC04BBB22272B360984DFD4F9@DU0P190MB1978.EURP190.PROD.OUTLOOK.COM> <YzH8R88OY/kNDLxz@faui48e.informatik.uni-erlangen.de>
Comments: In-reply-to Toerless Eckert <tte@cs.fau.de> message dated "Mon, 26 Sep 2022 21:23:51 +0200."
X-Mailer: MH-E 8.6+git; nmh 1.7+dev; GNU Emacs 26.3
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Date: Mon, 24 Oct 2022 03:21:50 +0200
Message-ID: <1125858.1666574510@dyas>
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/flg334kj7Lo3aZGMV5HW2HOQaXQ>
Subject: Re: [Anima] 2nd WGLC for draft-ietf-anima-constrained-join-proxy-12, ends September 20th 2022
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 24 Oct 2022 01:22:30 -0000

Toerless Eckert <tte@cs.fau.de> wrote:
    > For the stateful proxy, the pull request from my review i sent last friday suggests the
    > following text:

    > To protect itself and the Registrar against malfunctioning Pledges
    > and or denial of service attacks, the join proxy SHOULD limit the
    > number of simultaneous mapping states for each IP_p%IF to 2 and the
    > number of simultaneous mapping states per interface to 10.  When
    > mapping state can not be built, the proxy SHOULD return an ICMP error
    > (1), "Destination Port Unreachable" message with code (1),
    > "Communication with destination administratively prohibited".

I've adapted this text and inserted it into the ed-review-comments branch.

    > Do you think these are useful numbers ?

They seem reasonable.

    > from the proxy and only have it on the registrar. The best DoS protection i could
    > think of on the proxy is therefore just a total packet rate limiter. Is
    > it possible

I agree, that limiting total packets/bytes that can be (ab)used is the best
way.  This may mean that attackers can keep legimate pleges from joining, but
if we knew who was legitimate a-priori, we wouldn't need to do this at all.

    > to come up with good recommendations on such packet rate limiters ? For example
    > 1% of the "uplink" bitrate ? Can you think of mesh networks where this would not
    > be a good enough number ? If this (or another number)  makes sense we could suggest
    > to add it to the stateless proxy section.

In RFC9031, we used used DSCP to mark upward join traffic as distinct, in
order to avoid having 6tisch think it was legitimate traffic and allocate
additional bandwidth for it.
A different DSCP marks downward traffic, because if the Registrar considers
it worth responding, then the response really needs to get there.

    > I can already see a BRSKI scenario in the USA, where the manager of the
    > east-coast NOC went home at 5PM and some IT folks on the west coast
    > still want enroll new equipment in an installation and wonder what
    > happens.

I can see the same thing.
I think that this is a layer 8 issue.
What we need is to be able to more clearly signal it.
  https://datatracker.ietf.org/doc/draft-ietf-roll-enrollment-priority/
is about this kind of control being expressed down to the leafs.
But, turning the Registrar on/off also helps.

    > Instead of stopping service announcements (registrar and proxy), i
    > would then love to see the service
    > announcements witth some "service status" flag/field. For example "off
    > hours" or the like. Workflow:
    > Device to be enrolled has single color LED. You connect it (west coast)
    > to the network, and it would indicate "off hours" through eg.:
    > repeating three short blinks. This validates that network connectivity
    > works, and that enrolment will proceed once someone switches "BRSKI on"
    > (next morning).

    > Does that make sense ?

yes, it does.
How do you signal the device in an authentic way that can't be spoofed?
It seems that you have to actually do the onboarding process (including
voucher return) in order to establish trust, and then you can say, "off
hours", which certainly doesn't help the DoS problem.

That's one reason why EST/RFC7030 has this 202 status process.
The enrollment that started at 5:06pm on Friday is waiting for a human to
come in on Monday morning and click the "ok" box.





--
Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
 -= IPv6 IoT consulting =-