基于动态概率双域包标记的攻击数据包溯源方法及系统与流程

文档序号:23726131发布日期:2021-01-26 16:35阅读:101来源:国知局
基于动态概率双域包标记的攻击数据包溯源方法及系统与流程

[0001]
本发明属于网络攻击溯源领域,具体涉及一种基于动态概率双域包标记的攻击数据包溯源方法及系统。


背景技术:

[0002]
近年来,随着互联网的快速发展,人们将许多高价值的数据存储于网络之中。然而日渐频繁的网络攻击使得这些高价值的数据或者网络设施无法得到有效的安全保障,这对于新型网络的建设提出了多种需求,其中包括对于安全性的高要求。如银行、证券、教育、医疗、政府等机构频繁遭受网络攻击,造成巨大经济损失。虽然往往这些机构有成熟的内部网络体系,但由于网络攻击技术的发展,相对封闭的内部网络仍然难以抵御高技术的网络攻击。
[0003]
建立相对封闭的局域网虽然能够抵御来自外网的直接攻击,但仍然可以通过某些已感染的主机为跳板,间接的向局域网内部发动攻击。通过u盘等移动存储设备接入到局域网也可能会植入病毒至系统中,即便与外网隔离同样存在一定风险。目前,局域网攻击仍然在网络攻击中占有不小的比重,对于系统安全带来极大的危害。简单地将局域网与外部网络隔绝无法根本杜绝网络攻击,提高网络攻击防御能力需要建立完整的可靠网络安全体系。
[0004]
为了建立安全可靠的网络体系,不仅需要加强网络攻击的被动防御,还需要对网络攻击采取主动反制措施。在对网络攻击进行有效的检测和预警外,攻击数据包的溯源同样重要。攻击溯源是指在网络攻击的进行过程中或在网络攻击结束之后,通过相关技术推理网络攻击来源,分析当前所获得的网络攻击数据包的相关信息,追踪攻击数据包,进而追踪并发现系统中发起攻击的主机,并向上层管理员报告,及时对攻击主机采取限制措施,避免攻击造成更多损失。根据网络攻击溯源技术的基本原理,现有的溯源方法可以分为两类:标记型和日志记录型。其中,“标记型”方案将攻击路径上的路由器信息写入数据包中,协助受害主机恢复攻击路径与进行溯源。在日志记录型方案中,路由器记录一些遍历数据包的信息,以验证可疑数据包是否被该路由器转发。标记型方案需要对攻击数据包进行一定量的统计,在攻击数据包较少时难以准确重构出攻击路径。“日志记录型”方案对路由器的存储有额外要求,当数据量较大时,路由器记录的日志信息将会过于庞大和冗余而难以存储。


技术实现要素:

[0005]
本发明的目的在于针对上述现有技术中攻击数据包溯源存在的不足,提供一种基于动态概率双域包标记的攻击数据包溯源方法及系统,满足自治局域网内对高安全性的需求,在攻击数据包较少的情况下也能够准确重构攻击路径,并且不需要路由器对数据包存储日志。
[0006]
为了实现上述目的,本发明有以下的技术方案:
[0007]
一种基于动态概率双域包标记的攻击数据包溯源方法,包括以下步骤:
[0008]
设置双域标记域的标记空间;
[0009]
对两种标记域采用相反的标记策略进行标记;
[0010]
在检测到攻击后,受害主机统计所有攻击数据包,分为两步重构攻击路径:
[0011]
(1)标记域中所有出现的标记信息即为组成攻击路径的路由器;
[0012]
(2)对标记信息出现次数进行计数;m1、m2分别表示上述标记空间中的两个标记域; m1中出现次数较多的路由器离受害主机越近,并沿攻击路径向攻击主机方向次数递减;m2中出现次数较多的路由器离攻击主机越近,并沿攻击路径向受害主机方向次数递减。
[0013]
优选的,标记过程中路由器根据不同的数据包选择最合适的标记概率,根据数据包的ttl 字段来判断该数据经路由器转发的跳数,以此来计算标记概率修正系数,通过概率修正系数间接控制标记概率,最终使得标记概率的分布函数接近于线性化,优化攻击数据包溯源的准确率;标记概率的修改仅与数据包自身的属性相关,而与路由器无关,自适应选择标记概率。
[0014]
优选的,将ip数据包与分片相关的33位字段设置标记空间,将其中的16位设置为m1标记域,另外的16位设置为m2标记域,还有1位作为是否使用自适应标记概率的标志位f,若f位为1则代表使用自适应标记概率,f位为0表示未使用自适应标记概率。
[0015]
优选的,当数据包由路由器进行转发时,路由器以概率p1将自身的路由信息标记至数据包的m1标记域中,同时以概率p2将自身的路由信息标记至数据包的m2标记域中,m1标记域中实行“覆盖”准则,而m2标记域中实行“退让”准则:路由器准备向m1标记域中写入时,若m1标记域已由其他路由器标记,该路由器依然以概率p1在m1标记域中写入标记信息进行覆盖;而准备向m2标记域中写入时,若m2标记域已由其他路由器标记,则该路由器不再继续向m2标记域中写入。
[0016]
优选的,ttl字段具体的初始值由操作系统所决定,不同操作系统的ttl值不同,通过操作系统的初始ttl减去路由器转发若干跳之后的ttl值来确定标记概率修正系数。
[0017]
优选的,数据包在网络传输中若超过20跳未到达目标主机则视为目标不可达而被丢弃。
[0018]
本发明还提供一种基于动态概率双域包标记的攻击数据包溯源系统,包括:
[0019]
双域标记空间设置模块,用于在数据包内,利用ip数据报中与分片相关的字段设置标记空间,标记空间共分为两个标记域,每个标记域内的标记空间用于路由器写入自身信息;
[0020]
标记模块,通过设定标记策略,对第一个标记域中实行“覆盖”准则,对第二个标记域中实行“退让”准则,两种标记域采用相反的标记策略进行标记;
[0021]
数据包统计分析模块,用于统计受害主机所有攻击数据包重构攻击路径,标记域中所有出现的标记信息即为组成攻击路径的路由器;对标记信息出现次数进行计数;m1标记域中出现次数较多的路由器离受害主机越近,并沿攻击路径向攻击主机方向次数递减;m2标记域中出现次数较多的路由器离攻击主机越近,并沿攻击路径向受害主机方向次数递减。
[0022]
优选的,标记模块实现路由器根据不同的数据包选择最合适的标记概率,根据数据包的ttl字段来判断该数据经路由器转发的跳数,以此来计算标记概率修正系数,通过概率修正系数间接控制标记概率,最终使得标记概率的分布函数接近于线性化,优化攻击数
据包溯源的准确率。
[0023]
相较于现有技术,本发明具有如下的有益效果:标记空间采取了两个标记域,采用不同的策略进行标记,在分布函数的图像上呈现相反特征,弥补了采用一个标记域时,在重构攻击路径某一段末尾溯源不精准的缺点,因此提高了整体溯源结果的准确性。在检测到攻击后,通过受害主机统计所有攻击数据包重构攻击路径,不需要路由器对数据包存储日志。
[0024]
进一步的,本发明标记过程中对路由器使用了动态概率标记的方法,实现了路由器能根据数据包的传播距离计算修订系数,最终做到自适应地调整标记概率。
[0025]
进一步的,本发明通过自适应的调整标记概率,使得最后进行数据包统计时,不同路由器的标记数量梯度明显,从而有助于在数据包数量较小的情况下减少区分路由器先后顺序带来的误差,因此,能够在数据包较少的情况下对攻击路径进行有效重构。
[0026]
进一步的,本发明路由器计算压力均衡,在网络中边缘路由器的转发数据包的数量相对核心路由器更少。根据标记概率的分布函数,数据包在经过边缘路由器时的标记概率将会大于核心路由器的标记概率。这样使得边缘路由器与网络核心路由器的标记次数大致平衡,避免标记集中在某部分路由器中,达到了系统中路由器计算压力均衡的效果。
附图说明
[0027]
图1本发明的攻击数据包溯源方法流程图;
[0028]
图2本发明采用自适应概率算法的前后效果对比图;
[0029]
图3本发明的双域包标记分析流程图;
[0030]
图4本发明采用双域标记法的溯源正确率比较图。
具体实施方式
[0031]
下面结合附图对本发明做进一步的详细说明。
[0032]
本发明基于动态概率双域包标记的攻击数据包溯源方法在概率性包标记算法上,结合了动态概率包标记算法的优点,在ip报文的包头设置两个标记域,路由器计算标记概率修订参数并通过两种标记策略分别向两个标记域记录自身信息。总体流程图如图1所示。在检测到网络攻击发生时,受害主机能够统计攻击数据包,对数据包的攻击路径进行有效溯源。
[0033]
1.标记空间的设置;
[0034]
对于标记空间的设置,利用ip报文中首部的空闲数据包作为标记的记录空间。目前的网络不断完善,数据包分片的情况大幅减少,不足总体数量的0.25%,并且该比例在未来随着网络链路设备的不断完善将会进一步降低。利用自动最大传输单元发现机制也可以进一步避免分片。因此,用ip数据包头部中与分片相关的控制字段共33位用于标记空间的设置。其中,16位设置为m1标记域,16位设置为m2标记域,另有1位作为是否使用自适应标记概率的标志位f。若f位为1则代表使用自适应标记概率,f位为0表示未使用自适应标记概率。
[0035]
2.标记算法;
[0036]
标记空间中共包含两个标记域m1和m2。当数据包由路由器进行转发时,路由器以概
率p1将自身的路由信息标记至数据包的m1标记域中,同时以p2标记概率将自身的路由信息标记至数据包的m2标记域中。不同的是,在m1标记域中实行“覆盖”准则,而在m2标记域中实行“退让”准则。也就是说,路由器准备向m1标记域中写入时,若m1已由其他路由器标记,该路由器依然以概率p1在m1中写入标记信息进行覆盖。当路由器准备m2标记域中写入时,若m2已由其他路由器标记,那么该路由器不再继续向m2中写入。
[0037]
通过以上两种标记域和两种标记算法的设置,将能够在检测到网络攻击之后,对数据包统计的过程中提高溯源的准确率以及更短的溯源时间。
[0038]
3.自适应调整标记概率;
[0039]
在上述标记策略中,假设拓扑网络中的每个路由器对于两个标记域的标记概率都是恒定的。若标记概率选取为时,重构攻击路径所需的数据包最少。但是目前的路由协议中,每次的数据包转发都是通过查找路由表确定最靠近的目的地的路由器。因此在数据包到达最终目的地之前,无法知晓会经过多少路由器转发,即d是无法确定。
[0040]
本发明将标记概率的选取与攻击路径所得出的距离进行分析,p1、p2根据系统状况自适应取值,能够提高溯源路径的准确性,减少重构攻击路径所需要的数据包熟。
[0041]
图2展示了10个路由器情况下的概率分布函数对比。普通概率包标记的算法如图中下方曲线所示,横坐标为攻击路径上各个路由器,纵坐标为标记概率。当数据包达到一定数量时,标记概率同样表示着标记数量。在之后的溯源过程中,对数据包进行统计,依靠不同路由器的标记数量来确定远近关系。图2中未采用自适应概率算法的柱状,在第6号路由器之后的梯度较小,在溯源时容易产生较大误差。因此,需要尽量扩大不同路由器标记概率的梯度,以提高溯源的准确率。为了使不同路由器的标记概率数梯度扩大,需要该曲线能够尽量接近线性,即凹函数的二阶导数更小,达到曲线的目标。因此,以m1标记域为例,每个路由器的标记概率p1乘以一个距离系数再进行标记,该系数在数据包的传播过程中随距离递减。而ip 数据包头部已有ttl字段具有距离计数功能,因此可以结合ttl字段确定距离系数。ttl字段具体的初始值由操作系统所决定,不同操作系统的ttl值可能会不同,如表1所示。
[0042]
表1
[0043]
操作系统ttl初始值windows 9832linux64/255windows nt/2000/xp128unix255
[0044]
通常,数据包在网络传输中很难超过20跳,若超过20跳仍然未到达目标主机会被视为目标不可达而被丢弃。在局域网中,数据包经路由器转发的次数可能更少。因此,可以推测出操作系统的初始ttl减去目前的ttl值来确定标记概率修正系数。
[0045]
本发明通过ttl确定距离系数是为了平衡标记概率,使分布函数更加线性,增加数据包数量较小情况下的溯源准确性。
[0046]
如图2所示,图中采用自适应概率算法后,较高柱状代表采用自适应概率后不同路由器的标记概率。相对于未采用自适应概率的柱状来说,采用自适应概率柱状的梯度更大,
因此在数据包统计过程中能大大减少误差。
[0047]
4.数据包统计分析并重构攻击路径;
[0048]
在检测到攻击后,受害主机统计所有攻击数据包。分为两步重构攻击路径:
[0049]
(1)标记域中所有出现的标记信息即为组成攻击路径的路由器。
[0050]
(2)对标记信息出现次数进行计数。m1、m2分别表示上述标记空间中的两个标记域。 m1中出现次数较多的路由器离受害主机越近,并沿攻击路径向攻击主机方向次数递减。m2中出现次数较多的路由器离攻击主机越近,并沿攻击路径向受害主机方向次数递减。
[0051]
在受害主机遭受攻击之后,将收到的数据包中标记域所标记的路由信息进行统计,以相同路由信息出现的次数进行计数并排序。假设攻击路径g=(a,r1,r2,...,r
d
,b),其中a、b 分别代表攻击主机与受害主机,r
i
(i=1,2,...,d)代表攻击主机向受害主机发送的攻击数据包所经过的路由器。表示路由器r
i
对数据包中m
c
标记域的标记概率。
[0052]
攻击数据包在攻击路径g的转发过程中,由于每个路由器r
i
以同等的概率p1对m1标记域进行标记,并实行“覆盖”准则,前面路由器标记的信息可能被后面的路由器所替换掉。因此:
[0053][0054][0055]
之后路由器标记数据包的概率按此规律进行递推,上述省略了具体的之后计算。
[0056]
可以推出:
[0057][0058]
可以看到,对于m1标记域,将会随着i的减少而递减。这代表着若m1中的某路由器标记信息计数越多,则说明该路由器在攻击路径中距离受害主机越近;若离受害主机越远,受害主机所收到的该路由器标记过的数据包越少,从而可以通过数据包m1标记域中各个路由信息出现的次数来区分路由器的远近,由此重构出攻击路径。
[0059]
然而,通过分析的概率分布特性,发现当i取值较小,即在攻击路径中距离攻击主机较近且距离受害主机较远时,将会较小甚至出现为零或为负的情况,这代表此时难以通过标记信息出现次数来准确区分攻击路径中的远近距离,采用统计的方法会导致溯源错误。如图2中所示,柱状图在6号路由器之后的标记概率差距较小。需要采用一种在距离攻击主机较近且距离受害主机较远,即i取值较小情况下,使得较大的m2标记算法。本发明通过m2标记算法弥补m1标记算法对较攻击主机较近时标记不敏感的缺陷。
[0060]
m2标记域采用的是“退让”准则,在攻击数据包沿攻击路径g=(a,r1,r2,...,r
d
,b)的转发过程中,若路由器r
i
发现m2标记域已经过之前的路由器填写过路由信息,则不再进行操作;发现m2标记域未含有任何标记信息,则以概率p1对m2标记域进行标记。显而易见,在攻击路径中,当距离受害主机越远,该路由器标记m2的概率将会越大。因此:
[0061][0062]
之前路由器标记数据包的概率按此规律进行递推,上述省略了具体的之前计算。
[0063]
可以推出:
[0064][0065]
因此,同样经过统计、计数和排序之后,能够重构出一条由受害主机指向攻击主机的路径,并且对于距离受害主机越的路由器将会描述得更加精确。若单独采用一个标记域,则在曲线的某一端会梯度较小,此时难以确定攻击路径中路由器的先后顺序,存在较大误差。经过如图3所示的双域包标记的分析,通过两个标记域的设置,采用两种相反的标记方法,解决了单个标记域在末端标记次数差别较小而难以确定先后顺序的问题。
[0066]
采用本发明的双域标记法进行双向标记,攻击主机向受害主机发送数据包共经过10个路由器进行转发,实验结果如图4所示。本发明采用双域标记法,重构数据包转发路径的准确率相对于普通的包标记算法有了较大提升。当传输的数据包达到300时,就已经能够
接近较高的溯源准确率;当传输的数据包达到500时,已经能够基本做到准确溯源。因此,本发明进行准确溯源的数据包数量要求较少,在检测到攻击之后,能够更快追踪到发送攻击数据包的攻击主机,上报至高层并采取反制措施,及时阻止攻击造成进一步危害。
[0067]
以上所述的仅仅是本发明的较佳实施例,并不用以对本发明的技术方案进行任何限制,本领域技术人员应当理解的是,在不脱离本发明精神和原则的前提下,该技术方案还可以进行若干简单的修改和替换,这些修改和替换也均属于权利要求书所涵盖的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1