{"id":836,"date":"2024-10-18T11:01:07","date_gmt":"2024-10-18T17:01:07","guid":{"rendered":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/?p=836"},"modified":"2024-10-18T11:03:02","modified_gmt":"2024-10-18T17:03:02","slug":"rpki-insecurity","status":"publish","type":"post","link":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/2024\/10\/18\/rpki-insecurity\/","title":{"rendered":"RPKI Insecurity\u00a0"},"content":{"rendered":"\n<p>Recently, a team of researchers from Germany released a paper outlining the vulnerabilities of Resource Public Key Infrastructure (RPKI), the primary framework used to provide security for the Border Gateway Protocol (BGP) [2]. BGP is used for routing, and it is an alternative to Open Shortest Path First (OSPF). OSPF is generally used for routing within a smaller network controlled by one entity, or autonomous system (AS), while BGP is used for routing between these autonomous systems [1]. According to the researchers, 50% of the Internet\u2019s resources use RPKI for securing BGP [4].&nbsp;<\/p>\n\n\n\n<p>The researchers identified a number of vulnerabilities with the framework, ranging from misconfigurations by those that employ the framework to malicious actors finding ways to get around the security it is supposed to provide. This announcement coincides with the US government\u2019s recent plan, announced in September 2024, to implement RPKI on all US ISPs and networks [2]. Before we get into the specifics, though, let\u2019s take a closer look at what BGP and RPKI are, to help us better understand these vulnerabilities.&nbsp;<\/p>\n\n\n\n<p class=\"has-large-font-size\">What is BGP?&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"724\" height=\"409\" data-src=\"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/AS-BGP.png\" alt=\"\" class=\"wp-image-839 lazyload\" data-srcset=\"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/AS-BGP.png 724w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/AS-BGP-300x169.png 300w\" data-sizes=\"(max-width: 724px) 100vw, 724px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 724px; --smush-placeholder-aspect-ratio: 724\/409;\" \/><\/figure>\n\n\n\n<p class=\"has-small-font-size\">Source: <a href=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/5\/5c\/AS-BGP.png\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/upload.wikimedia.org\/wikipedia\/commons\/5\/5c\/AS-BGP.png<\/a>&nbsp;<\/p>\n\n\n\n<p>As mentioned earlier, BGP is used for routing information across the internet between different autonomous systems. These can be Internet Service Providers (ISPs), universities, companies, or other organizations [6]. Since it is primarily used for routing between autonomous systems, it is classified as an External Gateway Protocol (EGP). However, it can also be used for routing within an autonomous system, so it is a very flexible protocol. Compared to purely intra-domain routing systems, though, BGP is more complex to configure but it allows for more control over routing. It\u2019s also very scalable, as it can be used at the worldwide Internet level [1].&nbsp;&nbsp;<\/p>\n\n\n\n<p>In order for an autonomous system to make use of BGP routing, network administrators will set up one of the routers to be a boundary router, or BGP peer. This router will send and receive routing information with its BGP peers through a TCP connection [6]. They exchange information on path attributes, such as hop count, monetary cost of routing, latency, and network congestion [5,6]. The boundary router will store this information in routing tables, building up a graph of all the autonomous systems around it. Even after the initial exchange of information, the BGP peers will continue to send information, including 19-byte keep-alive messages every 30 seconds [5]. The BGP router will update the routing table frequently with any new information it receives. Using this information, and the rules configured by the network administrator that give different weights to each path attribute, the BGP router will determine the best path [1,5].&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"427\" data-src=\"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-1024x427.png\" alt=\"\" class=\"wp-image-840 lazyload\" data-srcset=\"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-1024x427.png 1024w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-300x125.png 300w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-768x320.png 768w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-1536x641.png 1536w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-2048x854.png 2048w, https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/BGP_process.svg_-1568x654.png 1568w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/427;\" \/><\/figure>\n\n\n\n<p class=\"has-small-font-size\">Source: <a href=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/3\/39\/BGP_process.svg\/2560px-BGP_process.svg.png\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/3\/39\/BGP_process.svg\/2560px-BGP_process.svg.png<\/a>\u00a0<\/p>\n\n\n\n<p class=\"has-large-font-size\">BGP Vulnerabilities<\/p>\n\n\n\n<p>Like with many aspects of the Internet, the original protocol was not designed with security in mind. It was initially assumed that all BGP peers were trustworthy and that they would not provide incorrect information [3].&nbsp;<\/p>\n\n\n\n<p>The primary vulnerability BGP is susceptible to is BGP hijacking [6]. This involves an AS sending false routing information to its peers, either accidentally or with malicious intentions. This information is then propagated beyond the initial group of peers to the wider Internet, causing a variety of problems. Malicious parties can use BGP hijacking to redirect users to their fake sites, stealing credentials or money. In 2018, a malicious group stole $100000 in cryptocurrency from unsuspecting individuals after they were able to reroute traffic intended for Amazon\u2019s DNS service [6]. Even accidental BGP hijacking can lead to a denial-of-service attack, such as in 2008 when a Pakistani ISP altered BGP routes to keep citizens from accessing YouTube. As with the malicious example, the false routes propagated beyond that Pakistani ISP AS, and it led to users around the world being denied access to YouTube [6]. Attackers can also alter routing to eavesdrop on communications or modify data in packets by putting themselves on-path [4,6].&nbsp;<\/p>\n\n\n\n<p class=\"has-large-font-size\">Solution: Resource Public Key Infrastructure&nbsp;<\/p>\n\n\n\n<p>The main solution for BGP hijacking is authentication. RPKI provides authentication through public key cryptography and certificates. The organization will sign Route Origin Authorization certificate or ROA with their private key, and this will be used certify that a particular organization has the authority to communicate routing information for the IP addresses within its AS [2,6]. Other BGP routers will access the ROAs from a RPKI repository, either directly or through intermediate software called a Relying Party,&nbsp;and they will use Route Origin Validation (ROV) to verify that any routing information is coming from the authorized organization [4]. This makes it much more difficult for malicious parties to hijack BGP routing [3,6].&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"How Does RPKI Help with Routing Security?\" width=\"640\" height=\"360\" data-src=\"https:\/\/www.youtube.com\/embed\/RI6GUwquB74?start=139&#038;feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p class=\"has-large-font-size\">Problems with RPKI&nbsp;<\/p>\n\n\n\n<p>The biggest issue with RPKI is that it has to operate with lower security settings as it\u2019s not currently adopted by all autonomous systems. As mentioned, 50% of internet resources use RPKI, but that still means a very large percentage of ISPs and other organizations don\u2019t. RPKI was initially proposed in 2008, but it took many years before the importance of the framework was widely acknowledged and before viable solutions for organizations were available [4]. It took until 2021 for Google and Amazon to use ROV [4]. In general, the researchers identified that many organizations were reluctant to adopt this framework as they were uninformed on the benefits of it and leadership being reluctant to prioritize it over other initiatives [2,4].&nbsp;<\/p>\n\n\n\n<p>So, to allow for the slow rollout of RPKI and to prevent any disruptions in routing Internet traffic, organizations configure RPKI to use fail-open mode. In this mode, routing information is still accepted from sources who either don\u2019t have ROAs or whose ROAs failed validation [4]. However, these routes are given lower priority than routes that passed ROV. This means, even organizations that have adopted RPKI are still vulnerable to hijacking attacks.&nbsp;<\/p>\n\n\n\n<p>As well, there a 40 RFCs for RPKI, which provide technical specifications and general guidelines for implementation [4]. Though these different specifications are meant to build on each other, they can still lead to confusion and inconsistency between how organizations implement RPKI.&nbsp;<\/p>\n\n\n\n<p class=\"has-large-font-size\">Conclusion&nbsp;<\/p>\n\n\n\n<p>Though RPKI does have some flaws, as the researchers point out, it\u2019s the best framework available for securing BGP. It\u2019s definitely an improvement on using BGP as is, which is vulnerable to phishing and denial-of-service attacks as it lacks any reliable authentication. Enforcing strict validation of ROAs is not fully possible right now, however, as RPKI is still not fully supported. The routing of traffic over the Internet should not be completely disrupted because of inconsistencies of RPKI adoption. There is hope that identifying some of the current issues with RPKI will encourage better regulations and guidelines for setting up RPKI going forward [2], and adding on other security solutions, such as alerts when unknown parties are broadcasting routing information about your organization, can help further secure routing [6].&nbsp;<\/p>\n\n\n\n<p class=\"has-large-font-size\">References&nbsp;<\/p>\n\n\n\n<p>[1]&nbsp;\u201cBGP vs OSPF: Differences &amp; Tutorials.\u201d Accessed: Oct. 18, 2024. [Online]. Available: <a href=\"https:\/\/www.catchpoint.com\/dynamic-routing-protocols\/bgp-vs-ospf\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.catchpoint.com\/dynamic-routing-protocols\/bgp-vs-ospf<\/a>&nbsp;<\/p>\n\n\n\n<p>[2]&nbsp;\u201cFix for BGP routing insecurity \u2018plagued by software vulnerabilities\u2019 of its own, researchers find | Network World.\u201d Accessed: Oct. 18, 2024. [Online]. Available: <a href=\"https:\/\/www.networkworld.com\/article\/3544447\/fix-for-bgp-routing-insecurity-plagued-by-software-vulnerabilities-of-its-own-researchers-find.html\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.networkworld.com\/article\/3544447\/fix-for-bgp-routing-insecurity-plagued-by-software-vulnerabilities-of-its-own-researchers-find.html<\/a>&nbsp;<\/p>\n\n\n\n<p>[3]&nbsp;RIPE NCC, <em>How Does RPKI Help with Routing Security?<\/em>, (Oct. 19, 2023). Accessed: Oct. 18, 2024. [Online Video]. Available: <a href=\"https:\/\/www.youtube.com\/watch?v=RI6GUwquB74\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.youtube.com\/watch?v=RI6GUwquB74<\/a>&nbsp;<\/p>\n\n\n\n<p>[4]&nbsp;H. Schulmann, N. Vogel, and M. Waidner, \u201cRPKI: Not Perfect But Good Enough,\u201d Sep. 22, 2024, <em>arXiv<\/em>: arXiv:2409.14518. Accessed: Oct. 18, 2024. [Online]. Available: <a href=\"http:\/\/arxiv.org\/abs\/2409.14518\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/arxiv.org\/abs\/2409.14518<\/a>&nbsp;<\/p>\n\n\n\n<p>[5]&nbsp;\u201cWhat is BGP? &#8211; BGP Routing Explained &#8211; AWS,\u201d Amazon Web Services, Inc. Accessed: Oct. 18, 2024. [Online]. Available: <a href=\"https:\/\/aws.amazon.com\/what-is\/border-gateway-protocol\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/aws.amazon.com\/what-is\/border-gateway-protocol\/<\/a>&nbsp;<\/p>\n\n\n\n<p>[6]&nbsp;\u201cWhat is BGP? | BGP routing explained.\u201d Accessed: Oct. 18, 2024. [Online]. Available: <a href=\"https:\/\/www.cloudflare.com\/learning\/security\/glossary\/what-is-bgp\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.cloudflare.com\/learning\/security\/glossary\/what-is-bgp\/<\/a>&nbsp;<\/p>\n\n\n\n<p>Images:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/3\/39\/BGP_process.svg\/2560px-BGP_process.svg.png\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/3\/39\/BGP_process.svg\/2560px-BGP_process.svg.png<\/a>&nbsp;<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/5\/5c\/AS-BGP.png\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/upload.wikimedia.org\/wikipedia\/commons\/5\/5c\/AS-BGP.png<\/a>&nbsp;<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently, a team of researchers from Germany released a paper outlining the vulnerabilities of Resource Public Key Infrastructure (RPKI), the primary framework used to provide security for the Border Gateway Protocol (BGP) [2]. BGP is used for routing, and it is an alternative to Open Shortest Path First (OSPF). OSPF is generally used for routing &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/2024\/10\/18\/rpki-insecurity\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;RPKI Insecurity\u00a0&#8220;<\/span><\/a><\/p>\n","protected":false},"author":669,"featured_media":673,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","entry"],"featured_image_src":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/banner-600x400.jpg","featured_image_src_square":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-content\/uploads\/sites\/119\/2024\/10\/banner-600x530.jpg","author_info":{"display_name":"Nicole Lefebvre","author_link":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/author\/nicole-lefebvre\/"},"_links":{"self":[{"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/posts\/836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/users\/669"}],"replies":[{"embeddable":true,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/comments?post=836"}],"version-history":[{"count":2,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/posts\/836\/revisions"}],"predecessor-version":[{"id":842,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/posts\/836\/revisions\/842"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/media\/673"}],"wp:attachment":[{"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/media?parent=836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/categories?post=836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpsites.ucalgary.ca\/jacobson-cpsc\/wp-json\/wp\/v2\/tags?post=836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}