关键字 |
IP回溯,包日志,包标记 |
介绍 |
在过去的十年中,大量的注意力都集中在互联网基础设施的安全性上,因为在日益增长的电子商务应用程序中,它是传输、接收和存储的重要组成部分。然而,对于备受关注的分布式拒绝服务(DDOS)攻击,已经制定了许多方法来识别这些攻击的来源,其中一种方法是使用IP回溯。IP回溯的目的是跟踪一个IP报文的路径,直到它的起源。IP回溯最重要的用途是处理某些拒绝服务(DoS)攻击,其中源IP地址被攻击者欺骗。识别攻击报文的来源是追究攻击者责任的重要步骤。此外,了解攻击流量所经过的网络路径,可以提高包过滤等防御措施的有效性,使其应用于距离受害者更远、更接近源的地方。在两个正交维度上提出了两种主要的IP回溯技术:包标记[1]和包日志[2]。在包标记中,路由器用自己的识别信息标记转发的IP包。由于报文头空间有限,路由器随机决定对报文进行标记,使每个标记的报文只携带部分路径信息。通过将一定数量的包含标记的包组合在一起,可以重构网络路径。 This approach is known as probabilistic packet marking (PPM) [3]. The PPM approach incurs little overhead at routers. But it can only trace the traffic composed of a number of packets because of its probabilistic nature. |
在包日志中,IP包被记录在它经过的每个路由器上。从历史上看,包日志记录被认为是不切实际的,因为包日志需要巨大的存储空间。基于哈希的IP回溯方法[4]在节省空间的数据结构中记录数据包摘要,bloom过滤器[5],以显著降低存储开销。为了重建网络路径,需要查询路由器。实现回溯所需的信息要么存储在数据包所经过的路径上的不同点上(主要是在路由器上),要么存储在该路径上,通常会分析其他附带路径以获得用于回溯的信息。正是基于这种区别,我们将基于网络的方案进一步划分为报文日志方案和网络分析方案。 |
包日志方案: |
在包日志记录方案中,回溯是通过要求包所遍历的节点以这样一种格式记录关于该包的信息来实现的,这种格式以后可以查询,以发现是否在该节点上看到过该包。这里的最大缺点是每个节点可能需要大量的存储空间,特别是连接到高速链路的节点,这些高速链路见证了大量的流量。IP Traceback中最明确的工作之一是基于哈希的IP Traceback方案[3],它为每个节点上的每个包计算并存储Bloom过滤器摘要。该方案包括一个源路径隔离引擎(SPIE),它不是存储整个数据包,而是通过仅存储基于IP报头的不变部分以及有效负载的前8个字节的每个数据包的计算散列来节省空间。使用Bloom过滤器在解决包日志方案的存储空间问题方面是一种创新,但尽管如此,在计算和空间方面的要求仍然令人生畏。如[4]中所述,假设数据包大小为1000位,双工OC- 192链路需要每秒执行6000万次散列操作,导致使用SRAM (50ns DRAM对于这来说太慢了)和每小时44GB的存储空间,参数建议在[3]中。为了解决这个问题,[4]进一步提出了一种基于数据包日志的回溯方案,该方案通过只采样和记录一小部分数据包,然后使用更复杂的技术来实现回溯,从而可扩展到如此高的链路速度。然而,我们注意到[4]所采取的方法失去了[3]原本拥有的单包回溯能力。 |
包裹标记方案 |
与ICMP消息传递方案不同,包标记方案在包本身中编码关于包所经过的路径的信息,通常在IP报头中很少使用的字段中。除了在当前IP报头中找到足够的空间来放置回溯信息这一众所周知的问题之外,包标记方案的另一个常见问题是在标记过程中放置在路由器上的额外计算任务。有两种常见的方法可以实现这一点 |
确定性包标记方案 |
确定性包标记涉及对每个单独的包进行标记,该包在传输过程中到达的一个或多个节点上的节点标记信息可以通过考虑每个包上的标记来实现回溯。这些标记通常放置在IP报头的保留空间中(大多数建议的解决方案使用标识字段)。 |
与此方法相关的开销主要是数据包空间和IP头中所需的修改,以及所需的路由器处理时间。不同的方案在它们使用的标记类型以及需要标记节点的点上有所不同。在[10]例如,八位字节标记代码是一半的IP地址(例如16位)+一个额外的位表示一半和17位存储数据包,由16位ID字段和1位保留标记位是用来保存这些信息,而在[21]提出一种基于路由层拓扑的编码方案是存储在一个未来IPv6数据包报头,规定为52字节回溯的目的。 |
概率包标记 |
概率方案通过要求一个包只标记它所经过的路径的一部分而不是整个路径来对抗确定性包标记中的空间限制。这种方案做出了合理但并非万无一失的假设,即攻击通常由大量数据包组成,因此通过聚合来自大量数据包的这些部分路径信息,可以在路径重构的同时实现回溯。 |
这两种类型都有各自的特点:概率包标记在路由器标记速率较低时开销较小,但受害者需要大量的包来重建到源的路径。它更适合于泛洪DoS回溯,并且不具备跟踪单个数据包的能力。SPIE提取包的摘要并将其存储在称为bloom filter[15]的空间效率数据结构中,这降低了存储开销并使包日志方案实用。它可以跟踪小包流,甚至单个包。然而,由于存储开销较大,其实用性仍然具有挑战性。因此,将这两种技术结合起来,提出一种有效的IP溯源机制,即混合IP溯源方案是很有吸引力的。目前,龚超提出的HIT (Hybrid Internet Traceback)是最具代表性的。HIT借用了包日志的主要思想,并在每个其他路由器上记录包摘要。标记路由器不记录摘要,而是将其ID信息写入IP头的某些字段。它有效地降低了SPIE巨大的存储开销。然而,HIT也有一些缺点。 Firstly, it may return incorrect path even the false source; then it still has a great demand for storage, which would limits its practicality. |
本文提出了一种基于包标记和包日志的攻击路径重构方法。我们的方法的贡献是:(1)将路由器的存储开销减少到大约一半,以及(2)将记录数据包的访问时间要求减少到邻居路由器数量的一个因素。对于每个到达的数据包,路由器总是提交标记操作,但在需要时提交日志操作(通常交替进行)。数据包摘要的存储方式与基于哈希的方法相同。但是标记的存储方式节省了空间,因此标记的存储需求可以忽略不计。这样路由器的存储开销就减少了一半。每个路由器为它的每个邻居路由器维护一个不同的摘要表。来自不同邻居路由器(标记不同)的报文可以同时记录在相应的摘要表中。这样可以将访问时间要求降低到邻居路由器数量的1 / 3。 |
本文的其余部分组织如下。第二节将我们的方法放在相关工作的背景中。第三节详细描述了我们的IP回溯方法。第四节分析了我们的方法的资源需求和性能。 |
背景及相关工作 |
背景:拒绝服务(DoS)是目前Internet上的一种威胁性入侵。根据攻击报文流的大小,可以分为两类。一种是使用大量无意义的报文消耗受害者的资源,称为资源消耗DoS。它是最主要的类型,可以在很短的时间内使受害者资源穷尽。另一种是利用受害者自身运行的软件或服务存在的漏洞,使受害者无法提供服务,称为软件利用DoS。它的关键特征是较小的信息流,甚至是单个信息流。近年来,它已成为DoS的重要组成部分。我们应该做的是尽力防御严重的网络攻击。遗憾的是,IP网络是为了自由和资源共享而设计的,没有过多考虑安全问题,匿名访问和非状态是两个关键特征。这意味着不保证源地址的真实性,也不记录报文的传输路径。 In addition, attacker may insert an arbitrary address into the source address field of a packet, which is known as IP spoof, and IP spoof makes it more difficult to defend DoS intrusion. Therefore, it is an extraordinary challenge for us to trace back to the source of DoS. IP Traceback technique is studied to resolve the problem, and it can be defined that equipments in IP network record packets state information in the network with a certain mechanism, reconstruct the complete path and find the source reliably in the end. |
相关工作:报文日志方案使路由器记录报文的状态信息,具有对单个报文的跟踪能力。因此可以为溯源提供直观的证据。当spie出现时,它变得实用,但仍然需要很大的存储空间。报文标记方法是路由器将ID信息写入报文的IP头中,重构受害节点的完整路径。不会增加路由器的存储负担。一些研究人员结合两种方法的特点,提出了混合IP回溯方法[16-18]。这些方法具有较低的存储开销和单包回溯能力。在混合IP溯源中,每个启用溯源功能的路由器都将进行日志记录或标记。然而,混合IP追踪方法不应该是两种方法的简单结合,必须重视一些关键问题。首先,在正常情况下,一个标记路由器附近没有一个以上的日志路由器,用来记录攻击报文。 However, in some certain situations, packets will follow some special routes, and a marking router may have more neighboring logging routers. Hybrid IP traceback may return false paths, which could lead to the failure of traceback. Secondly, in themarking process, marking routers insert ID into IP header without logging, which can reduce storage overhead. The marking space in IP header is limited, and full utilization of the space can hold more ID information, which can reduce the percentage of logging routers in all traceback routers. In this way, the IP traceback approach is more practical. |
这种回溯方案的IPv6实现需要更多的研究,因为IPv6有内置的安全机制,如身份验证头来提供源身份验证。因此,我们把它作为我们未来的工作。该消息可以显示状态信息,而不是登录路由器,这可以减少存储开销。与包标记方法一样,这种方法在进行标记时使用IP报头中的某些字段。利用IP头进行标记。IP头中有三个字段用于标记:标识(Identification)、保留标志(Reserved flag)和片段偏移量(fragment offset)。与其他PPM类似,此回溯重用标识字段,该字段用于IP碎片。测量研究表明,在Internet[19]中只有不到0.25%的数据包是碎片化的。Savage等人[8]对该字段使用的向后兼容性问题进行了讨论,并确定了该字段的使用。该方法重用保留标志(RF)字段进行标记,如[20]中建议的那样。 The fragment offset field will become meaningless if the IP Identification filed is reused for other purposes. Therefore, some traceback approaches utilize this field [21, 22], PPIT follows this way.Someone may argue that the value in the fragment offset field could cause some compatible problems. In order to avoid such issues in PPIT, the marking information will be removed before the packet arrives at the destination. In a certain area, IP address is too long to be taken in the IP header marking space and is unnecessary. In PPIT, each marking router is assigned a 14-bit ID number, which is to differentiate it to other neighboring routers. Muthuprasanna et al. [23] studied the unique ID number assignment problem for Internet routers and proposed an approach for internet coloring. They report that 14 bits are enough for a unique ID number assignment within a three-hop neighborhood and 12 bits for two-hop neighborhood, based on theanalysis of several Internet topology data sets. Furthermore, the same ID number can be assigned to routers more than one in different three-hop neighborhood, if these neighborhoods do not have a common router. Therefore, we can use such short ID information to replace IP address. PPIT makes use of the Identification field to store routers ID in 14 bits, which is called router ID field. The ID is generated for each traceback-enabled router, which is set by the network administrators. For each arriving packet, the current router first examines the router ID number marked in the packet header to check whether it is valid. The router ID number carried by a packet p is valid at a router r if it equals to the ID number of some neighbor router of router r. That is, the packet p was forwarded from some neighbor router to router r. If the router ID number is valid, based on the logging flag bit in the packet, the router may choose to commit (1) only marking operation, or (2) both marking and logging operations. If the upstream router logged the packet (logging flag is 1), the current router chooses to only mark the packet; if the upstream router didn’t log the packet (logging flag is 0), the current router chooses to both mark and log the packet. If the router ID number is not valid, that means the arriving packet came directly from the sender host or an attacker which sends packets with forged mark. In this case, the router chooses to commit only marking operation. |
随着网络中支持溯源功能的路由器的广泛部署,IP溯源的有效性大大提高。然而,混合IP回溯方法可能并不要求所有路由器都启用回溯功能。所有启用回溯功能的路由器组成一个覆盖网络。如果回溯服务器拥有覆盖网络的拓扑知识,并且每个启用了回溯功能的路由器都知道相邻的启用了回溯功能的路由器,那么这种唯一路径重建方法仍然有效。 |
攻击路径重构 |
为了重建报文的路径并识别攻击源,受害者需要路由器的映射。受害者将数据包标记与地图上的路由器进行匹配,从而可以重建攻击路径。获得或构建这张地图并不困难。有许多工具可用来获取路由器和Internet的地图。如果一台路由器对攻击报文进行了日志记录操作,检查该路由器上的摘要表不仅可以确认该路由器处于攻击路径中,而且还可以发现其上游路由器处于攻击路径中,因为每个摘要表都标注了上游路由器的ID号。在给定一个攻击报文和攻击对象的情况下,回溯服务器可以根据攻击报文携带的日志标志位推断出最后一跳路由器,以及最后一跳路由器是否进行了日志操作。 |
•如果回溯服务器推断某个路由器记录了攻击报文,检查该路由器上的摘要表将识别其上游路由器在攻击路径中。 |
•如果回溯服务器推断一台路由器没有记录攻击报文,而是标记了攻击报文,通过RPF方式查询该路由器的邻居路由器,并检查这些邻居路由器上的摘要表,就可以识别出上游路由器。这两种方法可以交替构造攻击图。图中显示了如何构造攻击图。 |
•如果数据包在当前路由器上进行了转换,则对数据包进行标记和记录操作,并将转换信息记录在转换查找表中。给定一个数据包,查询转换查找表可以了解数据包是否被转换,原始数据包是否可以被重构。在[4]中描述了转换查找表的实现。 |
•如果数据包是一个碎片数据包,计算并将数据包摘要存储在一个特定的摘要表中,该摘要表仅用于碎片数据包,并以与基于哈希的方法相同的方式进行管理。 |
•否则,按照分组操作过程中的算法进行操作。攻击图构造也相应改进。当回溯服务器检查路由器上的摘要表时,它还会查询该路由器上的转换查找表,并在可能的情况下将攻击报文重构为原始形式。 |
1)如果受害者提供的攻击报文不是由受害者提供的攻击报文,则回溯服务器采用与章节III-B相似的步骤构造攻击图。唯一不同的是,攻击路径上的路由器不再交替记录攻击报文。有可能相邻的两个路由器m和n都记录了同一个数据包p,因为上游路由器m对数据包p进行了记录操作,而p在下游路由器n进行了转换。在回溯过程中,当从记录并转换数据包p的路由器n移动到上游路由器m时,回溯服务器不能假定路由器m没有记录数据包p。回溯服务器需要检查m的摘要表,以确定m是否只标记了p,还是标记了p并记录了p,然后采取相应的行动。 |
2)如果攻击报文是分片报文,则回溯服务器从最后一跳路由器开始,通过RPF方式查询路由器,检查记录分片报文摘要的摘要表,构造攻击路径。 |
路由器的开销 |
在混合方式中,当数据包在网络中传输时,路由上的每个路由器都对数据包进行标记操作,其他所有路由器都提交日志操作。为每个邻居路由器保留不同的摘要表可以使路由器ID号的存储开销可以忽略不计。因此,路由器的总体存储开销减少到大约一半。此外,由于路由器为每个邻居保留了单独的表,因此只要每个摘要表都有自己的读写硬件支持,来自不同邻居路由器的报文就可以同时记录在相应的摘要表中。因此,记录数据包摘要的访问时间需求减少了邻居路由器数量的一个因素。当考虑到数据包转换和向后兼容性时,混合方法可以处理这两个问题,同时适度增加存储和访问时间需求。但是IP流量的转换百分比和IP分片流量的百分比都很小(3%[10]和0.25%[11]),因此存储和访问时间需求的增加应该是微不足道的。 |
回溯过程: |
在回溯过程中,检查的摘要表总数是反映回溯服务器开销和回溯过程速度的索引。假设相邻路由器保持时间同步,每台路由器平均有n个邻居。然后,在回溯过程中,混合方法检查的摘要表数量与基于哈希的方法检查的摘要表数量之比在n/2到1 /2之间,这取决于路由器之间的平均链路延迟。下面的数学推导是基于参数的平均值,省略了小值常数。假设每个路由器平均有n (n >= 2)个邻居路由器,且路由器上的流量负载来自每个邻居。设哈希基方法中一个摘要表覆盖的平均时间间隔为th,混合方法中一个摘要表覆盖的平均时间间隔为tc。然后 |
(1) |
假设攻击路径为从攻击者到被攻击者的m跳。设路由器之间的平均链路时延为l。如果路由器之间的平均链路时延大于一个摘要表覆盖的平均时间间隔,则在回溯过程中会检查一个路由器或一个接口上覆盖连续时间段的多个摘要表。假设一个摘要表所覆盖的平均时间间隔为t,那么为了定位攻击报文的摘要,需要检查d个摘要表。在基于哈希的方法中,为了在回溯过程中沿着攻击路径从当前路由器向上移动一跳,需要检查n个邻居路由器上的摘要表(实际上是n -1,为了简单起见,我们省略了这个常量)。检查的摘要表的数量为 |
(2) |
在混合方法中,为了从标记攻击报文的当前路由器移动到2跳之外的上游标记路由器,需要检查n个邻居路由器的所有接口上的摘要表,总共有n2个接口(实际为(n -1))。检查的摘要表的数量为 |
(3) |
为了简单起见,我们省略了奇数例。)因此,在回溯过程中,混合方法检查的摘要表数量与基于哈希的方法检查的摘要表数量之比为 |
|
根据上述推导,当l _ tc, r < 1。也就是说,当路由器之间的链路延迟足够大时,混合IP回溯法比基于哈希的IP回溯法在回溯过程中检查的摘要表要少。如果相邻路由器之间没有保持时间同步,则需要在每个路由器上检查更多的摘要表。这相当于前一种情况,路由器之间的链路延迟增加。我们可以得到类似的结论。 |
结论 |
本文提出了一种基于报文标记和报文日志的攻击路径重构方法。我们的方法有能力跟踪数据包回到它的起源。与基于哈希的IP回溯方法相比,它将存储开销降低了大约一半,并将访问时间的准确性提高了邻居路由器数量的一个因素。 |
鸣谢 |
我感谢M.V.Sruthi女士,S.Anjani Prasad对这份手稿的评论和宝贵建议。 |
数字一览 |
|
参考文献 |
- B.Al-DuwariandM。Govindarasu,“用于IP回溯的包标记和日志的新型混合方案”,IEEE反式。并行分布式系统。,第17卷,no。5, pp. 403-418, 2006年5月。
- H. Burch和B. Cheswick,“追踪匿名包的大致来源”,见第十四届USENIX系统管理会议纪要, 2000年12月。
- A. Belenky和N. Ansari,“带有确定性包标记的IP回溯”,IEEE Commun。列托人。,第7卷,no。4,第162-164页,2003年4月。
- A. Belenky和N. Ansari,“用确定性包标记(DPM)跟踪多个攻击者”,见Proc. IEEE PACRIM ' 03,加拿大维多利亚,BC省,2003年8月,第49-52页。
- S. M. Bellovin, M. D. Leech, T. Taylor,“ICMP回溯消息”,Internet Draft: Draft- ietf - itrace -04. txt2003年2月
- Belenky, A & Ansari, N.(2003)。关于IP回溯.检索自2007年9月7日,http://ieeexplore.ieee.org/iel5/35/27341/01215651.pdf
- Yu S., Zhou W. L.和Jia W. J.,“基于熵变的DDoS攻击回溯”,IEEE并行和分布式系统汇刊, Vol. 22, 2011, pp. 412-425。
- S. Savage, D. Wetherall, A. Karlin和T. Anderson,“IP回溯的网络支持”,IEEE/ACM网络汇刊, Vol. 9, 2001, pp. 226-237。
- D. X. Song和A. Perrig,“IP回溯的高级和认证标记方案”,见IEEE信息通信会议论文集,2001,第878-886页。
- 田海昌,毕杰,蒋祥祥,张伟,“一种快速回溯的概率标记方案”,在第二届互联网演进国际会议论文集, 2010, pp. 137-141。
- P. satari, M. Gjoka,和A. Markopoulou,“IP回溯的网络编码方法”,在IEEE网络编码国际研讨会论文集, 2010, pp. 1-6
|