蠕虫病毒的特性及其宏观检测防治策略
摘要:通过对蠕虫病毒的特性分析和利用Netflow技术,从宏观的角度提出了一种在校园网络环境下的宏观网络检测防治策略。目前应用该策略取得了良好的效果。该策略对具有相似特性的其它病毒的检测和防治亦有较好的作用。
关键词:蠕虫;病毒;系统漏洞;Netflow技术
0 引言
互联网的出现和普遍应用已经极大地改变了人们的交流方式、生活方式及工作方式,然而,由于互联网的共享性、开放性和交互性、也给人们带来了层出不穷的安全问题。从1988年CERT/CC(计算机紧急响应小组协调中心)成立以来,统计到的Internet安全威胁事件每年以指数增长,近年来增长态势变得的尤为迅猛。日益频繁的网络安全问题给国家、企业和个人造成了重大的经济损失。据统计,世界各国每年由于网络安全问题而遭受的经济损失达数百亿美元。
在各种安全事件中,恶意代码(Malicious Code)造成的经济损失占有最大的比例。恶意软件主要包括计算机病毒(Virus),蠕虫(Worm)、木马程序(Trjan Horse)、后门程序(Backdoor)、逻辑炸弹(Logic Bomb)等等。其中Internet蠕虫和木马程序的比例最高,根据2006年第三季度的Internet安全威胁分析,排名前50例的恶意代码中,蠕虫占75%。由于蠕虫在网络中的扩散速度远远大于木马,因此越来越多的木马程序结合了蠕虫进行传播,使得蠕虫病毒成为最为严重的网络安全问题之一。
几乎每次蠕虫发作都会给人们带来巨大的经济损失:世界上第一个蠕虫于1988年11月2日爆发,它是由美国CORNELL大学研究生莫里斯编写的Morris蠕虫,该蠕虫在很短的时间内迅速在Internet上蔓延,导致6000多台计算机停机,直接经济损失达9600万美元;2001年7月19日,CodeRed蠕虫爆发,在爆发后的9小时内就攻击了25万台计算机,造成的损失估计超过20亿美元;随后几个月内产生了威力更强的几个变种,其中CodeRedⅡ造成的损失估计超过12亿美元;2001年9月18日,Nimda蠕虫被发现,对Nimda造成的损失评估数据从5亿美元一直攀升到26亿美元。目前蠕虫爆发的频率越来越快,尤其是近两年来,越来越多的蠕虫不断出现,造成的经济损失越来越惨重。
蠕虫造成的严重损失引起了人们的重视,如何有效地监测蠕虫攻击等信息安全的课题成为当前国内外研究和开发的热点。
1 网络蠕虫的定义、功能结构及工作机制
1.1网络蠕虫的定义
网络蠕虫是指能够独立运行,并能通过寻找和攻击远方主机的漏洞进行自主传播的恶意代码。
1.2网络蠕虫的功能结构
网络蠕虫的功能模块可以分为主体功能模块和辅助功能模块。实现了主体功能模块的蠕虫能够完成复制传播流程,而包含辅助功能模块的蠕虫程序则具有更强的生存能力和破坏能力。
1.2.1 主体功能模块
主体功能模块由4个模块构成:
(1)信息搜集模块:该模块决定采用何种搜索算法对本地或者目标网络进行信息搜集。
(2)扫描探测模块:完成对特定主机的脆弱性检测,决定采用何种攻击渗透方式。
(3)攻击渗透模块:该模块利用扫描探测模块获得的安全漏洞,建立传播途径。该模块在攻击方法上是开放的、可扩充的。
(4)自我推进模块:该模块可以采用各种形式生成各种形态的蠕虫副本,在不同主机问完成蠕虫副本传递。
1.2.2辅助功能模块
辅助功能模块是对除主体功能模块以外的其他模块的归纳或预测,主要由5个功能模块构成。
(1)实体隐藏模块:包括对蠕虫各个实体组成部分的隐藏、变形、加密以及进程的隐藏,主要提高蠕虫的生存能力。
(2)宿主破坏模块:该模块用于摧毁或破坏被感染主机,破坏网络正常运行,在被感染主机上留下后门等。
(3)信息通信模块:该模块能使蠕虫间、蠕虫同黑客之间进行交流,这是未来蠕虫发展的重点。
(4)远程控制模块:控制模块的功能是调整蠕虫行为,控制被感染主机,执行蠕虫编写者下达的指令。
(5)自动升级模块:该模块可以使蠕虫编写者随时更新其他模块的功能,从而实现不同的攻击目的。
1.3网络蠕虫的工作机制
网络蠕虫的攻击行为可以分为4个阶段:信息收集、扫描探测、攻击渗透和自我推进。信息收集主要完成对本地和目标节点主机的信息汇集;扫描探测主要完成对具体目标主机服务漏洞的检测;攻击渗透利用已发现的服务漏洞实施攻击;自我推进完成对目标节点的感染。
1.4网络蠕虫传播时具有的行为特征
(1)网络上充斥着大量内容相同的数据包,甚至会严重影响网络的正常流量。这是由蠕虫传播行为的单一性决定的。
(2)网络被感染主机数量逐步增加,增加过和遵循一定规律。
(3)网络上会存在大量目标地址不可达或连接请求被复位的数据包,这是由蠕虫扫描时的随机性决定的。
我校校园网络由于用户分布普遍比较集中,用户量大,交换机的平均负荷量本就比较严重,受病毒感染后影响非常明显,一旦网络出现瘫痪,在短期内很难恢复正常。多年来我校校园网受到蠕虫病毒的冲击,整体网络的性能受到较大的影响。2005年以来我校通过一种基于Netflow技术的宏观检测防治的方法,使病毒的扩散得到了有力控制,有效地降低了损害程度。
2 网络“蠕虫”病毒的宏观检测技术
判断一台计算机是否感染了“蠕虫”病毒,可有多种方法,如利用杀毒软件、或者通过netstart命令来检查系统是否存在大量随机出现的TCP SESSION等。但是这类判断都是针对一台计算机而言。“蠕虫”病毒扩散迅速,短期内就可以造成大面积机器感染。而校网用户对病毒的防范意识参差不齐,不少用户并没养成增打系统补丁的良好习惯,部分用户对计算机知识了解较浅,导致我校大量机器受感染,维护人员难以对校内每一台计算机进行检查,来彻杀“蠕虫”病毒。有效检测整个校园网的病毒感染程度是校网主干交换机带宽保证的必要前提。基于netflow功能的一种宏观检测法,为一些病毒的全网检测提供了有效的解决方法。
由于“蠕虫”病毒具有向大量计算机的某固定端口(以“冲击波”病毒的135端口为例)发送漏洞检测包的共性,并且常常还会向大量IP发送ICMP包,因此,我们试图利用这一共性,来批量地检测感染机群。而交换机的Nefflow功能为这一目的的实现提供了可能。
Netflow是Cisco公司在其IOS交换体系中引入的一种新的交换技术。Netflow服务可在最大限度减小对交换机性能影响的前提下为用户提供详细的数据流统计信息。统计信息包括协议,端口和服务类型等。它替代了原有基于PortMirror的端口检测技术,使在不占用物理端口的前提下对流量数据进行分析
成为可能。目前,许多公司的三层交换机产品都具备了Nefflow功能,如Entersys公司的SSR2000系列产品等。
Netflow功能在交换机上的实现可通过配置命令来完成。以SSR2000为例,在交换机配置模式下输入以下命令即可:
9800
对于数据收集服务器而言,由于数据分析程序的运行需要有一定的性能保证,建议最低配置使用100M网卡,512M内存,2G的CPU,40G的硬盘存储空间。系统可以安装为Freebsd或Linux操作系统。数据收集服务端程序及数据分析程序可以从网址.cn/qkimages//jsjs/jsjs200711/jsjs20071110-1-l.JPG" hspace="15" vspace="5" align="left">
more filename lawk."{print$1)"Isort|unlq c |sort n |awk
"(if($1>100)(print $2)}"
在这里我们将统计时间设定为一天,统计阈值为100,当一天内计算机发送可疑数据包数量累计超过100,我们即认为该计算机已经被感染。
3 蠕虫病毒的宏观防治
网络病毒的防治一直是比较困难的。“蠕虫”病毒由于具有利用系统漏洞,传播速度快,覆盖面积广,占用带宽等特点,很难在短期内彻底清除。常常会出现刚刚清除了一批,又有新的一批计算机被感染的现象。最好的防治措施是让校内所有的计算机都打上补丁程序,以防止病毒的进一步扩散,再用杀毒程序予以清除。为此我们采取了三步走的策略方针:
(1)向校内发警告通知,提供补丁下载网站,并为因网络瘫痪而无法下载补丁程序的用户提供补丁光盘。
(2)向所有检测到染毒的计算机发信使服务通知用户增打补丁。此任务可以通过编写含有net send IP"message"命令的批处理程序完成。但对于部分信使服务关闭的计算机而言,消息无法送达。
(3)设置强制下载模式。
由于我校用户目前均使用Dr.com公司的动态nat机制出校访问,具有统一的出口途径,我们在用户出口身份验证之前先强行用户登录一用JSP编写的页面,强制用户下载补丁和杀毒程序,并向用户传送一段Cooke代码,以此判断用户对该杀毒程序是否已经下载,从而强制出校访问的每台计算机都打上系统补丁。
通过妒检测、信使服务、强制下载扫毒工具等一系列措施,我校的校园网往往在数天之内就能基本控制病毒的扩散,保证了校园主干网的良好运行。
4 结束语
从“冲击波”到“震荡波”到“熊猫烧香”病毒,网络型病毒正在严重威胁着英特网的正常使用,如何从宏观的角度予以检测和防治是目前网络安全专家普遍关心的问题,本文提出的基于Netflow技术的网络宏观检测法对蠕虫病毒的防治取得了较显著的作用,对类似的利用TCP或UDP连接攻击系统漏洞的其他网络型病毒而言,也能产生较为良好的效果。
推荐访问: 蠕虫病毒 防治 特性 策略 检测