Re: [Dots] draft-ietf-dots-filter-control: acl updates

<mohamed.boucadair@orange.com> Wed, 15 May 2019 14:37 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: dots@ietfa.amsl.com
Delivered-To: dots@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A30361202D4 for <dots@ietfa.amsl.com>; Wed, 15 May 2019 07:37:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.589
X-Spam-Level:
X-Spam-Status: No, score=-2.589 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
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 y5P7XtE5naqk for <dots@ietfa.amsl.com>; Wed, 15 May 2019 07:37:36 -0700 (PDT)
Received: from orange.com (mta136.mail.business.static.orange.com [80.12.70.36]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2E09D1202D2 for <dots@ietf.org>; Wed, 15 May 2019 07:37:24 -0700 (PDT)
Received: from opfednr05.francetelecom.fr (unknown [xx.xx.xx.69]) by opfednr24.francetelecom.fr (ESMTP service) with ESMTP id 453xwL3qKFz21jj; Wed, 15 May 2019 16:37:22 +0200 (CEST)
Received: from Exchangemail-eme6.itn.ftgroup (unknown [xx.xx.13.23]) by opfednr05.francetelecom.fr (ESMTP service) with ESMTP id 453xwL5lvqzyQF; Wed, 15 May 2019 16:37:22 +0200 (CEST)
Received: from OPEXCAUBMA2.corporate.adroot.infra.ftgroup ([fe80::e878:bd0:c89e:5b42]) by OPEXCAUBM41.corporate.adroot.infra.ftgroup ([fe80::857d:4f67:b0a7:10d7%21]) with mapi id 14.03.0439.000; Wed, 15 May 2019 16:37:22 +0200
From: mohamed.boucadair@orange.com
To: Jon Shallow <supjps-ietf@jpshallow.com>, "dots@ietf.org" <dots@ietf.org>
Thread-Topic: [Dots] draft-ietf-dots-filter-control: acl updates
Thread-Index: AdUKY25JElmJGCHmS8ShhhzPTbwDWQDLeKj/AkMyvT4B7HN7vgIQGcjYAf+P1K8CzR/oVKWy1wZQphAMvzA=
Date: Wed, 15 May 2019 14:37:21 +0000
Message-ID: <787AE7BB302AE849A7480A190F8B93302EA7E684@OPEXCAUBMA2.corporate.adroot.infra.ftgroup>
References: <787AE7BB302AE849A7480A190F8B93302EA7DAAF@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <BYAPR16MB279089B075158BFF8C8B2E5FEA090@BYAPR16MB2790.namprd16.prod.outlook.com> <787AE7BB302AE849A7480A190F8B93302EA7E01D@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <7f1f7363-11d0-9acd-32a5-ba9fc92cf433@nttv6.jp> <787AE7BB302AE849A7480A190F8B93302EA7E072@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <00e801d50b04$54db4a90$fe91dfb0$@jpshallow.com> <787AE7BB302AE849A7480A190F8B93302EA7E37B@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <018f01d50b25$682183a0$38648ae0$@jpshallow.com>
In-Reply-To: <018f01d50b25$682183a0$38648ae0$@jpshallow.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.114.13.247]
Content-Type: multipart/alternative; boundary="_000_787AE7BB302AE849A7480A190F8B93302EA7E684OPEXCAUBMA2corp_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/dots/m1boVEP_Ustt5iLL4dOjEYeFJHk>
Subject: Re: [Dots] draft-ietf-dots-filter-control: acl updates
X-BeenThere: dots@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "List for discussion of DDoS Open Threat Signaling \(DOTS\) technology and directions." <dots.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dots>, <mailto:dots-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dots/>
List-Post: <mailto:dots@ietf.org>
List-Help: <mailto:dots-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dots>, <mailto:dots-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 15 May 2019 14:37:40 -0000

Re-,

The draft does not include any text about the response to a PUT because we assume that we don’t change the base spec.

One related point, we may need to be specific about the behavior of the server, e.g., when it can do the mitigation but fails (for some reason) to apply the filter update. Should we discard the request with 5.03 or should we allow for some flexibility by accepting the mitigation but without the filter update?

Cheers,
Med

De : Jon Shallow [mailto:supjps-ietf@jpshallow.com]
Envoyé : mercredi 15 mai 2019 15:52
À : BOUCADAIR Mohamed TGI/OLN; dots@ietf.org
Objet : RE: [Dots] draft-ietf-dots-filter-control: acl updates

Hi Med,

I think that covers it.  Now I have access to my emails, it was the PUT that I was thinking about, not the GET.

Regards

Jon

From: Dots [mailto: dots-bounces@ietf.org] On Behalf Of mohamed.boucadair@orange.com
Sent: 15 May 2019 12:22
To: Jon Shallow; dots@ietf.org
Subject: Re: [Dots] draft-ietf-dots-filter-control: acl updates

Re-,

Noted. Thanks.

With regards to your second point, we do have the following in the draft:

   If, during an active mitigation, the 'activation-type' is changed at
   the DOTS server (e.g., as a result of an external action) for an ACL
   bound to a DOTS client, the DOTS server notifies that DOTS client
   with the change by including the corresponding ACL parameters in an
   asynchronous notification (the DOTS client is observing the active
   mitigation) or in a response to a polling request (Section 4.4.2.2 of
   [I-D.ietf-dots-signal-channel]).

Do we need to say more?

Cheers,
Med

De : Jon Shallow [mailto:supjps-ietf@jpshallow.com]
Envoyé : mercredi 15 mai 2019 11:56
À : BOUCADAIR Mohamed TGI/OLN; kaname nishizuka; Konda, Tirumaleswar Reddy; dots@ietf.org
Objet : RE: [Dots] draft-ietf-dots-filter-control: acl updates

Hi Guys,

I concur with (2).

I think that we have the ‘mid’ wrap properly covered (more likely to occur now with lots of ‘tweaks’ to the mitigation when trying out different acl-lists).

With (2) changing the activation-types, it is possible that some packets may not get through, and so an activation-type may be in an unexpected state.  I know  that we encourage regular monitor of the status of a mitigation (by signal channel observing), but  am unable to find as to whether acl-list etc. is returned on signal channel GET response (there are no GET signal channel response examples).  There was discussion about this on the mailing list, but it did not get a final resolution.

Regards

Jon

From: Dots [mailto: dots-bounces@ietf.org] On Behalf Of mohamed.boucadair@orange.com
Sent: 15 May 2019 09:05
To: kaname nishizuka; Konda, Tirumaleswar Reddy; dots@ietf.org
Subject: Re: [Dots] draft-ietf-dots-filter-control: acl updates

Re-,

Thank you for sharing your thoughts.

-00 allows to use both a new or existing ‘mid’. With (2) taken into account, we need the following change:

OLD:

   A DOTS client may include acl-* attributes in a mitigation request
   having a new or an existing 'mid'.  When acl-* attributes are to be
   included in a mitigation request with an existing 'mid', the DOTS
   client MUST repeat all the other parameters as sent in the original
   mitigation request (i.e., having that 'mid') apart from a possible
   change to the lifetime parameter value.

NEW:
   During an attack time, DOTS clients may include 'acl-list', 'acl-
   name', and 'activation-type' attributes in a mitigation request.
   This request may be the initial mitigation request for a given
   mitigation scope or a new one overriding an existing request.  In
   both case, a new 'mid' MUST be used.

   As the attack evolves, DOTS clients can adjust the 'activation-type'
   of an ACL conveyed in a mitigation request or control other filters
   as necessary.  This can be achieved by sending a PUT request with a
   new 'mid' value.

Cheers,
Med

De : kaname nishizuka [mailto:kaname@nttv6.jp]
Envoyé : mercredi 15 mai 2019 09:59
À : BOUCADAIR Mohamed TGI/OLN; Konda, Tirumaleswar Reddy; dots@ietf.org
Objet : Re: [Dots] draft-ietf-dots-filter-control: acl updates

Hi Tiru, Med,

I agree with Tiru.

> FWIW, the changes to implement (2) can be seen at:
>
> https://github.com/boucadair/filter-control/blob/master/wdiff%20draft-ietf-dots-signal-filter-control-00.txt%20draft-ietf-dots-signal-filter-control-01.pdf
>
Could you specify where it is?
(2) is taken account as the current version of the draft allows to include acl attributes in requests with new ‘mid’s.

regards,
Kaname
On 2019/05/15 16:28, mohamed.boucadair@orange.com<mailto:mohamed.boucadair@orange.com> wrote:
Hi Tiru,

Agree.

Looking forward to hear  more.

FWIW, the changes to implement (2) can be seen at:
https://github.com/boucadair/filter-control/blob/master/wdiff%20draft-ietf-dots-signal-filter-control-00.txt%20draft-ietf-dots-signal-filter-control-01.pdf

Cheers,
Med

De : Konda, Tirumaleswar Reddy [mailto:TirumaleswarReddy_Konda@McAfee.com]
Envoyé : mercredi 15 mai 2019 09:11
À : BOUCADAIR Mohamed TGI/OLN; dots@ietf.org<mailto:dots@ietf.org>
Objet : RE: draft-ietf-dots-filter-control: acl updates

I don’t think approach (1) is a good idea because of out of order delivery of packets. Further, the anti-relay detection technique in DTLS uses sliding windows procedure. An MITM can possibility cache and drop the packets from the client, and replay the cached packets that fall within the sliding window. For instance in the below example, the server could receive packets in the order T0, T4, T1, T2.

Monotonically increasing ‘mid’ is the only defense against this mechanism, and I don’t think the signal channel draft needs any update.

Cheers,
-Tiru

From: Dots <dots-bounces@ietf.org><mailto:dots-bounces@ietf.org> On Behalf Of mohamed.boucadair@orange.com<mailto:mohamed.boucadair@orange.com>
Sent: Tuesday, May 14, 2019 8:14 PM
To: dots@ietf.org<mailto:dots@ietf.org>
Subject: [Dots] draft-ietf-dots-filter-control: acl updates


CAUTION: External email. Do not click links or open attachments unless you recognize the sender and know the content is safe.


________________________________
Hi all,

The current version of the draft allows to include acl attributes in requests with new or existing ‘mid’s. By “existing mid’, we meant an existing request which does not include acl attributes when the request was initially created. For such requests, the activation-type of the same acl can be changed as the attack evolve or even control other ACLs. This is supposed to be covered by this text:

   When acl-* attributes are to be
   included in a mitigation request with an existing 'mid', the DOTS
   client MUST repeat all the other parameters as sent in the original
   mitigation request (i.e., having that 'mid') apart from a possible
   change to the lifetime parameter value.

For example:
T0: R(mid)
T1: R(mid, acl1, activation-type=value1)
T2: R(mid, acl2, activation-type=value2)
T3: R(mid, acl1, activation-type=value2)
T4: R(mid)
...

Now, if acl attributes are included in a request with a new mid, we need to specify how activation-type (and acl-list in general) can be updated. We do have two options:


  1.  Update the draft with this NEW text:


   If 'acl-list', 'acl-name', and 'activation-type' attributes are

   included in the initial mitigation request (that is, a mitigation

   request with a new 'mid'), the DOTS client may update the

   'acl-list' as an active attack evolves.  To do so, the DOTS

   client MUST repeat all the other parameters as sent in the original

   mitigation request apart from a possible change to the 'acl-list’

   and the lifetime parameter values.

   And the signal channel spec as follows:


   For a mitigation request to continue beyond the initial negotiated

   lifetime, the DOTS client has to refresh the current mitigation

   request by sending a new PUT request..  This PUT request MUST use the

   same 'mid' value, and MUST repeat all the other parameters as sent in

   the original mitigation request apart from a possible change to the

   lifetime parameter value or other changes to attributes defined in future extensions.

                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

For example:
T0: R(mid, acl1, activation-type=value1)
T1: R(mid, acl2, activation-type=value2)
T2: R(mid, acl1, activation-type=value2)
..



  1.  Require a new mid each time a client has to insert acl attributes.

For example:
T0: R(mid0)
T1: R(mid1, acl1, activation-type=value1)
T2: R(mid2, acl2, activation-type=value2)
T3: R(mid3, acl1, activation-type=value2)
...


Thoughts?

Cheers,
Med



_______________________________________________

Dots mailing list

Dots@ietf.org<mailto:Dots@ietf.org>

https://www.ietf.org/mailman/listinfo/dots