CN101197810A - 一种实时检测蠕虫的方法 - Google Patents

一种实时检测蠕虫的方法 Download PDF

Info

Publication number
CN101197810A
CN101197810A CNA2006101403931A CN200610140393A CN101197810A CN 101197810 A CN101197810 A CN 101197810A CN A2006101403931 A CNA2006101403931 A CN A2006101403931A CN 200610140393 A CN200610140393 A CN 200610140393A CN 101197810 A CN101197810 A CN 101197810A
Authority
CN
China
Prior art keywords
worm
equipment
packet
real
time detection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2006101403931A
Other languages
English (en)
Inventor
杨仁斌
韦韬
龚晓锐
吴开宇
张建宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Original Assignee
Peking University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CNA2006101403931A priority Critical patent/CN101197810A/zh
Publication of CN101197810A publication Critical patent/CN101197810A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明的目的在于提供一种实时检测蠕虫的方法,其包括如下步骤:侦听网络数据包并对其进行处理的步骤,在该步骤中对收集的数据包按照TCP/IP协议模型进行分层与分类,并建立记录各主机发送数据包情况的设备发包统计信息表;判定是否是ARP请求数据包的步骤,如果是则更新设备发包统计信息表,如果不是则判定是否是IP新建连接;判定是否是IP新建连接的步骤,如果不是则返回到侦听网络数据包并对其进行处理的步骤,如果是则更新设备发包统计信息表;判断该设备是否是可疑设备的步骤,根据设备发包统计信息表的内容判定是否是感染蠕虫的可疑设备,如果是对其进行标记,如果不是则返回到侦听网络数据包并对其进行处理的步骤。

Description

一种实时检测蠕虫的方法
技术领域
本发明涉及蠕虫检测方法,特别涉及计算机网络与数据通信中的蠕虫检测方法。
背景技术
自1988年莫里斯从实验室制造出第一个蠕虫病毒以来,计算机蠕虫病毒以其快速、多样化的传播方式不断给网络世界带来灾害。特别是1999年以后,高危蠕虫病毒的不断出现,多次均使世界经济蒙受了轻则几十亿、重则几百亿美元的巨大损失。
Internet蠕虫虽然常常被归类到广义的病毒中,但蠕虫同传统意义上的病毒除了在复制和传染方面具有相似性之外,还有很多不同点,如蠕虫主要以计算机为攻击目标,病毒主要以文件系统为攻击目标;蠕虫具有主动攻击特性,而病毒在传播时需要计算机使用者的触发等等。正是这些与病毒的不同之处,导致传统的病毒检测策略应用到对抗蠕虫时,基本上不再适用。在产生的破坏性上,蠕虫也不是普通病毒所能比拟的,网络的发展使得蠕虫可以在短短的时间内蔓延整个Internet,造成Internet大面积无法正常工作。因此对Internet蠕虫有效检测方法,尤其是对各种类型蠕虫、包括目前暂时未知的,都广泛有效的检测方法的研究就非常关键。
现有的蠕虫检测系统主要有以下两种:
(1)由入侵检测系统(IDS,Intrusion Detection System)来完成。这类系统都是需要将网络中所有的流量都镜像到IDS系统中,然后由IDS对侦听到的IP数据包进行分析,当发现IP数据包中特征码与IDS中蠕虫特征码库相匹配时,即报告发现蠕虫。该方法由于采用与传统病毒检测方法相类似的特征匹配方法,一方面,由于特征库匹配性能较低,造成整体蠕虫检测性能低下;另一方面,对特征库的实时更新提出了更高的要求,导致适应范围窄;最后,该方法无法适用于未公开特征码的新型蠕虫。
(2)由流量异常分析系统来完成。这类系统通常是由具备该功能的网络设备来收集各网络设备上的流量信息,并对它们进行统计与分析。然后利用某种预定的流量异常阈值来判定是否是蠕虫。该方法主要以蠕虫活动常会导致流量异常变化作为理论依据。由于仅从流量的变化规律来分析,存在一定程度的误报。
以上两种方法,都存在适应范围窄、效率低、灵敏度较低、误报率较高的问题。因此迫切需要一种适用范围广、效率高、灵敏度高、误报率低的蠕虫检测方法。
发明内容
本发明的目的在于提供一种实时检测蠕虫的方法,该方法能够高效实时检测网络中可能感染蠕虫的主机,具有适应范围广、性能高、灵敏度可调、误报率低等优点。
本发明的实时检测蠕虫的方法的特征在于,包括如下步骤:侦听网络数据包并对其进行处理的步骤,在该步骤中对收集的数据包按照TCP/IP协议模型进行分层与分类,并建立记录各主机发送数据包情况的设备发包统计信息表;判定是否是ARP请求数据包的步骤,如果是则更新设备发包统计信息表,如果不是则判定是否是IP新建连接;判定是否是IP新建连接的步骤,如果不是则返回到侦听网络数据包并对其进行处理的步骤,如果是新建连接则更新设备发包统计信息表;判断该设备是否是可疑设备的步骤,根据设备发包统计信息表的内容判定是否是感染蠕虫的可疑设备,如果是感染蠕虫的设备对其进行标记,如果不是则返回到侦听网络数据包并对其进行处理的步骤。
本发明的实时检测蠕虫的方法的特征还在于,在所述侦听网络数据的步骤中,利用报文中源MAC地址、源IP地址作为散列参数计算索引值,并以该索引值建立主机信息散列表,该主机信息散列表用于根据索引值索引记录网络中各设备发送数据包情况的设备发包统计信息表。
本发明的实时检测蠕虫的方法的特征还在于,在所述判断该设备是否是可疑设备的步骤中,根据ARP请求数据包发送频率来判定是否是可疑设备。
本发明的实时检测蠕虫的方法的特征还在于,在所述判断该设备是否是可疑设备的步骤中,根据IP数据包中新建连接的频率来判定是否是可疑设备。
本发明的实时检测蠕虫的方法的特征还在于,所述新建连接包括:TCP、UDP、ICMP等。
本发明的实时检测蠕虫的方法的特征还在于,所述ARP请求数据包发送频率通过设定蠕虫行为特征描述结构中特定阈值M并计算上次计算频率直至当前时间的时间差Δt来计算。
本发明的实时检测蠕虫的方法的特征还在于,所述新建连接的频率通过设定蠕虫行为特征描述结构中特定阈值M并计算上次计算频率直至当前时间的时间差Δt来计算。
本发明的实时检测蠕虫的方法的特征还在于,根据ARP数据包目的地址分布情况判定是否是蠕虫。
本发明的实时检测蠕虫的方法的特征还在于,根据IP新建连接数据包目标相似度分布来判定是否是蠕虫。
本发明的理论基础:蠕虫的一个重要特征是其具有很强的传播性。蠕虫快速扩散时,伴随着大量而复杂的网络行为。一般而言,蠕虫会采用各种方式获得被攻击目标主机的IP(例如随机或顺序生成目标IP),并向它们发送攻击数据包。由于TCP/IP协议机制原因,蠕虫主机主要采用以下方式中的一种进行传播:(1)获得被攻击主机的MAC地址,直接建立与该主机的通信(2)通过路由器来转发攻击数据。对于第一种情况,蠕虫常常会以很高或较高的频率向广播域内发送ARP广播包请求目标地址的MAC;对于第二情况,蠕虫会以很高或较高频率向路由器请求建立IP连接。此外,蠕虫发送给不同目标主机的信息内容上有高度的相似性与时间局部性。因此综合利用上述蠕虫行为特征,即可高效、准确的检测网络中可能存在的蠕虫。
本发明建立在对蠕虫行为特征的分析,并与蠕虫行为特征描述结构进行匹配。对于匹配上的主机,将判定其感染蠕虫。
该方法基于对蠕虫行为特征进行分析,从而能够高效地检测网络中可能存在的蠕虫。因此,本发明的实时监测蠕虫的方法能够高效实时检测网络中可能感染蠕虫的主机,具有适应范围广、性能高、灵敏度可调、误报率低等优点。
附图说明
图1是本发明的实时检测蠕虫的方法的流程图。
图2是本发明的实时检测蠕虫的方法的一个实施例。
图3是本发明的实时检测蠕虫的方法中采用的主机信息散列表。
具体实施方式
以下参照附图对本发明的实时检测蠕虫的方法进行详细说明。图1是本发明的实时检测蠕虫的方法的流程图,图
Figure A20061014039300071
是本发明的实时检测蠕虫的方法中采用的主机信息散列表。
本发明的实时检测蠕虫的方法包括如下步骤:侦听网络数据包并对其进行处理的步骤S10,在该步骤中对收集的数据包按照TCP/IP协议模型进行分层与分类并建立记录各主机发送数据包情况的设备发包统计信息表;判定是否是ARP请求数据包的步骤S20,在该步骤中,对侦听到的数据包判定其是否是ARP请求数据包,如果是ARP请求数据包则前进到更新设备发包统计信息表的步骤S40,如果不是则前进到判定是否是IP新建连接的步骤S30;判定是否是新建连接的步骤30,如果不是新建连接则回到侦听网络数据包并对其进行处理的步骤S10,如果是新建连接则更新设备发包统计信息表(S40);更新设备发包统计信息表的步骤S40,该步骤用于更新设备发包的统计信息;判断该设备是否是可疑设备的步骤S50,在该步骤中根据设备发包统计信息表判定发送ARP请求数据包和IP新建连接的频率是否超过规定的阈值,如果超过规定的阈值则判定该设备可疑,将其标志为蠕虫感染可疑主机(S60)并返回步骤S10,如果没有超过规定的阈值则清空设备发包统计信息表中的ARP请求包计数器和IP新建连接请求计数器并返回到侦听网络数据包并对其进行处理的步骤S10。
[实施例]
图2是本发明的实时检测蠕虫的方法的一个实施例。在侦听网络数据并对其进行处理的步骤S110中需要对收集的数据包按照TCP/IP协议模型进行分层与分类,分层与分类的方法:通过侦听网络侦听所有的报文数据,提取报文中的相关信息,对于ARP数据包,提取ARP数据包中包括的源IP地址、目的IP地址、源MAC地址、目的MAC地址;对于IP数据包,提取IP数据包中包括的IP五元组信息(源地址、目的地址、源端口/ICMPid、目的端口/ICMP type和code、协议号)、IP数据包发生的时间、建立连接后,第一个有效的内容数据包,以及基于连接的上下文关系。
所述的报文数据侦听与收集操作方法关键步骤如下:
(1)将信息收集单元以透明桥方式接入网络环境中;
(2)将单元中的网卡设置为混杂模式,从而可以侦听所有二层交换机下的网络主机之间通信的数据包;
(3)将收集到的信息存放在缓冲存贮设备例如高速内存等,等待信息处理单元处理。
接下来,对于侦听到的数据报文,在对数据包依TCP/IP分层分类之后,可利用报文中源MAC地址、源IP地址或者其他特定标识作为散列参数计算索引值,并以该索引值建立或索引用于记录网络中各主机发送数据包情况(设备发包统计信息表)的信息表,以下称由上述索引值组成的信息表为主机信息散列表,如图3所示,图中,10为主机信息散列表,20为记录网络中各主机发送数据包情况的设备发包统计信息表。具体步骤如下:将源IP地址和源MAC地址代入散列参数计算公式中计算索引值,利用该索引值在主机信息散列表中索引与该主机对应的设备发包统计信息表,在索引到表项时,将源IP地址与源MAC地址与该表项的对应字段进行匹配,并更新该表项。入表信息包括源MAC地址、源IP地址、数据发生时间。
在接下来的判定是否是ARP请求数据包的步骤S120中判定其是否是ARP请求数据包,如果收到的数据包是ARP广播请求包,检索对应主机在散列表中的表项(S125),将设备发包统计信息表20中的ARP请求包计数器加1,并计算ARP请求频率(S140),计算方法见后续说明。对于对应表项不存在,但散列表索引值相同的表项,采用在表项后追加链式表项的方式或其它可以解决散列冲突的方法建立新的表项,入表信息同上。
判定是否是IP新建连接的步骤S130与上述判定是否是ARP请求数据包的步骤S120相同,这里省略其说明。
接下来,匹配蠕虫行为异常描述结构S155,根据匹配结果判定是否感染蠕虫S160,如果感染蠕虫,将该主机标注为蠕虫感染可疑主机,并返回到S110。
在本实施例中,根据设备发包统计信息表判定发送ARP请求数据包和IP新建连接的频率是否超过规定的阈值来判定该设备是否可疑。主机ARP广播请求包发送频率的计算方法如下:预先设置一个蠕虫行为特征描述结构的ARP频率阈值M次/秒。每当收到一个ARP广播请求包时,将主机信息散列表中该主机对应的表项中ARP请求包计数器加一。直到当该计数器数值超过M值时,算出自上次计算频率直至当前时间的时间差Δt。如果Δt时间大于一秒,则说明最近Δt时间内,ARP广播请求包的平均发送频率低于M次/秒,否则其发送频率高于M次/秒。计算完ARP请求频率之后,将在该表项中清空ARP请求包计数器,并保存当前时间作为下一轮ARP计数的起始时间。如果该主机的ARP请求包发送频率超过蠕虫行为特征描述结构中特定阈值M次/秒,则判定该设备ARP广播请求包发送可疑,并在与该主机对应的设备发包统计信息表20中设置ARP请求发包可疑标志,并将ARP可疑标志被设置时标设置为当前时间。
对于当前ARP请求发包频率没有超过蠕虫行为特征描述结构中特定阈值,但之前已被标注为ARP请求发包可疑的主机,将统计如下几个数据:自被怀疑成ARP请求发包可疑设备之后,持续到当前时间一直没有再次发送ARP广播请求数据的时间ΔT1;ARP请求频率已持续低于某一个蠕虫行为特征描述结构中特定阈值的时间ΔT2。如果ΔT1或ΔT2大于它们对应的预先定义的蠕虫行为特征描述结构中的特定阈值,则认为该设备ARP请求发送不再可疑。并清除与该主机对应的设备发包统计信息表20中的ARP请求发包可疑标志。否则认为该主机ARP请求包发送仍然可疑,但不更新被设置成ARP请求发包可疑的时标。
对于IP报文,采用与ARP类似方式统计IP新建连接请求频率。这些新建连接请求,包括TCP、UDP、ICMP等。
另外,在本实施例中,为了进一步增加判断的可靠性,还从ARP目的地址行为异常和IP目标端口行为异常两个方面进一步判断是否是蠕虫,ARP数据包目的地址行为异常和IP目标端口行为异常的统计方法如下:
ARP数据包目的地址分布统计计算方法:
(1)将该主机ARP目的地址登记到该主机信息散列表对应表项中,该表项历史目标地址列表中,维护最近某一个特定时间长内若干个目的地址的信息;
(2)对于本次目标地址没有存在到该主机信息列表的,则将表示目标地址统计数的计数器加1。对于本次目标地址已经在该主机信息列表的,则跳出本次统计
(3)在每次统计目的地址分布情况时,首先需要对该目地地址列表进行老化。由于每一个主机对应的历史目的地址列表并不大,因此,老化策略可直接遍历该列表,并删除该表项建立时间超过预定时间的表项。
IP新建数据包目标相似度分布统计计算方法:
(1)对于已经判定是IP新建连接的数据包,将分析其目标端口。主机信息散列表中该主机对应的表项中,维护着一个最近某一特定时间长内若干的目标端口的命中计算单元。
(2)对于本次新建数据包目标端口已经在该历史目标端口列表中出现的,将对该目标端口的计数器加1,否则跳出本次统计
(3)在每次统计目标端口分布情况时,首先需要对该目标端口列表进行老化。由于每一个主机对应的历史目标端口列表并不大,因此,老化策略可直接遍历该列表,并删除该表项超过预定时间的表项。
由于蠕虫发送给不同目标主机的信息内容上有高度的相似性与时间局部性。因此综合利用上述蠕虫行为特征,即可高效、准确的检测网络中可能存在的蠕虫。
该方法基于对蠕虫行为特征进行分析,从而能够高效的检测网络中可能存在的蠕虫。因此,本发明的实时监测蠕虫的方法能够高效实时检测网络中可能感染蠕虫的主机,具有适应范围广、性能高、灵敏度可调、误报率低等优点。

Claims (9)

1.一种实时检测蠕虫的方法,其特征在于,包括如下步骤:
侦听网络数据包并对其进行处理的步骤,在该步骤中对收集的数据包按照TCP/IP协议模型进行分层与分类,并建立记录各主机发送数据包情况的设备发包统计信息表;
判定是否是ARP请求数据包的步骤,如果是则更新设备发包统计信息表,如果不是则判定是否是IP新建连接;
判定是否是IP新建连接的步骤,如果不是则返回到侦听网络数据包并对其进行处理的步骤,如果是新建连接则更新设备发包统计信息表;
判断该设备是否是可疑设备的步骤,根据设备发包统计信息表的内容判定是否是感染蠕虫的可疑设备,如果是感染蠕虫的设备对其进行标记,如果不是则返回到侦听网络数据包并对其进行处理的步骤。
2.如权利要求1所述的实时检测蠕虫的方法,其特征在于,在所述侦听网络数据包的步骤中,利用报文中源MAC地址、源IP地址作为散列参数计算索引值,并以该索引值建立主机信息散列表,该主机信息散列表用于根据索引值索引记录网络中各设备发送数据包情况的设备发包统计信息表。
3.如权利要求1所述的实时检测蠕虫的方法,其特征在于,在所述判断该设备是否是可疑设备的步骤中,根据ARP请求数据包发送频率来判定是否是可疑设备。
4.如权利要求1所述的实时检测蠕虫的方法,其特征在于,在所述判断该设备是否是可疑设备的步骤中,根据IP数据包中新建连接的频率来判定是否是可疑设备。
5.如权利要求4所述的实时检测蠕虫的方法,其特征在于,所述新建连接包括:TCP、UDP、ICMP等。
6.如权利要求3所述的实时检测蠕虫的方法,其特征在于,所述ARP请求数据包发送频率通过设定蠕虫行为特征描述结构中特定阈值M并计算上次计算频率直至当前时间的时间差Δt来计算。
7.如权利要求4所述的实时检测蠕虫的方法,其特征在于,所述新建连接的频率通过设定蠕虫行为特征描述结构中特定阈值M并计算上次计算频率直至当前时间的时间差Δt来计算。
8.如权利要求3所述的实时检测蠕虫的方法,其特征在于,根据ARP数据包目的地址分布情况判定是否是蠕虫。
9.如权利要求4所述的实时检测蠕虫的方法,其特征在于,根据IP新建连接数据包目标相似度分布来判定是否是蠕虫。
CNA2006101403931A 2006-12-08 2006-12-08 一种实时检测蠕虫的方法 Pending CN101197810A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2006101403931A CN101197810A (zh) 2006-12-08 2006-12-08 一种实时检测蠕虫的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2006101403931A CN101197810A (zh) 2006-12-08 2006-12-08 一种实时检测蠕虫的方法

Publications (1)

Publication Number Publication Date
CN101197810A true CN101197810A (zh) 2008-06-11

Family

ID=39547960

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006101403931A Pending CN101197810A (zh) 2006-12-08 2006-12-08 一种实时检测蠕虫的方法

Country Status (1)

Country Link
CN (1) CN101197810A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103840971A (zh) * 2014-02-18 2014-06-04 汉柏科技有限公司 一种对私有云病毒导致的云集群异常的处理方法及系统
CN104243408A (zh) * 2013-06-14 2014-12-24 中国移动通信集团公司 域名解析服务dns系统中监控报文的方法、装置及系统
CN108141349A (zh) * 2015-10-02 2018-06-08 华为技术有限公司 改善异常检测率的方法
CN110311925A (zh) * 2019-07-30 2019-10-08 百度在线网络技术(北京)有限公司 DDoS反射型攻击的检测方法及装置、计算机设备与可读介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243408A (zh) * 2013-06-14 2014-12-24 中国移动通信集团公司 域名解析服务dns系统中监控报文的方法、装置及系统
CN104243408B (zh) * 2013-06-14 2017-11-21 中国移动通信集团公司 域名解析服务dns系统中监控报文的方法、装置及系统
CN103840971A (zh) * 2014-02-18 2014-06-04 汉柏科技有限公司 一种对私有云病毒导致的云集群异常的处理方法及系统
CN103840971B (zh) * 2014-02-18 2018-01-02 汉柏科技有限公司 一种对私有云病毒导致的云集群异常的处理方法及系统
CN108141349A (zh) * 2015-10-02 2018-06-08 华为技术有限公司 改善异常检测率的方法
CN110311925A (zh) * 2019-07-30 2019-10-08 百度在线网络技术(北京)有限公司 DDoS反射型攻击的检测方法及装置、计算机设备与可读介质
CN110311925B (zh) * 2019-07-30 2022-06-28 百度在线网络技术(北京)有限公司 DDoS反射型攻击的检测方法及装置、计算机设备与可读介质

Similar Documents

Publication Publication Date Title
US20200344246A1 (en) Apparatus, system and method for identifying and mitigating malicious network threats
KR100942456B1 (ko) 클라우드 컴퓨팅을 이용한 DDoS 공격 탐지 및 차단 방법 및 서버
CN1330131C (zh) 一种交互式的网络蠕虫检测系统和方法
KR101391781B1 (ko) 웹 트랜잭션 밀집도 기반 에이치티티피 봇넷 탐지 장치 및 방법
CN100448203C (zh) 用于识别和防止恶意入侵的系统和方法
CN101018121B (zh) 日志的聚合处理方法及聚合处理装置
US7234166B2 (en) Event sequence detection
CN110149350A (zh) 一种告警日志关联的网络攻击事件分析方法及装置
US20050278779A1 (en) System and method for identifying the source of a denial-of-service attack
KR20150091775A (ko) 비정상 행위 탐지를 위한 네트워크 트래픽 분석 방법 및 시스템
CN111431939A (zh) 基于cti的sdn恶意流量防御方法及系统
CN106850647B (zh) 基于dns请求周期的恶意域名检测算法
CN110071934B (zh) 用于网络异常检测的局部敏感性计数摘要方法及系统
KR100684602B1 (ko) 세션 상태전이를 이용한 시나리오 기반 침입대응 시스템 및그 방법
CN110768946A (zh) 一种基于布隆过滤器的工控网络入侵检测系统及方法
CN104135474A (zh) 基于主机出入度的网络异常行为检测方法
CN101202744A (zh) 一种自学习检测蠕虫的装置及其方法
CN106506531A (zh) Arp攻击报文的防御方法及装置
CN101197810A (zh) 一种实时检测蠕虫的方法
CN113225321A (zh) 一种基于智能迁移策略的SDN虚拟机抗Dos方法
Zheng et al. Traffic anomaly detection and containment using filter-ary-sketch
KR20060013120A (ko) 침입 탐지 경고 메시지의 연관성을 이용한 침입 탐지시각화 방법
CN102882739B (zh) 通信行为检测方法及装置
Li et al. Overview of intrusion detection systems
CN117278245A (zh) 针对互联网仿真场景的数据采集方法、装置及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20080611