Re: [OPSEC] Tsvart last call review of draft-ietf-opsec-probe-attribution-05

Justin Iurman <justin.iurman@uliege.be> Fri, 09 June 2023 15:25 UTC

Return-Path: <justin.iurman@uliege.be>
X-Original-To: opsec@ietfa.amsl.com
Delivered-To: opsec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A748DC151B3B; Fri, 9 Jun 2023 08:25:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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, NICE_REPLY_A=-0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=uliege.be
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 Hilww2pEp1sN; Fri, 9 Jun 2023 08:25:33 -0700 (PDT)
Received: from serv108.segi.ulg.ac.be (serv108.segi.ulg.ac.be [139.165.32.111]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E867FC151B21; Fri, 9 Jun 2023 08:25:28 -0700 (PDT)
Received: from [192.168.1.62] (125.179-65-87.adsl-dyn.isp.belgacom.be [87.65.179.125]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by serv108.segi.ulg.ac.be (Postfix) with ESMTPSA id 83CCA200BB9E; Fri, 9 Jun 2023 17:25:26 +0200 (CEST)
DKIM-Filter: OpenDKIM Filter v2.11.0 serv108.segi.ulg.ac.be 83CCA200BB9E
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uliege.be; s=ulg20190529; t=1686324326; bh=ZIRcm+PrG7lFJHKTnX2IyaGoDM1mF60v5Zehnkg+RGI=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=0Vwk//jAGdr1rKxR9N6uBc3WDoJSpeyh+XtfgjnOYTbwYwpe2ejfEjjyeeVBcjLF+ Jf2++UOBpmqrMooPtL/mlnFKfr2bkVOVfTCP8yG/OkFtW0EmJnEht9XhW4M6SL0SnM 0GsyJHbMR7eMWqM5eQXWuBrBU1RjrCcQdRUPqTyss9AF1yHaNIW4OhhKw/0UQFtWXU /QAKw8+QrGq8FUtc5s9MEdNv5/DSmTpGZ1dmwSC/yIeb1ERVNmrjuaJES5y+bB89aa 6kGcJl5au3NzGnQ9FGCbOl5bguXpuROLiCNb9UiEoIO2iypWpTfYb7R9dlaP0+Q0nU 2oXGY6iPzTxlw==
Message-ID: <c94fde98-f9c0-f17b-a2bb-1cf9b7907bd1@uliege.be>
Date: Fri, 09 Jun 2023 17:25:26 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0
To: Magnus Westerlund <magnus.westerlund@ericsson.com>, tsv-art@ietf.org
Cc: draft-ietf-opsec-probe-attribution.all@ietf.org, last-call@ietf.org, opsec@ietf.org
References: <168596102948.13374.4476143366687447773@ietfa.amsl.com>
Content-Language: en-US
From: Justin Iurman <justin.iurman@uliege.be>
In-Reply-To: <168596102948.13374.4476143366687447773@ietfa.amsl.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/opsec/FlfWk-Jx-ufhPU3or9WvC1uAXyw>
Subject: Re: [OPSEC] Tsvart last call review of draft-ietf-opsec-probe-attribution-05
X-BeenThere: opsec@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: opsec wg mailing list <opsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/opsec>, <mailto:opsec-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/opsec/>
List-Post: <mailto:opsec@ietf.org>
List-Help: <mailto:opsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/opsec>, <mailto:opsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Jun 2023 15:25:38 -0000

Hi Magnus,

Thanks for the review. Please see inline ([JI]).

On 6/5/23 12:30, Magnus Westerlund via Datatracker wrote:
> Reviewer: Magnus Westerlund
> Review result: Not Ready
> 
> This document has been reviewed as part of the transport area review team's
> ongoing effort to review key IETF documents. These comments were written
> primarily for the transport area directors, but are copied to the document's
> authors and WG to allow them to address any issues raised and also to the IETF
> discussion list for information.
> 
> When done at the time of IETF Last Call, the authors should consider this
> review as part of the last-call comments they receive. Please always CC
> tsv-art@ietf.org if you reply to or forward this review.
> 
> I questions why this document is published as informational status. It appears
> to at least define a format with a well known URI. I would think a standards
> track would be a more approrpiate status.

[JI] As you mentioned at the end of your email, RFC 9116 is 
informational and did get a permanent well known URI, which is similar 
to this draft. Initially, we wanted to keep things simple (hence the 
informational status), so we would prefer to keep the current status as 
is (although we do not have a strong opinion), unless consensus decides 
otherwise.

> Section 3:
> 
> "if the reverse DNS record for 2001:db8::dead exists"
> 
> What should one do if there are multiple PTR records for a given address? This
> I would expect to be fairly likely in some multi-tennant systems.

[JI] Good catch, we'll clarify that part.

> Section 4:
> 
> • for a [RFC4443] ICMPv6 echo request: in the optional data (see section 4.1 of
> [RFC4443]); • for a [RFC792] ICMPv4 echo request: in the optional data;
> 
> First of all there are no "optional data" there is a "data" field. I think the
> reference to which field should be clearer, i.e. "in the data field".
> 
> "for a [RFC768] UDP datagram: in the data part. Note that if the probe is
> destined to a listened-to/well-known UDP port, the inclusion of the probe
> description URI may produce undefined results;"
> 
> I think this is really understating the issue. If the probe is done using a
> protocol that has any fields in the UDP payload it is unlikely that the
> placement of the URI first will work at all, unless the measurement protocol is
> updated. I would think an placement in the end would be more likely to
> function, unless the UDP payload has no other than random data. However, in
> some case it will simply not work without updating the probe protocol.
> 
> For the future including the attribution URI in an UDP options would be a
> potential solution that can be looked into.
> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-udp-options/

[JI] Indeed. Probe attribution should probably be restricted to probes 
with random data payload. Otherwise, it becomes too complicated (see the 
explanation below, at the end).

> "for a [RFC9293] TCP packet with the SYN flag: data is allowed in TCP packets
> with the SYN flag per section 3.4 of [RFC9293] (2nd paragraph). However, it may
> change the way the packet is processed, i.e., SYN packets containing data might
> be discarded;"
> 
> So from an TCP using protocol, there are little difference in sending the data
> in syn, or sending it in the first packets after established state. The data
> will reach the application layer, this does not bypass the issue of the data
> ending up in the upper layer application. So why are there specific discussion
> of the data in TCP syn.

[JI] Unfortunately, if you have SYN+data, you are more exposed to a drop 
(hence the discussion).

> Also, I think the reference to Section 3.4 of RFC9293 is pointing to the wrong
> section. Because that paragraph discusses sequence number space wrapping which
> appear not that relevant here.
> 
> So in general I think the attempt to apply in-band URI to UDP and TCP are
> likely problematic and may have to be dialed back into being recommended to be
> included in protocol fields that otherwise would include random data. Have it
> been considered to define a magical word that would prefix the URI so that it
> might be easier to look for potential matches in the payloads? It makes sense
> to volunteerily include this URI in probe packets for measurements that can do
> that without making there packets unusable for their main purpose.

[JI] Yes, having a magical word was considered. However, as mentioned, 
we wanted to keep things simple. Besides, having a magical word would 
allow for an easy filtering, which could be worse. Indeed, if I'm the 
researcher and decide to identify my probes (good intention), I don't 
want to get shot for that in return (if so, why should I bother 
identifying my probes?). So this is a double-edged weapon and my 
measurements could be biased in that case.

> Section 8.
> 
> I noted that you expect permanent status.
> 
> Reading RFC 8615 I noticed this paragraph:
> 
> Values defined by Standards Track RFCs and other open standards (in
>     the sense of [RFC2026], Section 7.1.1) have a status of "permanent".
>     Other values can also be registered as permanent, if the experts find
>     that they are in use, in consultation with the community.  Other
>     values should be registered as "provisional".
> 
> This document is targeting informational status. Which I personally questions.
> However, I do see the point of having this format have a well-known URI that
> are permanent, but according to instruction this ends up in a grey zone. It
> might be that the expert want to waive this. I do also note that RFC 9116 did
> get permanent.
> 
> Another aspect that I find worrying.
> 
> This draft appear to never to have been even mentioned in the IPPM group. Being
> a WG that define active measurements it should have been done, and
> consideration of how to include the attribution in the IPPM protocols should
> have taken place. Although IPPM targets measurements between collaborating
> nodes, it appears some of the concerns from on path nodes about measurement
> could still be relevant. So I would recommend that this work is at least
> brought up in IPPM to discuss if there are need to extend.

[JI] The problem is, what is the limit then? If we do this, we should 
also ask other WGs to have probe attribution extended to many, MANY 
protocols. Besides, this draft does not necessarily target 
IPPM/measurement protocols specifically. I think we should definitely 
clarify that, and maybe provide a solution for UDP and TCP with 
non-random payload data (i.e., real traffic), with e.g., UDP and TCP 
options, although it is probably expected to have a probe attribution 
for weird, crafted or unexpected probes rather than real traffic.

Thanks,
Justin