<?xml version="1.0" encoding="UTF-8"?><?rfc toc="yes"?> <?rfc symrefs="yes"?> <?rfc compact="yes"?> <?rfc subcompact="no"?> <?rfc strict="no"?> <?rfc rfcedstyle="yes"?> <?rfc comments="yes"?> <?rfc inline="yes"?><!DOCTYPE rfc [ <!ENTITY nbsp " "> <!ENTITY zwsp "​"> <!ENTITY nbhy "‑"> <!ENTITY wj "⁠"> ]> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="bcp"seriesNo="185"consensus="true" docName="draft-ietf-sidrops-rpkimaxlen-15"submissionType="IETF"number="9319" ipr="trust200902"consensus="true">tocInclude="true" symRefs="true" sortRefs="true" updates="" obsoletes="" xml:lang="en" version="3"> <!-- xml2rfc v2v3 conversion 3.14.0 --> <front> <title abbrev="RPKI maxLength">The Use of maxLength in theRPKI</title>Resource Public Key Infrastructure (RPKI)</title> <seriesInfo name="RFC" value="9319"/> <seriesInfo name="BCP" value="185"/> <author fullname="Yossi Gilad" initials="Y." surname="Gilad"> <organization>Hebrew University of Jerusalem</organization> <address> <postal><street>Rothburg<extaddr>Rothburg FamilyBuildings, EdmondBuildings</extaddr> <street>Edmond J. Safra Campus</street> <city>Jerusalem</city><region></region><region/> <code>9190416</code> <country>Israel</country> </postal> <email>yossigi@cs.huji.ac.il</email> </address> </author> <author fullname="Sharon Goldberg" initials="S." surname="Goldberg"> <organization>Boston University</organization> <address> <postal> <street>111 Cummington St, MCS135</street> <city>Boston</city> <region>MA</region> <code>02215</code><country>USA</country><country>United States of America</country> </postal> <email>goldbe@cs.bu.edu</email> </address> </author> <author fullname="Kotikalapudi Sriram" initials="K." surname="Sriram"> <organization abbrev="USA NIST">USA National Institute of Standards and Technology</organization> <address> <postal> <street>100 Bureau Drive</street> <city>Gaithersburg</city> <region>MD</region> <code>20899</code><country>USA</country><country>United States of America</country> </postal> <email>kotikalapudi.sriram@nist.gov</email> </address> </author> <author fullname="Job Snijders" initials="J." surname="Snijders"> <organization>Fastly</organization> <address> <postal> <street/> <code/> <city>Amsterdam</city> <country>Netherlands</country> </postal> <email>job@fastly.com</email> </address> </author> <author fullname="Ben Maddison" initials="B." surname="Maddison"> <organization>Workonline Communications</organization> <address> <postal> <street>114 West St</street> <city>Johannesburg</city> <code>2196</code> <country>South Africa</country> </postal> <email>benm@workonline.africa</email> </address> </author> <date year="2022" month="October" /><workgroup>Internet Engineering Task Force (IETF)</workgroup><area>ops</area> <workgroup>sidrops</workgroup> <keyword>Secure Internet routing</keyword> <keyword>Resource public key infrastructure</keyword> <abstract><t> This<t>This document recommends ways to reduce the forged-origin hijack attack surface by prudently limiting the set of IP prefixes that are included in a Route Origin Authorization (ROA). One recommendation is to avoid using the maxLength attribute in ROAs except in some specific cases. The recommendations complement and extend those in RFC 7115.TheThis document also discusses the creation of ROAs for facilitating the use of Distributed Denial of Service (DDoS) mitigation services. Considerations related to ROAs andorigin validationRPKI-based Route Origin Validation (RPKI-ROV) in the context of destination-based Remotely Triggered Discard Route (RTDR) (elsewhere referred to as "Remotely Triggered Black Hole") filtering are also highlighted. </t> </abstract> </front> <middle> <sectiontitle="Introduction"anchor="intro"><t> The RPKI<name>Introduction</name> <t>The Resource Public Key Infrastructure (RPKI) <xref target="RFC6480"/> uses Route Origin Authorizations (ROAs) to create a cryptographically verifiable mapping from an IP prefix to a set ofautonomous systemsAutonomous Systems (ASes) that are authorized to originate that prefix. Each ROA contains a set of IPprefixes,prefixes and the AS number of one of the ASes authorized to originate all the IP prefixes in the set <xref target="RFC6482"/>. The ROA is cryptographically signed by the party that holds a certificate for the set of IP prefixes. </t><t> The<t>The ROA format also supports a maxLength attribute. According to <xref target="RFC6482"/>, "When present, the maxLength specifies the maximum length of the IP address prefix that the AS is authorized to advertise." Thus, rather than requiring the ROA to list each prefix that the AS is authorized to originate, the maxLength attribute provides a shorthand that authorizes an AS to originate a set of IP prefixes. </t><t> However,<t>However, measurements of RPKI deployments have found that the use of the maxLength attribute in ROAs tends to lead to security problems. In particular, measurements taken in June 2017 showed that of the prefixes specified in ROAs that use the maxLength attribute, 84% were vulnerable to a forged-origin sub-prefix hijack <xreftarget="HARMFUL" />.target="GSG17"/>. The forged-origin prefix or sub-prefix hijack involves inserting the legitimate AS as specified in the ROA as the origin AS in theAS_PATH, andAS_PATH; the hijack can be launched against any IP prefix/sub-prefix that has a ROA. Consider a prefix/sub-prefix that has a ROAbutthat isunused, i.e.,unused (i.e., not announced in BGP by a legitimateAS.AS). Aforged originforged-origin hijack involving such a prefix/sub-prefix can propagate widely throughout the Internet. On the other hand, if the prefix/sub-prefix were announced by the legitimate AS, then the propagation of the forged-origin hijack is somewhat limited because of its increased AS_PATH length relative to the legitimate announcement. Of course, forged-origin hijacks are harmful in bothcasescases, but the extent of harm is greater for unannounced prefixes. See <xref target="hijack"/> for detailed discussion. </t><t> For<t>For this reason, this document recommends that, whenever possible, operatorsSHOULD<bcp14>SHOULD</bcp14> use "minimal ROAs" that authorize only those IP prefixes that are actually originated in BGP, and no other prefixes. Further, it recommends ways to reduce the forged-origin attack surface by prudently limiting the address space that is included inRoute Origin Authorizations (ROAs).ROAs. One recommendation is to avoid using the maxLength attribute in ROAs except in some specific cases. The recommendations complement and extend those in <xref target="RFC7115"/>. The document also discusses the creation of ROAs for facilitating the use ofDistributed Denial of Service (DDoS)DDoS mitigation services. Considerations related to ROAs andorigin validationRPKI-ROV in the context of destination-based Remotely Triggered Discard Route (RTDR) (elsewhere referred to as "Remotely Triggered Black Hole") filtering are also highlighted. </t><t> One<t>Please note that the term "RPKI-based Route Origin Validation" and the corresponding acronym "RPKI-ROV" that are used in this document mean the same as the term "Prefix Origin Validation" used in <xref target="RFC6811"/>. </t> <t>One ideal place to implement theROA relatedROA-related recommendations is in the user interfaces for configuring ROAs. Recommendations for implementors of such user interfaces are provided in <xreftarget="ui"/>target="ui"/>. </t><t> Best current<t>The practices described in this document require no changes to the RPKIspecificationspecifications and will not increase the number of signed ROAs in the RPKI because ROAs already support lists of IP prefixes <xref target="RFC6482"/>. </t><section title="Requirements"> <t> The<section> <name>Requirements</name> <t>The key words"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY","<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", "<bcp14>MAY</bcp14>", and"OPTIONAL""<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as described inBCP 14BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here. </t> </section><section title=" Documentation Prefixes"> <t> The<section> <name>Documentation Prefixes</name> <t>The documentation prefixes recommended in <xref target="RFC5737"/> are insufficient for use as example prefixes in this document. Therefore, this document uses<xref target="RFC1918" />the address space defined in <xref target="RFC1918"/> for constructing example prefixes. </t><t> Note<t>Note that although the examples in this document are presented using IPv4 prefixes, all the analysis thereof and the recommendations made are equally valid for the equivalent IPv6 cases. </t> </section> </section><section title="Suggested Reading"> <t> It<section> <name>Suggested Reading</name> <t>It is assumed that the reader understands BGP <xref target="RFC4271"/>, RPKI <xref target="RFC6480"/>,Route Origin Authorizations (ROAs)ROAs <xref target="RFC6482"/>,RPKI-based Prefix ValidationRPKI-ROV <xref target="RFC6811"/>, and BGPsec <xref target="RFC8205"/>. </t> </section> <sectiontitle="Forged-Origin Sub-prefix Hijack"anchor="hijack"><t> A<name>Forged-Origin Sub-Prefix Hijack</name> <t>A detailed description and discussion of forged-origin sub-prefix hijacks are presented here, especially considering the case when the sub-prefix is not announced in BGP. The forged-origin sub-prefix hijack is relevant to a scenario in which:<list> <t> (1) the</t> <ol type="(%d)" spacing="normal"> <li>the RPKI <xref target="RFC6480"/> is deployed,and </t> <t> (2) routersand</li> <li>routers useRPKI origin validationRPKI-ROV to drop invalid routes <xreftarget="RFC6811" />,target="RFC6811"/>, but</t> <t> (3) BGPsec</li> <li>BGPsec <xref target="RFC8205"/> (or any similar method to validate the truthfulness of the BGP AS_PATH attribute) is notdeployed. </t> </list> Notedeployed.</li></ol> <t>Note that this set of assumptions accurately describes a substantial and growing number of large Internet networks at the time of writing. </t><t> The<t>The forged-origin sub-prefix hijack <xreftarget="RFC7115" />target="RFC7115"/> <xreftarget="GCHSS" />target="GCHSS"/> is described here using a running example. </t><t> Consider<t>Consider the IP prefix192.168.0.0/16192.168.0.0/16, which is allocated to an organization that also operates AS 64496. In BGP, AS 64496 originates the IP prefix 192.168.0.0/16 as well as its sub-prefix 192.168.225.0/24. Therefore, the RPKI should contain a ROA authorizing AS 64496 to originate these two IP prefixes. </t><t> Suppose,<t>Suppose, however, the organization issues and publishes a ROA including a maxLength value of 24:<list> <t> ROA:(192.168.0.0/16-24, AS 64496)</t></list> We<t indent="3">ROA:(192.168.0.0/16-24, AS 64496)</t> <t>We refer to the above as a "loose ROA" since it authorizes AS 64496 to originate any sub-prefix of 192.168.0.0/16 up to and including length /24, rather than only those prefixes that are intended to be announced in BGP. </t><t> Because<t>Because AS 64496 only originates two prefixes inBGP: 192.168.0.0/16BGP (192.168.0.0/16 and192.168.225.0/24,192.168.225.0/24), all other prefixes authorized by the"loose ROA"loose ROA (for instance,192.168.0.0/24),192.168.0.0/24) are vulnerable to the following forged-origin sub-prefix hijack <xref target="RFC7115"/> <xreftarget="GCHSS" />: <list> <t> Thetarget="GCHSS"/>: </t> <t indent="3">The hijacker AS 64511 sends a BGP announcement "192.168.0.0/24: AS 64511, AS 64496", falsely claiming that AS 64511 is a neighbor of AS 64496 andfalsely claimingthat AS 64496 originates the IP prefix 192.168.0.0/24. In fact, the IP prefix 192.168.0.0/24 is not originated by AS64496. </t> <t> The64496.</t> <t indent="3">The hijacker's BGP announcement is valid according to the RPKI since the ROA (192.168.0.0/16-24, AS 64496) authorizes AS 64496 to originate BGP routes for192.168.0.0/24. </t> <t> Because192.168.0.0/24.</t> <t indent="3">Because AS 64496 does not actually originate a route for 192.168.0.0/24, the hijacker's route is the only route for 192.168.0.0/24. Longest-prefix-match routing ensures that the hijacker's route to the sub-prefix 192.168.0.0/24 is always preferred over the legitimate route to 192.168.0.0/16 originated by AS64496. </t> </list> Thus,64496.</t> <t>Thus, the hijacker's route propagates through the Internet, and traffic destined for IP addresses in 192.168.0.0/24 will be delivered to the hijacker. </t><t> The<t>The forged-origin sub-prefix hijack would have failed if a"minimal ROA"minimal ROA as describedbelowin <xref target="recommendations"/> was used instead of the"loose ROA".loose ROA. In this example, a"minimal ROA"minimal ROA would be:<list> <t> ROA:(192.168.0.0/16,</t> <t indent="3">ROA:(192.168.0.0/16, 192.168.225.0/24, AS64496) </t> </list> This64496)</t> <t>This ROA is "minimal" because it includes only those IP prefixes that AS 64496 originates in BGP, but no other IP prefixes <xreftarget="RFC6907" />.target="RFC6907"/>. </t><t> The "minimal ROA"<t>The minimal ROA renders AS 64511's BGP announcement invalid because:<list> <t> (1) this</t> <ol type="(%d)" spacing="normal"> <li>this ROA "covers" the attacker's announcement (since 192.168.0.0/24 is a sub-prefix of 192.168.0.0/16),and </t> <t> (2) thereand</li> <li>there is no ROA "matching" the attacker's announcement (there is no ROA for AS 64511 and IP prefix 192.168.0.0/24) <xreftarget="RFC6811" />. </t> </list> Iftarget="RFC6811"/>.</li> </ol> <t>If routers ignore invalid BGP announcements, the minimal ROA above ensures that the sub-prefix hijack will fail. </t><t> Thus,<t>Thus, if a"minimal ROA"minimal ROA had been used, the attacker would be forced to launch a forged-origin prefix hijack in order to attracttraffic,traffic as follows:<list> <t> The</t> <t indent="3">The hijacker AS 64511 sends a BGP announcement "192.168.0.0/16: AS 64511, AS 64496", falsely claiming that AS 64511 is a neighbor of AS64496. </t> </list> </t> <t> This64496.</t> <t>This forged-origin prefix hijack is significantly less damaging than the forged-origin sub-prefix hijack:<list> <t> AS</t> <t indent="3">AS 64496 legitimately originates 192.168.0.0/16 in BGP, so the hijacker AS 64511 is not presenting the only route to192.168.0.0/16. </t> <t> Moreover,192.168.0.0/16.</t> <t indent="3">Moreover, the path originated by AS 64511 is one hop longer than the path originated by the legitimate origin AS64496. </t> </list> As64496.</t> <t>As discussed in <xref target="LSG16"/>, this means that the hijacker will attract less traffic than it would have in the forged-origin sub-prefixhijack,hijack where the hijacker presents the only route to the hijacked sub-prefix. </t><t> In<t>In summary, a forged-origin sub-prefix hijack has the same impact as a regular sub-prefix hijack, despite the increased AS_PATH length of the illegitimate route. A forged-origin sub-prefix hijack is also more damaging than the forged-origin prefix hijack. </t> </section><section title="Measurements<section> <name>Measurements of theRPKI"> <t> NetworkRPKI</name> <t>Network measurements taken in June 2017 showed that 12% of the IP prefixes authorized in ROAs have a maxLength value longer than their prefix length. Of these, the vast majority (84%) were non-minimal, as they included sub-prefixes that are not announced in BGP by the legitimateAS,AS and were thus vulnerable to forged-origin sub-prefix hijacks. See <xref target="GSG17"/> for details. </t><t> These<t>These measurements suggest that operators commonly misconfigure the maxLengthattribute,attribute and unwittingly open themselves up to forged-origin sub-prefix hijacks. That is, they are exposing a much larger attack surface for forged-origin hijacks than necessary. </t> </section> <sectiontitle="Recommendationsanchor="recommendations"> <name>Recommendations about Minimal ROAs andmaxLength" anchor="recommendations"> <t> Operators SHOULDmaxLength</name> <t>Operators <bcp14>SHOULD</bcp14> use"minimal ROAs"minimal ROAs whenever possible. A minimal ROA contains only those IP prefixes that are actually originated by an AS in BGP and no other IP prefixes.(SeeSee <xref target="hijack"/> for anexample.)example. </t><t> In<t>In general, operatorsSHOULD<bcp14>SHOULD</bcp14> avoid using the maxLength attribute in their ROAs, since its inclusion will usually make the ROA non-minimal. </t><t> One<t>One such exception may be when all more specific prefixes permitted by the maxLength value are actually announced by the AS in the ROA. Another exception is where: (a) the maxLength value is substantially larger compared to the specified prefix length in the ROA, and (b) a large number of more specific prefixes in that range are announced by the AS in the ROA. In practice, this case should occur rarely (if at all). Operator discretion is necessary in thiscase. </t> <t> Thiscase.</t> <t>This practice requires no changes to the RPKIspecificationspecifications and need not increase the number of signed ROAs in the RPKI because ROAs already support lists of IP prefixes <xref target="RFC6482"/>. Seealso<xref target="GSG17"/> for further discussion of why this practice will have minimal impact on the performance of the RPKI ecosystem. </t><t> Operators implementing<t>Operators that implement these recommendations andthathave existing ROAs published in the RPKI systemMUST<bcp14>MUST</bcp14> perform a review of such objects, especially where they make use of the maxLength attribute, to ensure that the set of included prefixes is "minimal" with respect to the current BGP origination and routing policies. Published ROAsMUST<bcp14>MUST</bcp14> be replaced as necessary. Such an exerciseMUST<bcp14>MUST</bcp14> be repeated whenever the operator makes changes to either policy. </t> <sectiontitle="Facilitatinganchor="nominimal"> <name>Facilitating Ad Hoc Routing Changes and DDoSMitigation" anchor="nominimal"> <t> OperationalMitigation</name> <t>Operational requirements may require that a route for an IP prefix be originated on an ad hoc basis, with little or no prior warning. An example of such a situation arises when an operator wishes to make use of DDoS mitigation services that use BGP to redirect traffic via a "scrubbing center". </t><t> In<t>In order to ensure that such ad hoc routing changes are effective, a ROA validating the new route should exist.HoweverHowever, a difficulty arises due to the fact that newly created objects in the RPKI are made visible to relying parties considerably more slowly than routing updates in BGP. </t><t> Ideally,<t>Ideally, it would not be necessary to pre-create theROAROA, which validates the ad hoc route, and instead create it"on-the-fly""on the fly" as required. However, this is practical only if the latency imposed by the propagation of RPKI data is guaranteed to be within acceptable limits in the circumstances. For time-critical interventions such as responding to a DDoS attack, this is unlikely to be the case. </t><t> Thus,<t>Thus, the ROA in question will usually need to be created well in advance of the routing intervention, but such a ROA will be non-minimal, since it includes an IP prefix that is sometimes (but not always) originated in BGP. </t><t> In<t>In this case, the ROASHOULD include only: <list> <t> (1) the<bcp14>SHOULD</bcp14> only include: </t> <ol type="(%d)" spacing="normal"> <li>the set of IP prefixes that are always originated in BGP,and </t> <t> (2) theand</li> <li>the set of IP prefixes that are sometimes, but not always, originated inBGP. </t> </list> TheBGP.</li> </ol> <t>The ROASHOULD NOT<bcp14>SHOULD NOT</bcp14> include any IP prefixes that the operator knows will not be originated in BGP. In general, the ROASHOULD NOT<bcp14>SHOULD NOT</bcp14> make use of the maxLength attribute unless doing so has no impact on the set of included prefixes. </t><t> The<t>The running example is now extended to illustrate one situation where it is not possible to issue a minimal ROA. </t><t> Consider<t>Consider the following scenario prior to the deployment of RPKI. Suppose AS 64496 announced 192.168.0.0/16 and has a contract with aDistributed Denial of Service (DDoS)DDoS mitigation service provider that holds AS 64500. Further, assume that the DDoS mitigation service contract applies to all IP addresses covered by 192.168.0.0/22. When a DDoS attack is detected and reported by AS 64496, AS 64500 immediately originates 192.168.0.0/22, thus attracting all the DDoS traffic to itself. The traffic is scrubbed at AS 64500 and then sent back to AS 64496 over a backhaul link. Notice that, during a DDoS attack, the DDoS mitigation service provider AS 64500 originates a /22 prefix that is longer than AS 64496's /16 prefix,andso all the traffic (destined to addresses in 192.168.0.0/22) that normally goes to AS 64496 goes to AS 64500 instead. In some deployments, the origination of the /22 route is performed by AS 64496 and announced only to AS 64500, which then announces transit for that prefix. This variation does not change the properties considered here. </t><t> First,<t>First, suppose the RPKI only had the minimal ROA for AS 64496, as described in <xref target="hijack"/>.ButHowever, if there is no ROA authorizing AS 64500 to announce the /22 prefix, then the DDoS mitigation (and traffic scrubbing) scheme would not work. That is, if AS 64500 originates the /22 prefix in BGP during DDoS attacks, the announcement would be invalid <xreftarget="RFC6811" />.target="RFC6811"/>. </t><t> Therefore,<t>Therefore, the RPKI should have two ROAs: one for AS 64496 and one for AS 64500.<list> <t> ROA:(192.168.0.0/16,</t> <t indent="3">ROA:(192.168.0.0/16, 192.168.225.0/24, AS64496) </t> <t> ROA:(192.168.0.0/22,64496)</t> <t indent="3">ROA:(192.168.0.0/22, AS64500) </t> </list> Neither64500)</t> <t>Neither ROA uses the maxLengthattribute. Butattribute, but the second ROA is not "minimal" because it contains a /22 prefix that is not originated by anyone in BGP during normal operations. The /22 prefix is only originated by AS 64500 as part of its DDoS mitigation service during a DDoS attack. </t><t> Notice,<t>Notice, however, that this scheme does not come without risks. Namely, all IP addresses in 192.168.0.0/22 are vulnerable to a forged-origin sub-prefix hijack during normaloperations,operations when the /22 prefix is not originated. (The hijacker AS 64511 would send the BGP announcement "192.168.0.0/22: AS 64511, AS 64500", falsely claiming that AS 64511 is a neighbor of AS 64500 and falsely claiming that AS 64500 originates 192.168.0.0/22.) </t><t> In<t>In some situations, the DDoS mitigation service at AS 64500 might want to limit the amount of DDoS traffic that it attracts and scrubs. Suppose that a DDoS attack only targets IP addresses in 192.168.0.0/24. Then, the DDoS mitigation service at AS 64500 only wants to attract the traffic designated for the /24 prefix that is under attack, but not the entire /22 prefix. To allow for this, the RPKI should have two ROAs: one for AS 64496 and one for AS 64500.<list> <t> ROA:(192.168.0.0/16,</t> <t indent="3">ROA:(192.168.0.0/16, 192.168.225.0/24, AS64496) </t> <t> ROA:(192.168.0.0/22-24,64496)</t> <t indent="3">ROA:(192.168.0.0/22-24, AS64500) </t> </list> </t> <t> The64500)</t> <t>The second ROA uses the maxLength attribute because it is designed to explicitly enable AS 64500 to originate any /24 sub-prefix of 192.168.0.0/22. </t><t> As<t>As before, the second ROA is not "minimal" because it contains prefixes that are not originated by anyone in BGP during normal operations.As before,Also, all IP addresses in 192.168.0.0/22 are vulnerable to a forged-origin sub-prefix hijack during normaloperations,operations when the /22 prefix is not originated. </t><t> The<t>The use of the maxLength attribute in this second ROA also comes with additional risk. While it permits the DDoS mitigation service at AS 64500 to originate prefix 192.168.0.0/24 during a DDoS attack in that space, it also makes the other /24 prefixes covered by the /22 prefix (i.e., 192.168.1.0/24, 192.168.2.0/24, and 192.168.3.0/24) vulnerable to forged-origin sub-prefix attacks. </t> </section> <sectiontitle="Defensiveanchor="deaggr"> <name>Defensive De-aggregationInin ResponseToto PrefixHijacks" anchor="deaggr"> <t> InHijacks</name> <t>When responding to certain classes of prefixhijack, inhijack (in particular, the forged-origin sub-prefix hijack describedabove,above), it may be desirable for the victim to perform "defensive de-aggregation",i.e.i.e., to begin originating more-specific prefixes in order to compete with the hijack routes for selection as the best path in networks that are not performingRPKI-based route origin validation (ROV)RPKI-ROV <xref target="RFC6811"/>. </t><t> In some topologies,<t>In topologies where at least one AS on every path between the victim and hijacker filtersROVRPKI-ROV invalid prefixes, it may be the case that the existence of a minimal ROA issued by the victim prevents the defensive more-specific prefixes from being propagated to the networks topologically close to the attacker, thus hampering the effectiveness of this response. </t><t> Nevertheless,<t>Nevertheless, this document recommendsthatthat, where possible, network operators publish minimal ROAs even in the face of this risk. This is because:<list style="symbols"> <t> Minimal</t> <ul spacing="normal"> <li>Minimal ROAs offer the best possible protection against the immediate impact of such an attack, rendering the need for such a response lesslikely; </t> <t> Increasing ROVlikely;</li> <li>Increasing RPKI-ROV adoption by network operators will, over time, decrease the size of the neighborhoods in which this risk exists;and </t> <t> Otherand</li> <li>Other methods for reducing the size of such neighborhoods are available to potential victims, such as establishing directEBGPExternal BGP (EBGP) adjacencies with networks from whom the defensive routes would otherwise behidden. </t> </list> </t>hidden.</li> </ul> </section> </section> <sectiontitle="Considerationsanchor="rtdr"> <name>Considerations for RTDR FilteringScenarios" anchor="rtdr"> <t> ConsiderationsScenarios</name> <t>Considerations related to ROAs andorigin validationRPKI-ROV <xref target="RFC6811"/> for the case of destination-basedRemotely Triggered Discard Route (RTDR)RTDR (elsewhere referred to as "Remotely Triggered Black Hole") filtering are addressed here. In RTDR filtering, highly specific prefixes (greater than /24 in IPv4 and greater than /48 inIPv6;IPv6, or possibly even /32(IPv4)in IPv4 and /128(IPv6))in IPv6) are announced in BGP. These announcements are tagged with theWell-knownwell-known BGPCommunitycommunity defined by <xref target="RFC7999"/>.ItFor the reasons set out above, it is obviously not desirable to use a large maxLength value or include any such highly specific prefixes in the ROAs to accommodate destination-based RTDRfiltering, for the reasons set out above.filtering. </t><t> As<t>As a result,RPKI-based route origin validationRPKI-ROV <xref target="RFC6811"/> is a poor fit for the validation of RTDR routes. Specification of new procedures to address this use case through the use of the RPKI is outside the scope of this document. </t><t> Therefore: <list style="symbols"> <t> Operators SHOULD NOT<t>Therefore: </t> <ul spacing="normal"> <li>Operators <bcp14>SHOULD NOT</bcp14> create non-minimal ROAs(either by(by either creating additionalROAs,ROAs orthroughusing theuse of maxLength)maxLength attribute) for the purpose of advertising RTDR routes;and </t> <t> Operatorsand</li> <li>Operators providing a means for operators of neighboring autonomous systems to advertise RTDR routes via BGPMUST NOT<bcp14>MUST NOT</bcp14> make the creation of non-minimal ROAs a pre-requisite for itsuse. </t> </list> </t>use.</li> </ul> </section> <sectiontitle="Useranchor="ui"> <name>User Interface DesignRecommendations" anchor="ui"> <t> MostRecommendations</name> <t>Most operator interaction with the RPKI system when creating or modifying ROAs will occur via a user interface that abstracts the underlying encoding,signingsigning, and publishing operations. </t><t> This<t>This document recommends that designers and/or providers of such user interfacesSHOULD<bcp14>SHOULD</bcp14> provide warnings to draw the user's attention to the risks of creating non-minimal ROAs ingeneral,general anduse ofusing the maxLength attribute in particular. </t><t> Warnings<t>Warnings provided by such a system may vary in nature from generic warnings based purely on the inclusion of the maxLengthattribute,attribute to customised guidance based on the observable BGP routing policy of the operator in question. The choices made in this respect are expected to be dependent on the target user audience of the implementation. </t> </section> <sectiontitle="Operational Considerations"anchor="operational-considerations"><t> The<name>Operational Considerations</name> <t>The recommendations specified in thisdocument, indocument (in particular, those in <xreftarget="recommendations"/>,target="recommendations"/>) involve trade-offs between operational agility and security. </t><t> Operators<t>Operators adopting the recommended practice of issuing minimal ROAs will, bydefinitiondefinition, need to make changes to their existing set of issued ROAs in order to effect changes to the set of prefixeswhichthat are originated in BGP. </t><t> Even<t>Even in the case of routing changes that are planned in advance, existing procedures may need to be updated to incorporate changes to issuedROAs,ROAs and may require additional time allowed for those changes to propagate. </t><t> Operators<t>Operators are encouraged to carefully review the issues highlighted (especially those in Sections <xreftarget="nominimal"/>target="nominimal" format="counter"/> and <xreftarget="deaggr"/>)target="deaggr" format="counter"/>) in light of their specific operational requirements. Failure to do so could, in the worst case, result in a self-inflicted denial of service. </t><t> The<t>The recommendations made insection 5<xref target="recommendations"/> are likely to be more onerous for operators utilising large IP address space allocations from which many more-specific advertisements are made in BGP. Operators of such networks are encouraged to seek opportunities to automate the required procedures in order to minimise manual operational burden. </t> </section> <sectiontitle="Security Considerations"anchor="security-considerations"><t> This<name>Security Considerations</name> <t>This document makes recommendations regarding the use ofRPKI-based origin validationRPKI-ROV as defined in <xreftarget="RFC6811"/>, andtarget="RFC6811"/> and, assuchsuch, introduces no additional security considerations beyond those specified therein. </t> </section> <sectionanchor="IANA" title="IANA Considerations"> <t> Thisanchor="IANA"> <name>IANA Considerations</name> <t>This documentincludeshas norequest to IANA. </t> </section> <section anchor="Acknowledgments" title="Acknowledgments"> <t> The authors would like to thank the following people for their review and contributions to this document: Omar Sagga and Aris Lambrianidis. Thanks are also due to Matthias Waehlisch, Ties de Kock, Amreesh Phokeer, Éric Vyncke, Alvaro Retana, John Scudder, Roman Danyliw, Andrew Alston, and Murray Kucherawy for comments and suggestions, to Roni Even for the Gen-ART review, to Jean Mahoney for the ART-ART review, to Acee Lindem for the Routing Directorate review, and to Sean Turner for the Security Area Directorate review.IANA actions. </t> </section> </middle> <back><references title="Normative References"> <?rfc include="reference.RFC.1918.xml"?> <?rfc include="reference.RFC.2119.xml"?> <?rfc include="reference.RFC.4271.xml"?> <?rfc include="reference.RFC.6480.xml"?> <?rfc include="reference.RFC.6482.xml"?> <?rfc include="reference.RFC.6811.xml"?> <?rfc include="reference.RFC.7115.xml"?> <?rfc include="reference.RFC.8174.xml"?><references> <name>References</name> <references> <name>Normative References</name> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1918.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6480.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6482.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6811.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7115.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/> </references><references title="Informative References"><references> <name>Informative References</name> <reference anchor="GSG17" target="https://eprint.iacr.org/2016/1015.pdf"> <front><title>Maxlength<title>MaxLength Considered Harmful to the RPKI</title> <author initials="Y."surname="Gilad"><organization /></author>surname="Gilad"> <organization/> </author> <author initials="O."surname="Sagga"><organization /></author>surname="Sagga"> <organization/> </author> <author initials="S."surname="Goldberg"><organization /></author>surname="Goldberg"> <organization/> </author> <date year="2017"month="December" />month="December"/> </front> <refcontent>CoNEXT '17</refcontent> <seriesInfoname="in" value="ACM CoNEXT 2017" />name="DOI" value="10.1145/3143361.3143363"/> </reference> <reference anchor="LSG16" target="http://cacm.acm.org/magazines/2016/10/207763-rethinking-security-for-internet-routing/"> <front> <title>RethinkingSecuritysecurity forInternet Routing</title>internet routing</title> <author initials="R."surname="Lychev"><organization /></author>surname="Lychev"> <organization/> </author> <author initials="M."surname="Shapira"><organization /></author>surname="Shapira"> <organization/> </author> <author initials="S."surname="Goldberg"><organization /></author>surname="Goldberg"> <organization/> </author> <date year="2016"month="October" />month="October"/> </front><seriesInfo name="in" value="Communications<refcontent>Communications of theACM" />ACM</refcontent> <seriesInfo name="DOI" value="10.1145/2896817"/> </reference> <reference anchor="GCHSS" target="https://eprint.iacr.org/2016/1010.pdf"> <front> <title>Are We There Yet? OnRPKI'sRPKI's Deployment and Security</title> <author initials="Y."surname="Gilad"><organization /></author>surname="Gilad"> <organization/> </author> <author initials="A."surname="Cohen"><organization /></author>surname="Cohen"> <organization/> </author> <author initials="A."surname="Herzberg"><organization /></author>surname="Herzberg"> <organization/> </author> <author initials="M."surname="Schapira"><organization /></author>surname="Schapira"> <organization/> </author> <author initials="H."surname="Shulman"><organization /></author>surname="Shulman"> <organization/> </author> <date year="2017"month="February" />month="February"/> </front><seriesInfo name="in" value="NDSS 2017" /><refcontent>NDSS 2017</refcontent> </reference><reference anchor="HARMFUL" target="https://eprint.iacr.org/2016/1015.pdf"> <!-- https://dl.acm.org/citation.cfm?doid=3143361.3143363 --> <front> <title>MaxLength Considered Harmful<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5737.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6907.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7999.xml"/> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8205.xml"/> </references> </references> <section anchor="Acknowledgments" numbered="false"> <name>Acknowledgments</name> <t>The authors would like to thank theRPKI</title> <author initials="Y." surname="Gilad"><organization /></author> <author initials="O." surname="Sagga"><organization /></author> <author initials="S." surname="Goldberg"><organization /></author> <date year="2017" /> </front> <!-- <seriesInfo name="in" value="NDSS 2017" /> --> </reference> <?rfc include="reference.RFC.5737.xml"?> <?rfc include="reference.RFC.6907.xml"?> <?rfc include="reference.RFC.7999.xml"?> <?rfc include="reference.RFC.8205.xml"?> </references>following people for their review and contributions to this document: <contact fullname="Omar Sagga"/> and <contact fullname="Aris Lambrianidis"/>. Thanks are also due to <contact fullname="Matthias Waehlisch"/>, <contact fullname="Ties de Kock"/>, <contact fullname="Amreesh Phokeer"/>, <contact fullname="Éric Vyncke"/>, <contact fullname="Alvaro Retana"/>, <contact fullname="John Scudder"/>, <contact fullname="Roman Danyliw"/>, <contact fullname="Andrew Alston"/>, and <contact fullname="Murray Kucherawy"/> for comments and suggestions, to <contact fullname="Roni Even"/> for the Gen-ART review, to <contact fullname="Jean Mahoney"/> for the ART-ART review, to <contact fullname="Acee Lindem"/> for the Routing Area Directorate review, and to <contact fullname="Sean Turner"/> for the Security Area Directorate review. </t> </section> </back> </rfc><!-- vim: et ts=4 sts=4 sw=4 colorcolumn=100 spell : -->