一种检测进行恶意ip扫描的用户的方法

文档序号:7594509阅读:157来源:国知局
专利名称:一种检测进行恶意ip扫描的用户的方法
技术领域
本发明涉及一种防止网络交换设备在网络通信中受到恶意IP地址扫描攻击的技术,特别涉及一种在网络交换设备上检测进行恶意IP地址扫描的用户的方法。
背景技术
在网络通信中,网络交换设备经常会遭到各种恶意的攻击。在众多的恶意网络攻击当中,IP扫描是最普遍的一种攻击途径。业界针对恶意IP扫描的防范策略还没有权威的论断,很多设备制造商都认为应该把对网络攻击的防范措施划分到专业防火墙的功能中去。
以三层交换机为例。目前,在众多网络交换设备中,三层交换机在国内的大规模普及和应用已经是网络市场发展的一个新动向。伴随三层交换机的大规模应用,针对三层交换机的网络安全技术也就显得越发至关重要。然而,就三层交换机本身而言,能够提供防攻击策略的则少之又少。当然,并非所有的三层交换机都会受到IP扫描的影响,只有采用精确匹配转发策略的三层交换机才会受到IP扫描的影响。采用精确匹配转发策略的三层交换机有一个显著的特点就是学习交换机所接收IP报文的源IP和目的IP地址。恶意IP扫描会随机或连续不断地发送目的IP地址不断变化的TCP报文,交换机不断学习这类不断变化的新的目的IP地址并把学习到的IP地址写入IP转发表中去。由于大部分三层交换机的IP表项都不是无限大的,都有一定的容量限制,所以在IP扫描的攻击下,交换机的IP表项很快会被填满,影响正常的IP转发。对于软件学习IP地址的三层交换机而言,连续不断地学习IP地址还会占用相当大的CPU时间片,很可能会导致系统效率的低下甚至导致系统的彻底崩溃。目前在众多的网络病毒当中,有许多病毒采用了恶意IP地址扫描的途径进行自我复制或恶意攻击,其中以红码病毒(redcode)为典型。红码病毒通过IP扫描发送TCP连接请求,对回应的地址进行自我复制。这样,很多时候一个三层交换机下挂的网络中会存在多个被红码病毒感染的客户端主机,这些客户端主机上的红码病毒又会不断的发送IP扫描报文,多个感染病毒的客户机发送给交换机大量的IP扫描报文对采用精确匹配转发策略的三层交换机是一个严峻的考验。
目前,已经有采用ACL策略来处理例如红码病毒的恶意IP地址扫描。但是这些方法都没有检测恶意用户的手段,因而未能在根本上解决问题。

发明内容
因此,针对上述问题,本发明的目的在于通过提供一种检测进行IP地址扫描的恶意用户的方法以在线实时检测进行恶意IP扫描的用户并以对检测的用户采取限时拒绝网络访问等相应措施,从而增强三层交换机或者路由器本身的健壮性,进而提高网络系统的抗攻击能力。为了实现上述目的,本发明提出了一种检测进行恶意IP扫描的用户的方法,包括以下步骤1)对所接收报文的源IP地址进行统计;2)寻找所述统计值中出现次数最多的源IP地址;3)判断所述出现次数最多的源IP地址是否为进行恶意IP扫描的用户的IP地址;以及4)对确定为进行恶意IP扫的用户的IP地址进行控制。
优选地,所述步骤3)包括以下步骤对所述出现最多的源IP地址的次数与一个预设的门限值进行比较,并根据所述比较结果判断所述出现次数最多的源IP地址是否为进行恶意IP扫描的用户的IP地址。
在所述步骤3)中,如果出现次数最多的源IP地址的出现次数超过所述门限值,则可直接将该IP地址判定为恶意IP扫描用户的IP地址。
另外,如果所述出现次数最多的源IP地址的出现次数超过所述门限值,则可将其先确定为恶意扫描嫌疑用户的IP地址,并可对被确定为恶意扫描嫌疑用户的IP地址进行如下处理为被确定为恶意扫描嫌疑用户的IP地址设定嫌疑等级;根据被确定为嫌疑用户的IP地址之后所述IP地址出现的次数累加所述嫌疑等级;以及如果所述嫌疑等级大于一个预设的嫌疑门限值,则确定该用户的IP地址为恶意IP扫描用户的IP地址。
所述步骤4)可进一步包括采用访问控制列表(ACL)方法对进行恶意IP扫描的用户的IP地址进行控制的步骤。
优选地,所述ACL方法对进行恶意IP扫描的用户的IP地址采用限时拒绝访问的方法。
在本发明的实施方案中,所述限时拒绝访问的方法包括如下步骤1)进入ACL过滤流程;2)获取恶意用户的源IP地址;3)配置基于源IP的流分类规则;4)将所述基于源IP的流分类规则的ACL规则配置为拒绝;5)配置所述基于源IP的流分类规则的ACL规则的有效时间段;6)判断拒绝时间是否超出了上述基于源IP的流分类规则的ACL规则的有效时间段;7)如果拒绝时间超出了上述基于源IP的流分类规则的ACL规则的有效时间段,取消对该IP的拒绝操作,否则继续等待。
所述拒绝时间是在所述ACL规则启动生效后,从拒绝开始起开始计算的。
另外,所述步骤4)还可包括对确定为进行恶意IP扫描的用户的IP地址发出告警的步骤。通过在网络交换设备上对恶意IP扫描攻击进行智能化在线实时检测并对被检测到的恶意用户采取限时拒绝网络访问的措施,可以弥补网络交换设备的先天不足,从而使系统抗攻击能力更加健全,并使系统在复杂应用场合中具有更好的稳定性。


图1是根据本发明的一个优选实施方案的检测进行恶意IP地址扫描用户的方法的流程图;图2是本发明实施方案中利用ACL对恶意用户进行限时拒绝访问的操作流程图。
具体实施例方式
以下将结合附图对本发明的具体实施方式
进行详细说明。
图1是根据本发明的一个优选实施方案的检测进行恶意IP地址扫描用户的方法的流程图。如图1所示,在依据本发明的检测进行恶意IP地址扫描用户的方法的一个优选实施方案中,为了进行恶意攻击检测,首先对目的IP学习的过程进行改造。传统的目的IP地址学习任务只是在开始目的未解析学习任务(步骤s101)后,在单纯的进行IP地址学习(步骤s102)后,就结束本次的学习任务(步骤s105)。
为了进行攻击检测,需要在学习IP地址的同时对当前规定的时间片内的IP地址进行统计,以便后续的恶意攻击客户端IP地址的查找工作。为此,创建一个环形链表,节点的结构如下Struct UnresIpStruct{ULONG ul_SourceIP;/*目的未解析报文的源IP地址*/ULONG ul_DestIP;/*目的未解析报文的目的IP地址*/UnresIpStruct*p_next;};每学习一个新的目的IP地址,就向链表中增加一个新的节点,总的链表长度可以根据经验值来设定,最后把链表首尾相接组成环行链表,随着目的IP的学习,链表的数据结构会不断的更新。
本方案对目的IP学习的过程进行改造后,增加了对当前一个时间段内的目的IP未解析报文的源IP和目的IP统计结果进行分析的过程,具体地,在未解析任务中,增加对IP学习的统计,每次学习一个新的目的IP地址(步骤s102)的同时,都会把这一个未解析报文的源和目的IP地址写入到地址统计链表结构中(步骤s103),随着IP的不断学习,统计链表会不断的更新(步骤s104)。
在本文中,未解析报文是指IP地址对网络交换设备(如交换机)而言是个陌生的IP,还没有被学习到IP转发表项中去的IP报文。源IP没有学习到的报文叫源未解析报文,类似地,目的IP没有被学习到的报文叫目的未解析报文。如上所述,在未解析学习任务中,每学习一个新的目的IP地址,都把这一个未解析报文的源和目的IP地址写入到上述地址统计链表结构中,随着IP的不断学习,统计链表会不断的更新。该地址统计链表的长度为指定值,可以根据经验值来设定,这些经验值是根据实际网络流量得出来的,简单的说就是试出来的,如果经验值设置小了检测不到则设置大一点,如果设置太大了,统计范围太大则调整小一些。随着目的IP的学习,链表的数据结构会不断的更新。
在统计完所接收报文的源IP地址之后,另外再启动一个监控任务,定时的对统计链表进行攻击检测,如图1中的右半部分所示,其主要工作步骤如下1)找出统计链表中出现次数最多的源IP(步骤s106);在统计结果中寻找次数最多的源IP地址的方法可以通过顺序扫描比较等方法实现,具体方法与保存统计结果的数据结构有一定的关系,这些方法对本领域技术人员来说都是显而易见的,因此本文不予赘述。
2)判断此源IP地址在地址统计链表中出现的次数是否大于预定义的攻击门限(步骤s107)。
比如上述地址统计链表有100个节点,也就是说该地址统计链表中保存了100个目的IP未解析的记录,如果此源IP在这100个节点中出现了50次,则可以认为此源IP具有攻击嫌疑。这里,50就可以作为预定义的攻击门限。攻击门限根据网络交换设备的交换容量进行设置。
如果此源IP出现的次数已经超过了预定义的攻击门限,则可以直接判定该IP地址为恶意IP扫描用户,也可以将其设置为恶意扫描嫌疑用户,进行嫌疑处理。
在优选的实施方案中,利用设置嫌疑等级的方法进行嫌疑处理。嫌疑等级是用来区分恶意用户的一个尺度,用等级分数来区分恶意用户的等级,如果恶意等级越高嫌疑等级分数就会越大。
由于可能存在偶然因素,因而有时候不希望一次检测到IP出现的次数大于预定义的攻击门限,就判定该IP为恶意IP。因而本发明采用了嫌疑门限这样一个概念,如果说一个源IP一次被检测为恶意IP可能是偶然的,那么该IP多次(例如10以上)都被系统确认为恶意IP就几乎可以肯定的认为此IP存在恶意攻击的行为。
具体地,先对嫌疑等级分数初始化赋予一个初始值后保存。当源IP在地址统计链表中出现的次数大于预定义的攻击门限时,并不立即将其判断为恶意IP扫描用户,而是将其列为恶意IP扫描嫌疑用户,嫌疑等级分数加1(步骤108),并判断嫌疑等级分数值数否大于嫌疑门限(步骤109),嫌疑门限是一个预定义的等级分数,根据网络交换设备(如交换机)的交换容量来设定。如果嫌疑等级分数不大于嫌疑门限,则进行时间等待,直到下一时间段到来,在下一时间段内重复执行前述步骤s106到步骤s109。如果嫌疑等级分数大于嫌疑门限,便可确认该IP为恶意IP。
当确定出某一源IP为恶意IP时,可以对其采取一定的措施。在本发明的优选实施方案中,启动ACL(访问控制列表)策略对此用户进行限时拒绝访问(步骤是110),彻底消除恶意用户对交换机的IP扫描攻击,同时还可以通过AMON及命令行进行系统告警。
启动ACL进行对源IP的拒绝访问操作不应该是永久性的,因为此用户可能是被恶意病毒感染所致。对用户的拒绝操作应该是按时间段来进行操作,从拒绝开始进行计时,在时间过期之后,取消对此IP的拒绝操作,此用户仍旧可以上网。因此,本发明对被判定为恶意用户的用户采取了一种限时拒绝访问的技术方案。图2是本发明实施方案中利用ACL对恶意用户进行限时拒绝访问的操作流程图,实施步骤如下首先,开始限时ACL处理流程(步骤s201)。接下来,获得上述恶意用户的源IP地址(步骤s202)。然后配置基于源IP的流分类规则a(步骤s203)。注意,在该步骤中,流规则的配置可以基于多种方法。例如可以采用基于源IP的流规则配置。这种基于源IP的流规则具体定义为从某个源IP到某个目的IP地址的数据均归为一个数据流,此处的目的IP为所有IP地址,这样定义的流分类规则实际上的含义是指从某个源IP到所有目的IP的数据。之后,将基于流分类规则a的ACL配置为拒绝(deny)(步骤s204)。接下来,配置基于流分类规则a的ACL规则的有效时间段(步骤s205)。然后,启动ACL规则(步骤s206)并且判断规则是否超期(步骤s207)。注意,在该步骤中,当ACL规则启动生效后,从拒绝开始起计算时间,并判断该时间是否超出ACL规则的有效时间段。如果超过ACL规则的有效时间段期限,则结束限时ACL处理流程(步骤s209),即,取消对该IP的拒绝操作,该IP用户可以继续执行对网络的访问;否则将继续等待(步骤s208),即,该用户仍然处于拒绝访问状态,系统回到步骤s207。
应该注意的是,虽然以上对本发明的说明是根据其具体实施方案来进行的,但这些具体说明并不意味着是对本发明的限制。本领域的普通技术人员在读完本说明书后应该立刻明白,在不脱离本发明的精神和范围的情况下,可以对本发明做出各种修改和变换。例如,虽然在上面的内容中只说明了本发明在三层交换机上的用途,但是,本领域的普通技术人员应该知道,本发明的用途并不仅限于三层交换机,它同样可以应用到其他类型的交换机以及路由器上例如,各厂家的低端路由器采用CPU进行报文集中式转发,也可以采用本发明进行恶意攻击检测。另外,在本发明的实施方案中,对非法攻击用户采取的控制方法为ACL方法。但是,也可以采取具有类似功能的其它方法,例如可以通过CAR(带宽限制)对非法用户的上网带宽进行适当限制,在不完全过滤此用户的前提下对其上网的带宽进行限制以此来保护三层交换机不被严重攻击。总之,不背离本发明精神的各种改型均在本发明所附的权利要求的保护范围之内。
权利要求
1.一种检测进行恶意IP扫描的用户的方法,包括以下步骤1)对所接收报文的源IP地址进行统计;2)寻找所述统计值中出现次数最多的源IP地址;3)判断所述出现次数最多的源IP地址是否为进行恶意IP扫描的用户的IP地址;以及4)对确定为进行恶意IP扫描的用户的IP地址进行控制。
2.根据权利要求1所述的方法,其特征在于,所述步骤3)包括以下步骤对所述出现最多的源IP地址的次数与一个预设的门限值进行比较,并根据所述比较结果判断所述出现次数最多的源IP地址是否为进行恶意IP扫描的用户的IP地址。
3.根据权利要求2所述的方法,其特征在于,如果出现次数最多的源IP地址的出现次数超过所述门限值,则直接将该IP地址判定为恶意IP扫描用户的IP地址。
4.根据权利要求2所述的方法,其特征在于如果所述出现次数最多的源IP地址的出现次数超过所述门限值,则将其确定为恶意扫描嫌疑用户的IP地址。
5.根据权利要求4所述的方法,其特征在于对被确定为恶意扫描嫌疑用户的IP地址进行如下处理为被确定为恶意扫描嫌疑用户的IP地址设定嫌疑等级;根据被确定为嫌疑用户的IP地址之后所述IP地址出现的次数累加所述嫌疑等级;以及如果所述嫌疑等级大于一个预设的嫌疑门限值,则确定该用户的IP地址为恶意IP扫描用户的IP地址。
6.根据权利要求1所述的方法,其特征在于,所述步骤4)进一步包括采用访问控制列表(ACL)方法对进行恶意IP扫描的用户的IP地址进行控制的步骤。
7.根据权利要求6所述的方法,其特征在于,所述ACL方法对进行恶意IP扫描的用户的IP地址采用限时拒绝访问的方法。
8.根据权利7所述的方法,其特征在于,所述限时拒绝访问的方法包括如下步骤1)进入ACL过滤流程;2)获取恶意用户的源IP地址;3)配置基于源IP的流分类规则;4)将所述基于源IP的流分类规则的ACL规则配置为拒绝;5)配置所述基于源IP的流分类规则的ACL规则的有效时间段;6)判断拒绝时间是否超出了上述基于源IP的流分类规则的ACL规则的有效时间段;7)如果拒绝时间超出了上述基于源IP的流分类规则的ACL规则的有效时间段,取消对该IP的拒绝操作,否则继续等待。
9.根据权利要求8所述的方法,其特征在于,所述拒绝时间是在所述ACL规则启动生效后,从拒绝开始起开始计算的。
10.根据权利要求1或2所述的方法,其特征在于,所述步骤4)进一步包括对确定为进行恶意IP扫描的用户的IP地址发出告警的步骤。
全文摘要
本发明公开了一种检测进行恶意IP扫描的用户的方法,包括以下步骤1)对所接收报文的源IP地址进行统计;2)寻找所述统计值中出现次数最多的源IP地址;3)判断所述出现次数最多的源IP地址是否为进行恶意IP扫描的用户的IP地址;以及4)对确定为进行恶意IP扫描的用户的IP地址进行控制。该方法通过在网络交换设备上对恶意IP扫描攻击进行智能化在线实时检测,并对被检测到的恶意用户采取限时拒绝网络访问的措施,从而弥补了一些网络交换设备的先天不足。它使系统抗攻击能力更加健全,并使系统在复杂应用场合中具有更好的稳定性。
文档编号H04L12/24GK1741458SQ20041005712
公开日2006年3月1日 申请日期2004年8月24日 优先权日2004年8月24日
发明者王燕平, 刘建锋, 李玉涛 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1