互联网是一个“网络的网络”,它连接了成千上万个独立管理的网络。边界网关协议(BGP)通过传播如何在远程网络中到达目的地的信息,将Internet连接在一起。然而,众所周知,BGP很容易被错误配置和攻击。其后果包括使目的地无法到达(例如,谷歌的路由事件在日本造成了广泛的互联网中断gydF4y2Ba一个gydF4y2Ba),通过意外的中介来误导流量(例如,由于来自瑞士数据中心的不适当路由公告,欧洲移动流量通过中国电信路由gydF4y2BabgydF4y2Ba),冒充合法服务(例如,发送到Amazon DNS服务器的流量被重新路由到使用虚假IP地址回答DNS查询的攻击者gydF4y2BacgydF4y2Ba).保护互联网路由系统的努力已经进行了很多年,gydF4y2Ba6gydF4y2Ba,gydF4y2Ba7gydF4y2Ba,gydF4y2Ba8gydF4y2Ba,gydF4y2Ba11gydF4y2Ba,gydF4y2Ba13gydF4y2Ba,gydF4y2Ba14gydF4y2Ba但是,由于各方必须就解决方案达成一致,并在部署方面进行合作,因此进展速度很慢。gydF4y2Ba
与此同时,越来越多的用户依赖互联网来访问广泛的服务,包括他们自己的安全和隐私方面的应用程序。Tor(洋葱路由)等应用程序允许用户匿名浏览,证书颁发机构为安全访问Web服务提供证书,区块链支持安全加密货币。然而,这些应用程序的隐私和安全属性依赖于网络来传递流量;gydF4y2Ba图1gydF4y2Ba说明了gydF4y2Ba跨层gydF4y2BaTor和底层网络之间的交互。应用程序开发人员抽象了Internet路由的细节,但是BGP没有为这些应用程序提供足够安全的脚手架。这一差距使得路由不安全导致的漏洞被严重低估。虽然路由攻击众所周知,但它们主要被视为影响可用性(当错误导向的流量被丢弃时)和机密性(当数据未加密时)。本文提供了一个新的视角,展示了对Internet应用程序的路由攻击可能会对用户产生更严重的破坏性后果——包括揭露试图匿名通信的用户(如政治异见人士)、冒充网站(即使流量使用HTTPS)以及窃取加密货币。gydF4y2Ba
图1。BGP路由会影响谁可以观察Tor流量。gydF4y2Ba
本文认为,Internet应用程序的安全性和网络基础设施的安全性应该放在一起考虑,因为一层的漏洞会导致另一层的假设破裂(以及新的攻击向量)。我们首先概述路由安全。然后,我们讨论了跨层交互如何使路由攻击能够破坏流行的应用程序,如Tor、证书颁发机构和比特币网络。鉴于安全路由解决方案采用缓慢,我们将讨论应用程序如何考虑底层路由属性并使用应用层防御来减轻路由攻击。我们相信应用层和网络层的解决方案是相互关联的,两者都是确保Internet应用程序安全的关键。虽然应用层防御更容易部署,但我们希望激励社区在安全路由解决方案上加倍努力,一劳永逸地解决BGP的许多安全问题。gydF4y2Ba
路由攻击在野外发生,并且变得越来越普遍和复杂。我们从攻击者的角度分析路由攻击,并回顾现有的防御。特别是,通过路由攻击转移目标流量的能力是对Internet应用程序的一个新威胁。我们将进一步演示路由攻击如何破坏三个应用程序。gydF4y2Ba
BGP的工作原理。gydF4y2Ba互联网由大约67000个自治系统(ase)组成,gydF4y2BadgydF4y2Ba每个都有一个AS号(ASN)和一组IP前缀。相邻的as以各种双边关系交换流量,这些双边关系指定应该发送哪些流量以及如何支付流量。这类协议一般可分为两类gydF4y2Ba顾客gydF4y2Ba在这种关系中,客户向提供商支付费用,以便向Internet的其他部分发送和接收流量gydF4y2Ba点对点gydF4y2Ba关系,在这种关系中,不交换金钱,但流量必须分配给同行或其客户。gydF4y2Ba
ase之间的路由由边界网关协议(BGP)控制,它计算到目的地前缀的路径。as会根据一系列因素选择到前缀的一条“最佳”路由,其中前两个通常是:本地优先级:通过客户的路径优先于通过对等体的路径,而通过对等体的路径优先于提供者;最短路径:优先选择AS跳最少的路径。AS会将该路由添加到本地gydF4y2Ba路由信息库gydF4y2Ba,并在该路径中预先设置路由后,再根据路由策略将该路由传播给它的邻居。gydF4y2Ba
ase按照到达目的IP最长匹配前缀的路径转发报文。在gydF4y2Ba图2gydF4y2BaAS1通过邻居AS2宣布140.180.0.0/22,通过邻居AS3宣布140.180.0.0/24。AS4根据最长的前缀匹配将报文从AS3转发到140.180.0.0/24。注意,通常情况下,可以成功传播的最长前缀是/24;缺省情况下,许多as会过滤长度大于/24的前缀。gydF4y2Ba
图2。目的ip在140.180.0.0/24内的流量,AS4根据最长匹配前缀将流量经AS3路由到AS1。gydF4y2Ba
路由攻击的目标。gydF4y2Ba缺省情况下,as信任来自其他as的路由公告。当AS宣布前缀的路径错误时,就会发生路由攻击,导致报文穿过和/或到达攻击者AS。我们从两个角度讨论攻击者的目标:gydF4y2Ba影响谁gydF4y2Ba而且gydF4y2Ba要达到什么目标。gydF4y2Ba
影响谁。gydF4y2Ba路由攻击会影响两组受害者:一组是目的地,目的地的前缀由攻击者宣布;另一组是发送方,发送方将报文发送到被攻击的前缀。gydF4y2Ba
目的地。gydF4y2BaYouTube是2008年一起劫机事件的目标,当时巴基斯坦当局试图屏蔽YouTube。gydF4y2BaegydF4y2Ba巴基斯坦电信(AS17557)宣布前缀208.65.153.0/24,这是YouTube (AS36561)宣布的208.65.152.0/22子网。gydF4y2Ba
发送者。gydF4y2Ba攻击者可以从Internet上的所有发送者转移全局流量,或者有选择地只针对特定发送者的流量。在YouTube事件中,目标是只针对巴基斯坦境内的发送者;然而,这次攻击无意中影响了全球所有的发件人。gydF4y2Ba
目标是什么?gydF4y2Ba从历史上看,路由攻击最明显的影响是中断,攻击者丢弃数据包,使目的地不可达。这种类型的攻击即“黑洞”的流量也被称为一种gydF4y2Ba劫持攻击。gydF4y2Ba然而,攻击者的目标可能更加复杂。gydF4y2Ba
监测。gydF4y2Ba当局可能使用路由攻击来执行监视,并针对来自某些地区的发送方的流量。像美国国家安全局这样的情报机构可以发起路由攻击,使某些流量更容易被拦截用于监视。gydF4y2BafgydF4y2Ba来自目标地区的流量将被重新路由到当局,后者将流量转发到目的地,同时监控这些活动。这种类型的攻击通常被描述为gydF4y2Ba拦截攻击gydF4y2Ba,合法的目的地仍然接收流量。拦截攻击比劫持攻击更难被发现,因为它们不会中断通信,尽管性能可能会由于更迂回的路径而下降。此外,当局可以利用路由攻击,通过将国内通信(例如美国人之间的电子邮件)转移到外国司法管辖区进行监视,从而超越法律限制。gydF4y2Ba9gydF4y2Ba
模拟。gydF4y2Ba攻击者可以冒充目的地欺骗发送者,通过劫持或拦截攻击拦截数据包,然后用伪造的回复进行回复。这些攻击可能会造成破坏性的后果。2018年,攻击者使用路由攻击冒充亚马逊的权威DNS服务,回答了一个俄罗斯IP地址的加密货币网站的DNS查询。用户随后被引导到一个欺诈网站,他们认为这是他们真正的加密货币服务。结果,加密货币被盗。攻击者还可能冒充大量的IP地址来发起垃圾邮件或其他恶意通信。gydF4y2BaggydF4y2Ba
应用程序的跨层攻击。gydF4y2Ba攻击者可能进一步利用被转移的流量对网络系统和应用程序进行更复杂的攻击。具体的目标取决于应用程序的功能。在本文中,我们演示了针对三个应用程序的路由攻击:通过Tor网络上的流量分析去匿名化Tor用户,从证书权威机构获取伪造的网站数字证书,以及阻止区块链系统达成共识。gydF4y2Ba
通过路由攻击转移目标流量的能力是对Internet应用程序的一个新兴威胁。gydF4y2Ba
攻击方法。gydF4y2Ba攻击者必须决定宣布哪个前缀,宣布哪个路径,以及哪些ase应该接收通知。gydF4y2Ba
要宣布哪个前缀。gydF4y2Ba攻击者可以声明目标前缀的子前缀(即更特定的前缀),也可以声明与目标前缀相同的同样特定的前缀。注意,不太特定的前缀不会用于包转发,因此不会构成成功的攻击。gydF4y2Ba
通过宣布子前缀影响全局流量。gydF4y2Ba由于转发基于最长的前缀匹配,子前缀攻击在劫持来自所有发送方的流量方面非常有效。但是,由于大多数as过滤的是长于/24的前缀,所以针对/24前缀的子前缀攻击是无效的。gydF4y2Ba
通过宣布同样特定的前缀来锁定有选择性的流量。gydF4y2Ba同时收到合法公告和攻击者公告的AS会根据路由首选项选择一个。注意,有些ase可能只接收到一个公告。在gydF4y2Ba图3gydF4y2Ba当AS2(攻击者)宣布与目的AS1相同的/24前缀时,AS4优先选择到达AS2的路径,而AS3仍然优先选择到达AS1的路径。这种攻击通常只影响部分互联网,不会产生全球影响。然而,由于其本地影响,它更隐蔽,并能够对某些发送者进行有针对性的攻击。gydF4y2Ba
图3。AS2(攻击者)宣布一个与AS1(合法目的地)相同的特定前缀。AS4优先选择到AS2的路径,AS3优先选择到AS1的路径。只有AS4受到攻击。gydF4y2Ba
该宣布哪条路径。gydF4y2Ba攻击者可能将自己作为前缀的来源,这自然构成了劫持攻击。然而,更复杂的攻击者还有一系列其他选择。gydF4y2Ba
通过伪造受害者身份逃避侦查。gydF4y2Ba攻击者可以在其路径的末尾添加合法的目的AS,使公告具有与合法公告相同的“最后一跳”(即“起源”)AS。这使得攻击更加隐蔽,因为一些防御(例如,监视系统和起源验证)只检查公告的起源AS,而不是完整的路径。注意,路径现在看起来长了一跳,这可能会减少选择攻击者路由而不是合法路由的ase的数量。gydF4y2Ba
通过AS路径投毒的拦截攻击。老练的攻击者可以在路径的末端附加一组精心选择的as。这些AS应该构成从攻击者到目的AS的合法路径。由于BGP环路防御的作用,追加的AS会忽略攻击者的通告,从而保护从攻击者AS到目的AS的合法路由。这种攻击被称为“as路径中毒攻击”(参见gydF4y2Ba图4gydF4y2Ba).这种攻击是非常隐蔽和有效的执行拦截攻击,同时宣布一个子前缀。gydF4y2Ba
图4。AS2(攻击者)通过在路径中添加AS3和AS1(合法目的地)来“毒害”该路径,从而保留了从AS2到AS1的合法路由。gydF4y2Ba
哪些ase应该收到通知。gydF4y2Ba战略攻击者不向所有邻居发送公告,而是试图控制谁可以接收公告,以增加攻击的隐蔽性,执行拦截攻击,或针对特定的发送者。我们讨论了限制公告传播的两种技术。gydF4y2Ba
向某些邻居宣布。gydF4y2Ba攻击者可能利用路由策略来控制攻击的传播,只向某些对等体和客户发布消息。这些公告只会“向下”传播到对等的客户,而不会传播到它的提供者。因此,只有选定的ase将听到公告。gydF4y2Ba
边界网关协议的社区。gydF4y2BaBGP团体是可选属性,可以添加到通告中,用于控制上游ase的路由策略,例如流量工程。攻击者可能利用BGP社区对攻击的传播进行战略控制,使所选的ase永远不会听到或不喜欢虚假公告,从而提高拦截攻击的有效性和可行性。gydF4y2Ba4gydF4y2Ba
路由防御。gydF4y2Ba防御路由攻击是具有挑战性的,因为缺乏告知路径是否“正确”的“地面真相”。看似可疑的公告可能是ase用来优化网络性能的合法路径。许多解决方案已经被提出,依靠不同的信息源作为“基本真相”。gydF4y2Ba
通过BGP监控进行异常检测。gydF4y2BaBGP监控系统通过使用历史路由数据,推断出前缀的“预期”起源ase或路径,来检测异常路由通告。gydF4y2Ba10gydF4y2Ba,gydF4y2Ba12gydF4y2Ba,gydF4y2Ba15gydF4y2Ba,gydF4y2Ba19gydF4y2Ba,gydF4y2Ba24gydF4y2Ba它们通常不需要更改路由协议,因此是高度可部署的。然而,监视系统的许多早期工作集中于捕捉“简单的”攻击(例如,不匹配的起源ase),但未能检测到更复杂的攻击,如拦截攻击。此外,依靠历史数据来推断基本事实很容易出现假阳性(标记合法路径)和假阴性(遗漏真正的攻击)。gydF4y2Ba
通过预设知识进行防御性过滤。gydF4y2Baas经常对从直接客户收到的通知执行前缀过滤。它可以有效防御客户as发起的攻击,但不能阻止as攻击自己的直接或间接客户。一种更高级的过滤技术是AS路径过滤,它使用从对等AS接收到的基于先验信息交换的公告的路径白名单。gydF4y2Ba20.gydF4y2Ba它进一步扩展了知识库,从单个提供者对其客户的单一知识(如前缀过滤),扩展到在受信任的对等体网络之间交换和构建的集体知识库。MANRS项目gydF4y2BahgydF4y2Ba概述了使用过滤技术保护路由基础设施的最佳实践。gydF4y2Ba
起源验证。gydF4y2Ba资源公钥基础设施(RPKI)是存储加密图形认证的公钥基础设施,称为路由起源授权(ROAs),指出哪些ase被授权产生哪些前缀。gydF4y2Ba6gydF4y2Baas收到通告后,会进行ROV (Route Origin validation),对来自无效as的路由进行过滤。RPKI利用密码原语使知识库可用gydF4y2Ba所有的苹果gydF4y2Ba与防御过滤中的直接邻域不同。尽管ROV只验证源AS而不是完整的路径,但它已经可以有效地防止许多攻击。但是,目前只有不到20%的前缀具有有效的roagydF4y2Ba我gydF4y2Ba能够正确执行ROV的ase就更少了。gydF4y2Ba16gydF4y2Ba
路径验证。gydF4y2BaBGPsec使用加密图形原语来验证gydF4y2Ba整个AS路径。gydF4y2Ba13gydF4y2Ba它是一种在线协议,而不是单独的离线查找(如ROV)。该路径上的每个AS生成一个加密签名,该签名在通告通过网络传播时添加到该路径上。虽然BGPsec提供了完整路径的验证,但它给BGP路由器带来了沉重的负担。它还需要沿着一条路径的所有ase参与,这使得增量部署具有挑战性。我们还没有看到BGPsec的实际部署。gydF4y2Ba
在本文中,我们提供了构建防御的新角度——除了网络层防御之外,应用程序还可以通过考虑底层路由属性来构建自己的应用层防御。我们还强调了针对复杂攻击部署防御的重要性,这些攻击在破坏Internet应用程序方面更加隐蔽和有效。gydF4y2Ba
Tor是使用最广泛的匿名系统。gydF4y2Ba7gydF4y2Ba它每天承载tb级的流量,为数百万用户服务。gydF4y2BajgydF4y2Ba然而,网络级别的对手可以通过发起路由攻击来观察用户流量并随后进行相关性分析,从而去匿名化Tor用户。此外,这些攻击还广泛适用于Tor以外的低延迟匿名通信系统(例如,I2P匿名网络甚至vpn)。gydF4y2Ba
Tor是如何工作的。gydF4y2Ba为了防止对手将客户端与目标服务器相关联,Tor对网络流量进行加密,并通过一系列的gydF4y2Ba继电器gydF4y2Ba(代理)在到达目的地之前。客户端选择三个继电器(入口、中间、出口),并构造一个gydF4y2Ba电路gydF4y2Ba通过他们gydF4y2Ba分层加密gydF4y2Ba通过使用当前跳的密钥重复加密下一跳(参见gydF4y2Ba图5gydF4y2Ba).每个中继只学习上一跳和下一跳,没有中继或本地网络观察者可以同时识别源和目的。gydF4y2Ba
然而,Tor被认为很容易受到网络级别对手的攻击,他们可以观察通信两端的流量,即客户端和入口之间,出口和服务器之间。默认情况下,Tor不会混淆包计时,因此进入和离开Tor的流量是高度相关的。两端路径上的对手可以对报文跟踪进行流量相关性分析,实现客户端去匿名化。gydF4y2Ba
匿名系统路由攻击。gydF4y2Ba来自网络级别对手的传统攻击主要针对已经在路径上观察Tor通信的被动对手。然而,对手可以利用主动路由攻击,战略性地拦截Tor流量,实现按需和有针对性的攻击。gydF4y2Ba22gydF4y2Ba
图6gydF4y2Ba说明了攻击。AS3(对手)只看到出口和Web服务器之间的流量,需要拦截客户端和入口中继之间的流量。它还需要保持连接处于活动状态,以便为相关性分析捕获足够的通信量,即执行gydF4y2Ba拦截攻击。gydF4y2BaAS3宣布一个覆盖入口中继的目标前缀的同样特定的前缀,同时维护到受害AS1的有效路径(通过AS5)。因此,来自客户端的流量被路由到对手AS3,对手AS3将流量转发到AS1,以保持连接的活跃。如果攻击者还没有在该路径上,也可以执行类似的攻击来拦截出口-服务器连接。gydF4y2Ba
图6。攻击方(AS3)对AS1中的入口中继发起拦截攻击,因此除了观察出口-服务器的流量之外,还观察客户端-入口的流量。gydF4y2Ba
鉴于这一点,袭击变得更具威胁性gydF4y2Ba交通的任意方向gydF4y2Ba就足够了,这就为更多的对手打开了大门。gydF4y2Ba图7gydF4y2Ba演示了用户从Web服务器下载文件的场景。攻击者对入口中继进行拦截攻击,只看到一个方向的流量(客户端到入口中继),其中大部分是TCP ACK报文。然后,对手使用TCP报头(未加密)的序列和确认号来确定向另一个方向传输的数据包的大小。gydF4y2Ba
图7。对手可能只看到流量的一个方向,但仍然可以执行非对称流量分析,以反匿名化用户。gydF4y2Ba
通过研究人员控制的前缀下的入口中继,50个Tor客户端从50个Web服务器下载文件,攻击成功地在Tor网络上进行了演示(道德上)。gydF4y2Ba22gydF4y2Ba路由通知通过对等测试台传播,gydF4y2Ba18gydF4y2Ba有人对入口中继的前缀发起了拦截攻击。攻击期间没有真正的用户受到影响。在不到五分钟的时间里,90%的客户被匿名化了。gydF4y2Ba
保护匿名性的防御。gydF4y2Ba许多现有的防御系统不能充分检测或防止这种拦截攻击。最近的工作提出了Tor的应用层防御。gydF4y2Ba21gydF4y2Ba,gydF4y2Ba23gydF4y2Ba
通过中继选择进行主动防御。gydF4y2Ba孙等人。gydF4y2Ba21gydF4y2Ba提出了一种新的中继选择算法来保护Tor客户端和入口中继之间的连接。该算法防御入口中继上同样特定的前缀攻击,其中的效果是局部的,只有特定位置的客户端会受到影响。本地化效应为客户端提供了不受影响的可能性,即在任何攻击发生之前,通过明智和主动地选择中继。该算法根据客户端和中继的拓扑位置,最大化客户端不受攻击影响的概率。它成功地将概率平均提高了36%(对于某些Tor客户端位置高达166%)。gydF4y2Ba
通过监测进行反应性防御。gydF4y2Ba为了补充主动防御,Sun等人提出了Tor中继路由活动的监测系统。该系统使用了新的检测技术,如基于时间和基于频率的启发式,专门为Tor调优。作者表明,大多数涉及Tor中继的BGP更新只由一个AS宣布(跨越所有更新),有效地区分了过去从未宣布前缀的对手AS所发布的公告。Tan等人。gydF4y2Ba23gydF4y2Ba还提出了一种数据平面检测方法,定期运行traceroute检测最长前缀攻击,并在异常检测时更新Tor中继描述符,使Tor客户端可以相应选择入口中继。gydF4y2Ba
公钥基础设施是确保在线通信安全的基础。数字证书是由受信任的证书颁发机构(ca)向域所有者颁发的证书,用于验证域的所有权。因特网用户信任具有加密通信的域,例如银行网站,只有在提供由CA签署的有效证书的情况下。这种机制有效地防止了MITM (man - in - middle, man - in - middle)攻击,这种攻击可能带来灾难性的后果,比如窃取用户的财务信息。gydF4y2Ba
然而,证书颁发过程本身容易受到路由攻击,从而允许网络级别的对手为任何受害域获得受信任的数字证书。gydF4y2Ba3.gydF4y2Ba这些攻击对在线通信的完整性和隐私性有重大影响,因为对手可以使用欺诈获得的数字证书绕过加密提供的保护,并对关键通信发起中间人攻击。gydF4y2Ba
证书颁发机构如何工作。gydF4y2Ba域控制验证是域所有者从ca获取数字证书的关键过程。域所有者向CA请求数字证书,CA响应一个挑战,要求所有者证明对与域关联的重要网络资源(例如,网站或电子邮件地址)的控制。gydF4y2Ba图8gydF4y2Ba举例说明HTTP验证,CA要求域所有者将文档上传到其Web服务器上的一个知名目录,并通过HTTP验证上传。挑战完成后,CA向域所有者颁发数字证书。gydF4y2Ba
数字证书路由攻击。gydF4y2Ba域控制验证过程为对手创造了一个漏洞,他们可以伪造对网络资源的控制。网络级别的对手可以使用路由攻击来劫持或拦截到受害者域的流量,这样CA的请求就会被路由到对手那里gydF4y2Ba3.gydF4y2Ba(步(5)进去gydF4y2Ba图8gydF4y2Ba).然后,对手可以在步骤(6)中响应CA的HTTP请求,并随后从受害域的CA获得已签名的数字证书。这些攻击成功地在现实世界中进行了伦理论证。gydF4y2Ba3.gydF4y2Ba被攻击的域名运行在研究人员控制的IP前缀上,没有真正的用户或服务。攻击者在短短35秒内成功地从5个顶级ca获得受害域的证书(请参阅gydF4y2Ba表格gydF4y2Ba这里)。gydF4y2Ba
表格攻击5个ca,并从中获取证书。所有这些都是自动化的,没有一个对BGP攻击有任何防御。gydF4y2Ba3.gydF4y2Ba
这项工作强调了路由攻击的重大破坏,可以破坏安全在线通信的基础,并显示出实际防御的迫切需要。此外,这些攻击还适用于其他需要通过验证请求演示对某些资源的控制的系统,例如电子邮件验证。与邮件服务器的通信可能被劫持或拦截,仍然有不可忽视的数量的电子邮件未加密(例如,不到20%的电子邮件来自“gydF4y2Baicicibank.comgydF4y2Ba,一个银行网站,都是加密的gydF4y2BakgydF4y2Ba).gydF4y2Ba
保护数字证书的防御。gydF4y2Ba目前部署的许多防御措施不能充分保护数字证书。由于获取欺诈证书所需的时间相对较短,即使被监控系统检测到,对手也可以在攻击减轻之前获得证书。此外,攻击者可能只使用不影响大部分Internet的局部路由攻击来获得恶意证书。如果一个域没有CAA DNS记录(目前绝大多数域都是这样gydF4y2Ba17gydF4y2Ba),任何CA都被授权为该域签署证书。因此,对手只需要影响一个(几百个)ca和目标域之间的路由,就可以获得欺诈证书。gydF4y2Ba
Birge-Lee等人。gydF4y2Ba3.gydF4y2Ba最近提出了两个实用的应用层防御。(1)多优势点验证(Multiple Vantage Point Verification):基于路由攻击可能是本地化的这一关键洞察,ca可以从多个优势点进行域验证,在验证结果不一致的情况下暂停证书颁发,从而显著降低其受到攻击的脆弱性。通过增加一个额外的优势点,捕获域上的局部路由攻击的概率从61%增加到84%。由于有两个额外的有利位置,研究中180万个域名中74%的域名被攻击的概率超过90%。(2)使用路由年龄启发式的BGP监视:基于异常和可疑的路由通告通常是短暂的这一关键洞察,ca可以在签署证书之前要求到达域的路由在最短的时间阈值内处于激活状态。这种防御将迫使攻击在一天以上的时间内处于活跃状态,然后这些路由才能被用来获取伪造证书。这两种防御只需要ca进行最少的部署工作,不需要域所有者或路由基础设施进行更改。gydF4y2Ba
多重优势点验证已经获得了巨大的吸引力。Let's Encrypt是世界上最大的CA,已经部署了多个有利点验证。gydF4y2BalgydF4y2Ba,gydF4y2Ba26gydF4y2Ba此外,著名的CDN CloudFlare为ca开发了一个API,使用其网络执行多个有利位置验证。gydF4y2Ba米gydF4y2Ba
比特币是迄今为止使用最广泛的加密货币,有超过4200万用户。gydF4y2BangydF4y2Ba然而,网络级别的对手可以发起路由攻击,对比特币网络进行分区,有效地阻止系统达成共识。gydF4y2Ba2gydF4y2Ba除了比特币,这种攻击通常适用于许多点对点网络,对区块链系统尤其危险。gydF4y2Ba
比特币的工作原理。gydF4y2Ba比特币是一个点对点的网络,在这个网络中,节点使用共识机制来共同同意所有曾经发生过的交易的(分布式)日志。这个日志被称为gydF4y2Ba区块链gydF4y2Ba因为它是由分组事务(块)的有序列表(链)组成的。gydF4y2Ba
被称为钱包的特殊节点负责发起交易,并使用八卦协议在网络中传播它们。另一组节点(称为矿工)负责验证最近的事务,将它们分组到一个块中,并将该块附加到区块链。要做到这一点,矿工需要解决一个周期性的难题,其复杂性自动适应网络中矿工的计算能力。gydF4y2Ba
每次矿工创建一个区块,它就会广播到网络中的所有节点,并接收新挖出的比特币。除了最近的事务之外,该块还包含一个工作量证明(谜题的解决方案),每个节点在进一步传播该块之前都可以独立验证该工作量证明。在gydF4y2Ba图9gydF4y2Ba、节点gydF4y2BangydF4y2Ba“挖掘”一个区块,然后在网络中逐跳广播。gydF4y2Ba
图9。(a)由不同ase中的比特币节点挖掘的新区块被传播到整个网络。(b)攻击者劫持了灰色地带中所有与比特币节点相关的前缀。因此,灰色地带的节点挖掘的块不会被进一步传播,有效地隔离了灰色地带。gydF4y2Ba
由于矿工同时工作,他们中的几个可能会在几乎同一时间找到一个区块。这些区块有效地在区块链中创建“分叉”,即区块链的不同版本。当后续块附加到每个链上,其中一个块变长时,冲突最终得到解决。在这种情况下,网络会自动丢弃较短的链,有效地丢弃相应的区块和矿商的收入。gydF4y2Ba
路由攻击共识。gydF4y2Ba网络级别的对手可以对比特币执行路由攻击,将节点集划分为两个(或多个)不相连的组件。gydF4y2Ba2gydF4y2Ba因此,攻击破坏了整个网络达成共识的能力。敌人必须改变方向,切入gydF4y2Ba所有gydF4y2Ba将各种组件连接在一起的连接。为此,攻击者可以通过劫持每个组件的IP前缀来执行拦截攻击,并有选择地丢弃跨组件的连接,同时保持(组件内的)内部连接不受影响。gydF4y2Ba
在gydF4y2Ba图9 bgydF4y2Ba,攻击者就会在灰色地带劫持所有与比特币节点相关的前缀。在获得了对指向这些节点(红线)的流量的控制之后,攻击者将断开灰色区域内外客户机之间的连接,从而有效地创建一个分区。gydF4y2Ba
分区攻击的影响令人担忧。首先,分区攻击可以充当拒绝服务攻击:客户端既不能正确传播相应的事务,也不能验证资金的所有权。其次,分区攻击会导致矿工的高额收入损失:一旦网络重新连接,最短的链(s)将被丢弃,永久剥夺矿工的奖励。gydF4y2Ba
保护比特币共识的防御。gydF4y2BaApostolaki等人。gydF4y2Ba1gydF4y2Ba最近提出了SABRE来保护比特币免受分区攻击。SABRE是一个覆盖网络,由一小组特殊的比特币客户端(中继)组成,接收、验证和传播区块。常规比特币客户端除了常规连接外,还可以连接到一个或多个中继。在分区攻击期间,SABRE中继保持彼此连接和许多比特币客户端连接,允许在其他断开连接的组件之间传播块。在gydF4y2Ba图10 bgydF4y2Ba,而灰色区域的客户端与网络的其他部分隔离,这是一个按节点挖掘的块gydF4y2BangydF4y2Ba通过中继节点(橙色)传播到网络的其余部分。gydF4y2Ba
图10。(a)中继节点托管在没有客户ase的ase中,组成直接对等链路的连通图。比特币客户端连接到至少一个中继节点。(b)虽然路由攻击将灰色地带与比特币网络的其他部分隔离开来,但在灰色地带挖掘的区块是通过覆盖SABRE网络中的中继节点传播的。gydF4y2Ba
SABRE通过战略地选择承载中继节点的ase来实现这一点。关键的见解是,一些ase(比如没有客户的ase)自然受到保护,不受路由攻击。通过在这些ase中托管中继,SABRE可以保持其连通性和代表比特币客户传播区块的能力,即使存在路由攻击。注意,比特币客户端只需要一个不受阻碍的连接到一个SABRE中继被保护。gydF4y2Ba
在SABRE网络中所示gydF4y2Ba图10gydF4y2Ba,三个ase (gydF4y2BaASBgydF4y2Ba,gydF4y2BaASCgydF4y2Ba,gydF4y2Ba自闭症谱系障碍gydF4y2Ba)被选为托管中继节点,这些中继节点彼此直接对等,没有客户ase。在路由攻击中,中继节点之间保持连接。例如,如果gydF4y2Ba这种gydF4y2Ba(供应商gydF4y2BaASCgydF4y2Ba)表示前缀gydF4y2BaASBgydF4y2Ba,gydF4y2BaASCgydF4y2Ba还是更喜欢这条路线gydF4y2BaASBgydF4y2Ba因为这是通过一个同伴。此外,在攻击期间,所有比特币客户端都至少保持一个与中继网络的连接。甚至节点如nodegydF4y2Ba问gydF4y2Ba由于攻击而失去与中继网络的一个连接,通过另一个中继节点保持连接。gydF4y2Ba
我们演示了路由攻击对关键应用程序的新出现的威胁。接下来,我们概述从这三个应用程序中学到的经验教训,并讨论在应用程序层和网络层开发解决方案的重要性。gydF4y2Ba
适用于应用程序开发人员。gydF4y2Ba最重要的收获是路由(in)安全对Internet应用程序的显著影响。当隔离地保护应用层变得难以实现时,我们应该考虑考虑网络层路由属性的跨层解决方案。gydF4y2Ba
我们概述了两个路由属性,它们是构建应用层防御的关键洞见:gydF4y2Ba局部腐蚀gydF4y2Ba:攻击公告可能不会被传播并对整个互联网可见,而隐秘的对手可以精心制作公告来控制传播并只针对特定区域;gydF4y2Ba攻击的弹性gydF4y2Ba:部分收到攻击公告的as可能不受影响,即不支持恶意路径,因此对攻击具有“弹性”。这取决于路由首选项,例如,如果AS收到来自提供商的攻击通知,而合法路径是通过对等体的,AS仍然会选择合法路径。gydF4y2Ba
这两个简单的路由属性导致三个可通用的应用层防御,如gydF4y2Ba图11gydF4y2Ba,其中突出显示了每个防御的关键属性。gydF4y2Ba
图11。两个路由属性是开发应用层防御的关键洞见。gydF4y2Ba
部署多个有利位置。gydF4y2Ba从多个有利位置发起连接增加了检测和规避局部攻击的可能性。证书颁发机构可以从多个有利位置执行域控制验证,以确保到目的地的路由是一致的。这种方法可推广到一组广泛的验证过程,其中来自多个来源的验证将有助于降低攻击的成功率,并显著增加对手的成本。BGP监视系统还受益于通过多个有利位置获得更全面的数据,以检测隐身攻击。gydF4y2Ba
选择弹性节点。gydF4y2Ba应用程序可以策略性地选择最能抵御攻击的节点/服务器。给定客户机和中继的AS位置,Tor客户机可以选择最大限度地提高弹性概率的入口中继。比特币可能会选择某些AS(例如,没有客户的对等AS)中的中继节点,以避免受到攻击的影响。具体的实现可以根据应用程序的需要而有所不同,甚至可以将RPKI作为选择弹性节点的标准。gydF4y2Ba
建立一个覆盖网络。gydF4y2Ba这种方法可以帮助减轻路由攻击的一些影响,例如,通过提供替代路由对比特币节点进行分区。当与“选择弹性节点”结合使用时,它会更有效,其中覆盖层中的节点经过仔细选择,以最大限度地提高对攻击的弹性。比特币是一个示例应用程序,它得益于覆盖来减轻分区攻击,但这种方法通常适用于许多点对点网络。gydF4y2Ba
针对网络运营商。gydF4y2Ba虽然应用层防御可以提供即时的保护,但我们也应该推动针对复杂路由攻击的通用防御的大规模部署。我们建议as:采用MANRS项目中概述的最佳实践,通过发布ROAs和执行路由起源验证(ROV)来加速RPKI的采用,并在解决路由安全问题(包括全路径安全)的途径上建立共识。此外,我们还概述了两种将网络运营商与应用程序开发人员进行协同的方法。gydF4y2Ba
应用程序作为起点。gydF4y2Ba保护所有800K前缀和67K ase似乎是一项不可能完成的任务。但是,只有一小部分前缀在每个应用程序中起重要作用。例如,只有大约1100个AS在它们的前缀上托管Tor中继,而一个AS单独承载了所有Tor流量的23%。gydF4y2Ba21gydF4y2Ba此外,在数字证书颁发中,少数证书颁发机构颁发绝大多数证书,而域主要托管在少数云和CDN提供商上(例如,包括SquareSpace和Amazon在内的5个as托管了近一半的域gydF4y2Ba3.gydF4y2Ba).最后,只有5个ASes托管了三分之一的比特币客户端,gydF4y2BaogydF4y2Ba而50%的挖矿能力承载在不到100个前缀中。gydF4y2Ba2gydF4y2Ba如果几千个ase能够采取主要步骤来部署路由安全性,那么应用程序将获得巨大的好处。gydF4y2Ba
应用程序作为激励。流行的应用程序——以及它们的用户——可以通过它们所采取的操作来帮助激励路由安全解决方案的部署,同时确保应用程序的安全/隐私目标。例如,Tor可以支持托管在经过身份验证的前缀上的某些中继,而域所有者可以支持提供起源验证的云托管服务,并支持托管在经过身份验证的前缀上的证书颁发机构。类似地,矿工可能更喜欢将他们的基础设施托管在提供起源验证的ASes中,而普通客户机可能更喜欢连接到托管在经过身份验证的前缀上的对等体。这些步骤可能有助于激励网络运营商验证他们的前缀,为客户提供更好的服务,并最终导致一个更安全的路由基础设施。gydF4y2Ba
通常情况下,我们会孤立地关注各个系统层。忽略了路由(In)安全性,应用程序开发人员低估了用户的风险。在关注可用性威胁时,网络运营商低估了互联网应用程序的风险。通过演示路由攻击对Internet应用程序的可怕后果,我们强调了跨层感知的重要性,以及部署应用层和网络层解决方案的必要性。gydF4y2Ba
1.Apostolaki, M., Marti, G., Muller, J.和Vanbever, L. SABRE:保护比特币免受路由攻击。在gydF4y2Ba网络与分布式系统安全学报。gydF4y2Ba, 2019年。gydF4y2Ba
2.Apostolaki, M., Zohar, A.和Vanbever, L.劫持比特币:路由攻击加密货币。在gydF4y2BaIEEE会议论文集。有关保安及私隐gydF4y2Ba, 2017年。gydF4y2Ba
3.Birge-Lee, H., Sun, Y., Edmundson, A., Rexford, J.和Mittal, P.用BGP欺骗证书权威。在gydF4y2BaUSENIX安全研讨会论文集。gydF4y2Ba, 2018年。gydF4y2Ba
4.Birge-Lee, H., Wang, L., Rexford, J.和Mittal, P. SICO:通过操纵BGP社区的外科拦截攻击。在gydF4y2Ba计算机与通信安全ACM会议论文集gydF4y2Ba, 2019年。gydF4y2Ba
5.S-BGP和其他路径向量协议的可证明安全性:模型、分析和扩展。在gydF4y2Ba计算机与通信安全会议论文集gydF4y2Ba, 2012年。gydF4y2Ba
6.Bush, R.和Austein, R.资源公钥基础设施(RPKI)到路由器协议。RFC 6810, RFC编辑器,2013年1月。gydF4y2Ba
7.R. Dingledine, N. Mathewson和P. Syverson Tor:第二代洋葱路由器。在gydF4y2BaUSENIX安全研讨会论文集。gydF4y2Ba, 2004年。gydF4y2Ba
8.Gill, P., Schapira, M.和Goldberg, S.让市场驱动部署:向BGP安全过渡的策略。gydF4y2BaACM SIGCOMMgydF4y2Ba, 2011年。gydF4y2Ba
9.无国界监控:“流量整形”漏洞及其重要性。gydF4y2Ba世纪基金会gydF4y2Ba, 2017年。gydF4y2Ba
10.胡晓,毛振明。IP地址前缀劫持的精确实时识别。在gydF4y2BaIEEE会议论文集。有关保安及私隐gydF4y2Ba, 2007年。gydF4y2Ba
11.Kent, S, Lynn, C, Seo, K.安全边界网关协议(S- bgp)。gydF4y2Ba18 . IEEE J.公共选择区域gydF4y2Ba, 4(2000), 582-592。gydF4y2Ba
12.Lad, M., Massey, D., Pei, D., Wu, Y., Zhang, B.和Zhang, L. PHAS:前缀劫持警报系统。在gydF4y2BaUSENIX安全研讨会论文集。gydF4y2Ba, 2006年。gydF4y2Ba
13.Lepinski, M.和Sriram, K. BGPsec协议规范。RFC 8205, RFC编辑器,2017年9月。gydF4y2Ba
14.Lychev, R., Goldberg, S.和Schapira, M.部分部署的BGP安全:这是值得的吗?gydF4y2BaACM SIGCOMMgydF4y2Ba, 2013年。gydF4y2Ba
15.Qiu J., Gao L., Ranjan, S., Nucci, A.检测虚假BGP路由信息:超越前缀劫持。gydF4y2BaSecureCommgydF4y2Ba, 2007年。gydF4y2Ba
16.路透社,R. Bush, Cunha, I. Katz-Bassett, E. Schmidt, T.C和Wahlisch, M.为测量RPKI路由验证和过滤采用的严格方法。gydF4y2BaACM SIGCOMM计算机通信。启48gydF4y2Ba, 1(2018), 19-27。gydF4y2Ba
17.Scheitle, q等人。首先看一下认证机构授权(CAA)。gydF4y2BaSIGCOMM第一版。Commun。牧师。gydF4y2Ba2018年5月,48(2):10-23。gydF4y2Ba
18.Schlinker, B., Arnold, T., Cunha, I.和Katz-Bassett, E.。在gydF4y2BaACM SIGCOMM context Conf会议记录。gydF4y2Ba2019年12月。gydF4y2Ba
19.石X,向勇,王铮,尹X,吴杰。基于Argus的Internet前缀劫持检测。在gydF4y2Ba互联网测量会议论文集。gydF4y2Ba, 2012年。gydF4y2Ba
20.实用的日常BGP过滤与AS PATH过滤器:PeerLocking。gydF4y2Bananog - 67gydF4y2Ba2016年6月,芝加哥。gydF4y2Ba
21.Sun, Y., Edmundson, Feamster, N., Chiang, M.和Mittal, P. counterraptor:保护Tor免受主动路由攻击。在gydF4y2BaIEEE会议论文集。安全和私隐gydF4y2Ba, 2017年。gydF4y2Ba
22.Sun, Y., Edmundson, A., Vanbever, L., Li, O., Rexford, J., Chiang, M.和Mittal, P. RAPTOR:路由攻击Tor的隐私。在gydF4y2BaUSENIX安全研讨会论文集。gydF4y2Ba, 2015年。gydF4y2Ba
23.Tan, H., Sherr, M.和Zhou, W.针对Tor上路由攻击的数据平面防御。在gydF4y2Ba隐私保护技术协会gydF4y2Ba, 2016年。gydF4y2Ba
24.张志刚,张玉玉,胡永春,毛志明,布什,iSpy:自己检测IP地址前缀劫持。gydF4y2BaACM SIGCOMMgydF4y2Ba, 2008年。gydF4y2Ba
25.郑春春,季亮,裴东,王军,Francis P.一种实时检测IP地址前缀劫持的轻量级分布式方案。gydF4y2BaACM SIGCOMMgydF4y2Ba, 2007年。gydF4y2Ba
26.Birge-Lee, H., Wang, L., McCarney, D., Shoemaker, R., Rexford, J.和Mittal, P.在Let's Encrypt部署多优势域验证的经验。在gydF4y2BaUSENIX安全研讨会论文集。gydF4y2Ba, 2021年gydF4y2Ba
a.谷歌前缀泄露——并将日本踢出互联网,2017年;gydF4y2Bahttp://bit.ly/3sPjWIIgydF4y2Ba
b. 2019年BGP事件通过中国电信发送2小时欧洲移动流量;gydF4y2Bahttp://bit.ly/3qJrefcgydF4y2Ba
c. AWS DNS网络劫持将MyEtherWallet变成窃贼etherwallet, 2018;gydF4y2Bahttps://www.theregister.co.uk/2018/04/24/myether-walletdnshijackgydF4y2Ba
d. CIDR报告,2020年;gydF4y2Bahttp://www.cidr-report.org/as2.0gydF4y2Ba
e.巴基斯坦劫持YouTube, 2008年;gydF4y2Bahttps://dyn.com/blog/pakistan-hijacks-youtube-1gydF4y2Ba
f.网络塑造101;gydF4y2Bahttps://www.documentcloud.org/documents/2919677-Network-Shaping-101.htmlgydF4y2Ba.gydF4y2Ba
g.关闭BGP劫持工厂,2018;gydF4y2Bahttps://blogs.oracle.com/internetintelligence/shuttingdown-the-bgp-hijack-factorygydF4y2Ba
h. MANRS项目,2020;gydF4y2Bahttps://www.manrs.org/gydF4y2Ba
i. RPKI部署监视器;gydF4y2Bahttps://rpki-monitor.antd.nist.gov/gydF4y2Ba.gydF4y2Ba
j. Tor度量;gydF4y2Bahttps://metrics.torproject.org/gydF4y2Ba.gydF4y2Ba
k.谷歌透明度报告;gydF4y2Bahttps://transparencyreport.google.com/safer-email/gydF4y2Ba.gydF4y2Ba
l.多视角验证提高域验证安全性,2020;gydF4y2Bahttps://let-sencrypt.org/2020/02/19/multiperspective-validation.htmlgydF4y2Ba
m.使用多路径域控制验证确保证书颁发,2019;gydF4y2Bahttps://blog.cloudflare.com/secure-certificate-issuancegydF4y2Ba
n. 2020年全球区块链钱包用户数量;gydF4y2Bahttps://www.statista.com/statistics/647374/worldwide-blockchain-wallet-users/gydF4y2Ba
o。Bitnodes。gydF4y2Bahttps://bitnodes.io/dashboard/gydF4y2Ba.gydF4y2Ba
数字图书馆是由计算机协会出版的。版权所有©2021 ACM, Inc.gydF4y2Ba
只是一个问题。如果目前只有不到20%的前缀具有有效的roa,甚至更少的as具有良好的ROV,并且五个as托管了近一半的域,那么很有必要知道这五个as中有多少已经对ROV是安全的,本文末尾的其他示例也是如此。gydF4y2Ba
尽管29%的前缀具有有效的ROA,但域托管中的少数顶级as具有明显更好的ROA覆盖率。例如,Amazon和GoDaddy对其超过96%的前缀有有效roa, SquareSpace对37.5%的前缀有有效roa(来源:https://rpki-validator.ripe.net/bgp-preview)。另一方面,ROV需要由as完成,as将流量发送到带有roa的前缀。根据ROV部署监控(https://rov.rpki.net/), 127个as执行特定级别的ROV,包括主要的isp,如Hurricane Electric。然而,包括亚马逊和GoDaddy在内的主要内容提供商还没有部署ROV。gydF4y2Ba
此外,即使使用ROA保护前缀,并且AS执行ROV,对手仍然可以通过添加真正的起源AS前缀来发起攻击(正如在真实世界的攻击https://arstechnica.com/information-technology/2018/12/how-3ves-bgp-hijackers-eluded-the-internet-and-made-29m/中所见)。因此,即使采用RPKI的人越来越多,保护完整路由路径的需求仍然存在。gydF4y2Ba
显示gydF4y2Ba所有2gydF4y2Ba评论gydF4y2Ba