IP反向追踪技术综述 下载本文

内容发布更新时间 : 2024/4/25 23:47:20星期一 下面是文章的全部内容请认真阅读。

龙源期刊网 http://www.qikan.com.cn

IP反向追踪技术综述

作者:李春芳 黄维平

来源:《电脑知识与技术(学术交流)》2009年第22期

摘要:该文通过对IP追踪技术进行总结,回顾了IP追踪的起源,按照主动和被动性对其进行分类,分析了各个IP追踪方法的基本原理和优缺点,指出了IP追踪技术存在的问题,展望了IP追踪的发展。

关键词:IP追踪;网络安全;主动追踪;被动追踪

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)22-pppp-0c

随着Internet在商业活动中的重要性不断增长,网络攻击特别是拒绝服务(DoS)攻击也在不断增加。IP追踪技术能够使受害主机的网络管理员识别发起DoS攻击的大量数据包的真正源头,对于尽快恢复正常的网络功能、阻止再次发生攻击以及最终让攻击者为此负责非常重要。IP追踪技术的设计目标是:定位特定流的转发路径;在此基础上尽量减少路由器的工作量;能向受害者提供有用的信息。

近年来,针对IP追踪技术的研究发展很快,特别是在追踪DOS和DDOS攻击源方面提出了很多新颖有效的方法。本文简要介绍了问题提出的背景,对当前IP追踪技术进行分类同时对主要技术原理进行了介绍分析,并列举了IP追踪面临的问题,最后对IP追踪技术的发展进行展望。

1 IP追踪方法分类

根据IP追踪的主动被动性,可以将现有的IP追踪技术分为两大类:主动式追踪和反应式追踪。

1.1 主动式追踪

主动式追踪是在数据包传输过程中记录追踪所需的信息。需要进行追踪时,参考这些记录信息,识别出攻击源。主动式追踪在受害者发现攻击时就可以追踪攻击的发起者,这样可以防止DDoS攻击的进一步加剧,而且它并不要求分布式拒绝服务攻击必须一直持续到回溯处理的结束。典型的方法包括包标记法、路由记录法以及ICMP消息法等。

龙源期刊网 http://www.qikan.com.cn

1.2 反应式追踪

反应式追踪是在检测到攻击之后,才开始利用各种技术从攻击目标反向追踪到攻击源。反应追踪必须在攻击还在实施时完成,否则,一旦攻击停止,反应追踪技术就会失效。反应追踪的关键问题是要开发有效的反向追踪算法和分组匹配技术。典型的方法包括输入测试、入口过滤等。

2 IP追踪方法详述

2.1包标记法

当IP包经过路由器时,每个路由器在包中标记上一些信息(通常这些信息包括路由器的地址、与受害者相隔的距离等),当受害者收到大量这样的被标记的包,就可以提取和分析这些标记信息重构攻击路径、确定攻击源。数据包标记技术一般由标记和路径重构两个过程构成,标记过程由路由器完成,主要是对数据包进行信息附加。而重构路径过程则由受害者完成,受害者使用被标记的数据包中的信息重构攻击路由。目前的包标记技术主要有随机包标记法和固定包标记法。

2.1.1 随机包标记法(PPM:Probabilistic Packet Marking)

该技术的基本思想是[1]:尽管IP包头部的源地址可以伪造,但每个IP包仍然要经过攻击者与受害者之间的路由转发。当IP包经过这些路由器时,每个路由器以一定的概率在其中标记上一些信息(通常这些信息包括路由器的地址、与受害者相隔的距离等),当受害者受到大量的这样被标记的包后,就可以提取和分析这些标记信息重构出攻击路径,确定攻击源。该方法最主要的优点是对路由器造成的负担非常有限,并且支持逐步扩展,以及很好的事后处理能力。缺陷在于路径重构的计算负载过重; 用于标记的位不够和路径重构算法造成了高出错率; 事先不知道路径长度,使得在参数设置可能不是很恰当。这些不足使得它不适合于大规模DDoS攻击。目前比较成熟的PPM 算法包括基于分片的PPM算法、基于Hash 编码的PPM算法,以及基于代数编码的PPM 算法。

2.1.2 固定包标记法(DPM:Deterministic Packet Marking)

固定包标记法[1][4]只在入口边界路由器进行包标记。它用IP头的16位ID字段和1个保留位来记录标记信息。每个入口边界路由器的IP地址被分为两段,每段16位。当一个包通过路由器的时候, 随机选择该IP地址的一段并用保留位来标志该段为前段还是后段,总共17位进行填充。这种算法的思想就是当受害者一旦得到一个入口边界路由器的两个字段, 就可以得到这个路由器的IP地址。DPM的原理与PPM类似,但它们的实现方式有两点重要差异:①PPM需要

龙源期刊网 http://www.qikan.com.cn

攻击路径上的所有路由器都参与路径信息的标记,而DPM只需要第一个入口边界路由器具有标记功能;②PPM中的路由器对经过的IP包以一定的概率进行标记,而DPM则是由入口边界路由器对每一个所经过的IP包都进行标记。

网络攻击的最终目标是找到攻击的发起者,所以DPM中对入口地址进行标记的方法,相比较PPM中所有路径进行标记的方法而言,对问题的解决显得更为简洁有效。该方法克服了PPM中路径构造算法复杂,误暴率高的缺陷,并且健壮性也有所提高,而且具有追踪小流量攻击和反射攻击的潜力,是一种很具有使用价值的追踪技术。但是DPM的有效性极其依赖于边界路由器支持的范围和强度,这种要求使其离实际应用还具有一定的差距。 2.2 路由记录法(loging)

路由记录法又称为日志记录追踪法[2]。该方法要求在路由器上加入数据日志功能, 以记录下所有来往数据包的信息, 受到攻击后可以用数据挖掘等方法找到相关信息追踪入侵者。但是由于日志信息会占用路由器大量的系统资源,同时还需要一个大规模的数据库来支持日志信息的收集和分析,这将极大地增加网络负担,影响了该方法的现实应用。针对存储包本身内容过大,产生了基于哈希方法的包日志的IP追踪,路由器计算和存储每个自己转发的包的信息摘要,这种方法可以由单个包追踪到发包源。包摘要的存储空间和与反向追踪时包日志访问时间限制了这种算法在高速连接的路由器中的实现。目前已有了基于该方法的追踪系统SPIE(Source Path Isolation Engine)。但是该方法由于扩展性差,只适合小范围的可控网络追踪。 2.3 ICMP消息法(ICMP-Based)

该方法是在ICMP协议的基础上发展起来的。主要依靠路由器自身产生的ICMP跟踪消息。每个路由器都以很低的概率(比如:1/200 000)产生ICMP消息,并随数据包一起将该ICMP发送到目的分组。这种ICMP信息包含了路由信息,当泛洪攻击开始的时候,受害者主机就可以利用这些ICMP消息来重新构造攻击者的路径。这种方法有很多优点,但是也有一些缺点。比如:iTrace包容易被正常数据流淹没,或者在传输过程中被防火墙过滤掉。同时,这种方法还必须处理攻击者可能发送的伪造ICMP Traceback消息。 2.4输入测试(Input Debugging)

这种方法要求受害者在检测到自己遭到了攻击后,从收到的攻击包中提取出它们共有的一些特性,然后以某种方式通知网络管理员。网络管理员针对这些共有特性,在受害者的上一条路由器的输出端口上过滤具有该特性的数据包,同时发现转发这些数据包的上游链路,从而找到上一级路由器。上一级路由器再重复该过程,直到找到攻击源。由于需要网络管理员的介入使得整个方法具有相当大的人工管理量,一些国外的ISP联合开发的工具能够在它们的网络中进行自动的追踪,但是这种办法最大的问题就是管理花费。而且,联系多个ISP并在多个ISP之间协调也是件非常费时费力的工作。