Re: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS 03/22/2023 (Mar 22 2023)

"Lubashev, Igor" <ilubashe@akamai.com> Wed, 29 March 2023 02:42 UTC

Return-Path: <ilubashe@akamai.com>
X-Original-To: sidrops@ietfa.amsl.com
Delivered-To: sidrops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 879F6C1524D3; Tue, 28 Mar 2023 19:42:52 -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, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=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=akamai.com
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 tMANSpSLGK_e; Tue, 28 Mar 2023 19:42:48 -0700 (PDT)
Received: from mx0b-00190b01.pphosted.com (mx0b-00190b01.pphosted.com [IPv6:2620:100:9005:57f::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CD65FC1524DE; Tue, 28 Mar 2023 19:42:48 -0700 (PDT)
Received: from pps.filterd (m0122331.ppops.net [127.0.0.1]) by mx0b-00190b01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 32T0E8nU010453; Wed, 29 Mar 2023 03:42:48 +0100
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akamai.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=jan2016.eng; bh=s2sORi9YUw5g6OwrCsjSPH+3C+jITQ5So0SlPmsStB4=; b=H2/JS+ZSe8kt4XzFN3oQWGVaG4y9+zTZmWRXY0LCLy6K0YVbv1mVMabKBu1dmFMUrki0 SccYDEaMFbAP/vfwe67bqxjxuyRUkLfE93VFug3YcvNz437n5IZ+nZBVZOo9x46XKZjJ 0AlqJY5XS+WLwVjl062DvLWol675sJx4SXjSwlXoptSOg3rLlERSqix8yNGfGBIlCjCp YdFx7+JmWupW9OgObscXqmpX1fi96hiV595bbjoHmDI6TgsHTkbgnp3yGZaBUoxV5lYA xyAJI4s0lsqZLFkhAwRT0HliouAIN+Ungoeu3vztx9XUAGQLjYCRgEVORs1oBSjTCyNI kw==
Received: from prod-mail-ppoint3 (a72-247-45-31.deploy.static.akamaitechnologies.com [72.247.45.31] (may be forged)) by mx0b-00190b01.pphosted.com (PPS) with ESMTPS id 3phsdrcqar-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 29 Mar 2023 03:42:47 +0100
Received: from pps.filterd (prod-mail-ppoint3.akamai.com [127.0.0.1]) by prod-mail-ppoint3.akamai.com (8.17.1.19/8.17.1.19) with ESMTP id 32T1T8Ji020347; Tue, 28 Mar 2023 22:42:47 -0400
Received: from email.msg.corp.akamai.com ([172.27.50.207]) by prod-mail-ppoint3.akamai.com (PPS) with ESMTPS id 3pjdv0tf8q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 28 Mar 2023 22:42:46 -0400
Received: from ustx2ex-dag4mb3.msg.corp.akamai.com (172.27.50.202) by ustx2ex-dag4mb8.msg.corp.akamai.com (172.27.50.207) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.21; Tue, 28 Mar 2023 19:42:46 -0700
Received: from ustx2ex-dag4mb3.msg.corp.akamai.com ([172.27.50.202]) by ustx2ex-dag4mb3.msg.corp.akamai.com ([172.27.50.202]) with mapi id 15.02.1118.021; Tue, 28 Mar 2023 19:42:46 -0700
From: "Lubashev, Igor" <ilubashe@akamai.com>
To: "Sriram, Kotikalapudi (Fed)" <kotikalapudi.sriram@nist.gov>
CC: "sidrops@ietf.org" <sidrops@ietf.org>, "draft-ietf-sidrops-aspa-verification@ietf.org" <draft-ietf-sidrops-aspa-verification@ietf.org>, "draft-ietf-sidrops-aspa-profile@ietf.org" <draft-ietf-sidrops-aspa-profile@ietf.org>
Thread-Topic: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS 03/22/2023 (Mar 22 2023)
Thread-Index: AQHZUV5vNJLZt5LW/keL30gQG63u3q78M0KAgAu/3gCAB0JdAIAA/GCAgAAE8wCAAHSisIAAv6IA//+kEhA=
Date: Wed, 29 Mar 2023 02:42:46 +0000
Message-ID: <c62da49ce2a142999260371a0af7b673@akamai.com>
References: <SA1PR09MB814241245D01E81BADE3ED0884CF9@SA1PR09MB8142.namprd09.prod.outlook.com> <31FDE1E9-3E87-4011-B65B-C6B3A264303F@vigilsec.com> <SA1PR09MB81427B4A1B126A5D1C1E289C84CF9@SA1PR09MB8142.namprd09.prod.outlook.com> <SA1PR09MB8142E41F2D6B537BCAA758F384CC9@SA1PR09MB8142.namprd09.prod.outlook.com> <CAL9jLaYz3OhcwBBcVMqnUseBR9J1ZyktcJo5YLeefQHMoYJu+A@mail.gmail.com> <CAL9jLaZ7eDc+zbhapS8dTYQKnTfgLd=MOPYw97-qcJ4eP6S6Mg@mail.gmail.com> <CAL9jLaYJ4ODfumG9Yk3-yv=_TaTSUeD++U4sGy7S-0xWcGBQPw@mail.gmail.com> <ZBGqSVL9sSqnAiJc@diehard.n-r-g.com> <SA1PR09MB8142E9F71F250B83062C724884869@SA1PR09MB8142.namprd09.prod.outlook.com> <ZCGcYHJ9PyrjgR+V@diehard.n-r-g.com> <SA1PR09MB8142EA7F33880679E9B509D384889@SA1PR09MB8142.namprd09.prod.outlook.com> <SA1PR09MB81426E1BB66D6DF31860F26984889@SA1PR09MB8142.namprd09.prod.outlook.com> <ed0146b09da346b2b48cb9701240926c@akamai.com> <SA1PR09MB81427D28EF661F9DAB05FB9B84889@SA1PR09MB8142.namprd09.prod.outlook.com>
In-Reply-To: <SA1PR09MB81427D28EF661F9DAB05FB9B84889@SA1PR09MB8142.namprd09.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels:
x-originating-ip: [172.27.164.43]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-03-24_11,2023-03-28_02,2023-02-09_01
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 malwarescore=0 spamscore=0 adultscore=0 phishscore=0 suspectscore=0 mlxlogscore=999 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2303290020
X-Proofpoint-ORIG-GUID: CR9U_QzUMcHQGVXPpSyAuLl6Td9J9ks-
X-Proofpoint-GUID: CR9U_QzUMcHQGVXPpSyAuLl6Td9J9ks-
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-03-24_11,2023-03-28_02,2023-02-09_01
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 clxscore=1015 malwarescore=0 mlxlogscore=999 adultscore=0 bulkscore=0 mlxscore=0 impostorscore=0 lowpriorityscore=0 priorityscore=1501 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2303290021
Archived-At: <https://mailarchive.ietf.org/arch/msg/sidrops/12ypZExpQgNcBr5z5juOpMeRtW8>
Subject: Re: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS 03/22/2023 (Mar 22 2023)
X-BeenThere: sidrops@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: A list for the SIDR Operations WG <sidrops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sidrops>, <mailto:sidrops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sidrops/>
List-Post: <mailto:sidrops@ietf.org>
List-Help: <mailto:sidrops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sidrops>, <mailto:sidrops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 29 Mar 2023 02:42:52 -0000

Thanks, Sriram.  Yes, some additional clarification for the properties would be helpful.

I think it would be valuable to mention another "mitigation property".  When an AS generates ASPA, it makes it less likely that prefixes belonging to its customers will be hijacked, if the customers also generate ASPA.
A hijack attack that resists ASPA validation requires the hijacker to prepend its AS_PATH with a prefix containing the shortest possible sequence of ASNs identified as Providers in ASPA (transitively), starting from the hijacked ASN up to the first Provider ASN not in ASPA. When a provider generates ASPA, it forces attacker's AP_PATH to be one ASN longer, which reduces the likelihood of success of such hijack.

I think this could be a great business driver for ASPA adoption -- customers would be seeking out providers with an ASPA registration (and especially those whose providers also have ASPA registrations), since that would make their prefixes more resistant to hijacks. 

- Igor


On Tuesday, March 28, 2023 7:23 PM, Sriram, Kotikalapudi wrote:
> Hi Igor,
> 
> Thanks for the analysis.
> 
> In your first scenario, it is not a forged-origin hijack. Instead, it is a forged-
> path-segment attack.
> 
> One can say that a forged-path-segment attack is also always detectable (in
> the upstream direction) provided all ASes in the path segment are ASPA
> compliant.
> 
> In your second scenario, the route is going outside the island and entering
> back.  So, you asked:
> 
> >Does it mean that the BGP advertisement is only forwarded within the
> "island"?  If so, AS B should be able to identify the AS that leaked the route,
> no?
> 
> Yes, either the whole route (all ASes in it) or at least the three consecutive
> ASes constituting the route leak must be within the ASPA island.
> 
> I think the attribution is a bit hard. If there is a route leak, the verifying AS
> knows which AS seems to be the leaking AS. But it cannot distinguish if its
> provider sent a fabricated path. But the path will be detected to be a route
> leak either way.
> 
> I will recheck the wording of the properties to be clear.
> 
> Sriram
> 
> 
> ________________________________________
> From: Lubashev, Igor <ilubashe=40akamai.com@dmarc.ietf.org>
> Sent: Wednesday, March 29, 2023 1:16 AM
> To: Sriram, Kotikalapudi (Fed); Claudio Jeker
> Cc: sidrops@ietf.org; draft-ietf-sidrops-aspa-verification@ietf.org; draft-ietf-
> sidrops-aspa-profile@ietf.org
> Subject: RE: [Sidrops] WGLC = draft-ietf-sidrops-aspa-verification - ENDS
> 03/22/2023 (Mar 22 2023)
> 
> Sriram, thank you for updating the draft and getting into additional details of
> what leaks and hijacks can be mitigated during partial ASPA deployment.
> 
> 
> 
> I have a few questions about the new Section 8 "mitigation properties".
> 
> 
> 
> > 2.  Again let AS A and AS B be any two ASes in the Internet doing
> 
>                       ASPA (generation and verification) and no assumption is made
> 
>                       about the deployment status of other ASes.  Consider a route
> 
>                       received at AS B from its customer or lateral peer that is a
> 
>                       forged-origin prefix hijack [RFC9319] involving AS A as the
> 
>                       forged-origin.  The ASPA-based path verification at AS B always
> 
>                       detects such a forged-origin prefix hijack.
> 
> 
> 
> See the diagram below. Suppose AS B receives AS_PATH [C, P, A] from AS C,
> where A is a forged origin, AS P is A's provider in ASPA, and AS C is B's
> customer.  AS P did not deploy ASPA.  How would AS B detect this hijack of A
> by C?
> 
> 
> 
>  Z
> 
> / \
> 
> B   P
> 
> |   |
> 
> C   A
> 
> 
> 
> 
> 
> > 3.  Consider an ASPA island (i.e., a connected set of ASPA capable
> 
>                       ASes).  Let AS A and AS B be any two ASes in the ASPA island.
> 
>                       Consider a route propagated from AS A in any direction (i.e., to
> 
>                       a neighbor AS with any of the BGP roles described in Section 2)
> 
>                       and leaked by an offending AS in the AS path before being
> 
>                       received at AS B from any direction.  The ASPA-based path
> 
>                       verification at AS B always detects such a route leak though it
> 
>                        may not be able to identify the AS that originated the leak.
> 
> 
> 
> Does it mean that the BGP advertisement is only forwarded within the
> "island"?  If so, AS B should be able to identify the AS that leaked the route,
> no?
> 
> But if forwarding is allowed outside of the island, AS B will not always be able
> to detect a route leaked outside of the island. In the diagram below, AS A
> originates a route to its Provider AS P (outside of the island), which forwards
> it to its other customer AS L, which leaks it to its other provider AS C, which is
> a provider for AS B (in the island). Since there are no ASPA Objects for ASes
> P, L, and C, AS B cannot tell whether AS L is a common customer or a common
> provider for ASes P and C.
> 
>  P  C
> 
> /\ / /
> 
> A  L /
> 
> \  / <- [C,L,P,A]
> 
>   B
> 
> 
> 
> Many thanks,
> 
> 
> 
>   *   Igor
>