Re: [lisp] Secdir early review of draft-ietf-lisp-nexagon-04

Sharon Barkai <sharon.barkai@getnexar.com> Fri, 09 October 2020 17:32 UTC

Return-Path: <sharon.barkai@getnexar.com>
X-Original-To: lisp@ietfa.amsl.com
Delivered-To: lisp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4DA123A0D4D for <lisp@ietfa.amsl.com>; Fri, 9 Oct 2020 10:32:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level:
X-Spam-Status: No, score=-2.096 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, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=getnexar.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 JR8b6h0UzC6o for <lisp@ietfa.amsl.com>; Fri, 9 Oct 2020 10:32:48 -0700 (PDT)
Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) (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 B2B803A0D48 for <lisp@ietf.org>; Fri, 9 Oct 2020 10:32:47 -0700 (PDT)
Received: by mail-wr1-x42e.google.com with SMTP id n15so11125020wrq.2 for <lisp@ietf.org>; Fri, 09 Oct 2020 10:32:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=getnexar.com; s=google; h=content-transfer-encoding:mime-version:subject:from:in-reply-to :date:cc:message-id:references:to; bh=zQoHOlWpVXrT9ducAUYzvT59xPQJ+u4tcjPORX1FXZY=; b=JKVr+IaXd7J4XMURdFBsbVjzDcN5cLiWbTPQWuLfALB1ZHWgY81MySzMUHt+ME5Uoa VTtsWWw0t4oO+XnP/+Zf1wRti/Pbimqdm9N4fhfq5gCZNpUiqjI5dH9jO4mlXNSPZvU3 CRLy6ewYg9zxeuLudyPCV0B4/xYJZ1i4lw2FA=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:mime-version:subject :from:in-reply-to:date:cc:message-id:references:to; bh=zQoHOlWpVXrT9ducAUYzvT59xPQJ+u4tcjPORX1FXZY=; b=CvDZga/2ldmDLogidC8qMmQH/mIkXc1B4zcwW0NurweT9Xw1VZLrMRjSlUj58wbDOs R87F1aePZ+N2lZfemWNUQf22llVXoW1fTRnunz/E/AePX5kV/TOMI+8f0JoiZxdCj+iR VvW8qwCX4Ep1U6VUv5IjmDg2phDNkRpPBuzhr2J+X/pHliwT6ChKscImx4vfxKzEwtga xfEp7Xa8H7C6O4n+bunBwLlUFlEnESiRhnt2S+WUkK9RpQ27+NJ7YTaQxyDa7INGhiix 7BZcfPkLvhw7kDNZp7GlAG1O8tTxx3o7jnaAtIjNmp+2x7CmaMMQh3r1LYa+zqy4dnK/ 177Q==
X-Gm-Message-State: AOAM530auR1M4CdVaeULZn18ccITELZAhr3BPUgyls1nGpeshIxUkxtN jOF5ZV67hKp0q8T71pALc9fs8Rov8mpBGQ==
X-Google-Smtp-Source: ABdhPJz+6kmdgXZOVwfhVg79ZClRidIvKJlvmMjE6DFtnJgrB/csm0ZCFW+E92iDLklOwUorHZujUQ==
X-Received: by 2002:adf:9282:: with SMTP id 2mr15578691wrn.43.1602264765825; Fri, 09 Oct 2020 10:32:45 -0700 (PDT)
Received: from ?IPv6:2a02:14c:3cf:3500:1d1d:fa3d:2d38:7809? ([2a02:14c:3cf:3500:1d1d:fa3d:2d38:7809]) by smtp.gmail.com with ESMTPSA id h3sm8200167wrw.78.2020.10.09.10.32.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 09 Oct 2020 10:32:45 -0700 (PDT)
Content-Type: multipart/alternative; boundary="Apple-Mail-D951ED4D-6682-478F-AB05-8AA66F5D24E2"
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (1.0)
From: Sharon Barkai <sharon.barkai@getnexar.com>
In-Reply-To: <160218848061.12936.5873889616190686198@ietfa.amsl.com>
Date: Fri, 09 Oct 2020 20:32:44 +0300
Cc: secdir@ietf.org, lisp@ietf.org, draft-ietf-lisp-nexagon.all@ietf.org
Message-Id: <6524FE35-8DE2-4A3B-89ED-7B9933104FB2@getnexar.com>
References: <160218848061.12936.5873889616190686198@ietfa.amsl.com>
To: Tero Kivinen <kivinen@iki.fi>
X-Mailer: iPhone Mail (18A393)
Archived-At: <https://mailarchive.ietf.org/arch/msg/lisp/W9Hb3_j9deAyb7Q_rOvzRJ1-7mU>
Subject: Re: [lisp] Secdir early review of draft-ietf-lisp-nexagon-04
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lisp>, <mailto:lisp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lisp/>
List-Post: <mailto:lisp@ietf.org>
List-Help: <mailto:lisp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lisp>, <mailto:lisp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Oct 2020 17:32:50 -0000

Sorry for the confusion, David! really want to thank you for putting in the time, you clearly understood the draft completely and point to areas we invested thought on but can improve the wording.

Before adjusting the draft would like to rehash together with the group, Joel, and Luigi the themes pointed, which are spot on, so to reach the best possible language. 


1) End to end encryption -

Nexagon uses LISP overlay encapsulations end to end:
- between EIDClients and EdgeRTRs
- between ingress and egress EdgeRTR
- between EdgeRTRs and H3EIDServices

Depending on the specific  nexagon as service we would like to offer the option to encrypt all communications on these dynamic encapsulations.

We could suggest IPSec, draft-ietf-lisp-crypto-10 which specifies RFC2631 key exchange over LISP tunnels, also DTLS was suggested.

Should we determine one or just describe the geo privacy and commercial exposure if encryption is not used, especially on the tunnels between MobilityEIDClients and EdgeRTRs?

2) Spoofing and imposters - 

EdgeRTRs and H3EIDServices are provisioned in the service provider edge network. EdgeRTRs which are added to the network are provisioned with the mapping system, H3EIDServices are whitelist provisioned with their designated EdgeRTRs.

We rely on the edge network routers to detect and stop spoofing using industry standard double-lookup source/dest  mechanisms.
Should we state so?

The MobilityEIDClients are behind mobile access networks and go through AAA step before receiving ephemeral EIDs and EdgeRTR  RLOCs as anchors. 

This EID is based on their client ID credentials, and this EID is whitelist provisioned by the AAA to the EdgeRTR given to the client as an anchor. 

The ipv6 EIDs given to these clients reflect their credibility reputation and authorization level to pub-sub into the nexagon network. 

It is going to be very hard to guess a valid EIDClient which an EdgeRTR expects after AAA to whitelist provision. These EIDs are temporary and expire after 15 minutes.

Spoofed EIDClients which are sniffed are going to be detected by the EdgeRTRs because of mismatched client RLOC. Spoofed client RLOCs are detected by the mobile packet core.

Should we detail these aspects in security considerations ? 

3) Fake news and client trust -

This is a higher level concern as it is with many other protocols. Privacy and reputation require trade-offs. The lisp-nexagon network uses crowd-sourced street sampling to reflect current geo-state. Even the most honest client may still be wrong, have faulty vision gear, gps interruption, or buggy AI. Malicious clients may try to manipulate geo-state to their advantage, clear their path from traffic, or simply try to saw confusion. 

For this reason all detections are corroborated and trust level of each client is constantly scored by the H3EIDServices and updates the AAA system. This credit score update reflects the behavior of  the assigned ephemeral client EID not the client, a car for ecample. But the AAA system knows which client ID credentials the EID map to. The AAA system does not need to know the geo association of these EID scores. They can be aggregated from all H3EIDServices before handed to AAA.

We can describe this general behavior even though its part of management and orchestration and not part of the LISP-Nexagon interface specification.   

After we clear these 3 key items to everyone satisfaction we can quickly turn around the doc to one more iteration. 

Thank you in advance!

--szb
Cell: +972.53.2470068
WhatsApp: +1.650.492.0794

> On Oct 8, 2020, at 23:21, Tero Kivinen via Datatracker <noreply@ietf.org> wrote:
> 
> Reviewer: David Mandelberg
> Review result: Not Ready
> 
> I have reviewed this document as part of the security directorate's
> ongoing effort to review all IETF documents being processed by the
> IESG.  These comments were written primarily for the benefit of the
> security area directors.  Document editors and WG chairs should treat
> these comments just like any other last call comments.
> 
> The summary of the review is Not ready.
> 
> If I understand correctly, 64-bit Client EIDs serve as both 
> identification and authentication for a client. How many clients will an 
> EdgeRTR know about at a single time? How many EIDs can an attacker guess 
> per second? If an attacker can guess 1024 EIDs per second, and there are 
> 2^32 valid EIDs, I think that would mean it would take about 24 days on 
> average to guess a (non-specific) EID. Are my numbers off? Is that 
> acceptable?
> 
> How does the Client XTR verify the authenticity of the data coming from 
> Server XTRs? Is it relying on infrastructure security in the LISP and 
> server networks, and the obscurity of its own Client EID? E.g., if a 
> non-participant in the LISP network can get the Client EID and RLOC 
> (e.g., by sniffing packets), could they spoof an unsolicited multicast 
> packet to the client?
> 
> If the above is possible, I think this part of the Security 
> Considerations section should be fleshed out more, and possibly made 
> mandatory: "The traffic on the MobilityClient<>EdgeRTR interface is 
> tunneled  and its UDP content may be encrypted"
> 
> The Security Considerations section says "The H3ServiceEIDs themselves 
> decrypt and parse actual H3-R15 annotations" but as far as I can tell, 
> that's the first mention of any mandatory encryption of H3-R15 
> information. How does that encryption work?
> 
> I assume it wouldn't be that hard for an attacker to get legitimate 
> access to a Mobility Client (e.g., by buying a car). What would stop 
> them from sending the type of "fake-news" updates the Security 
> Considerations section talks about?
> 
> 
> 
>