论文部分内容阅读
摘 要:随着互联网的发展,网络蠕虫成为网络系统安全的重要威胁。发生在教育区域网中的网络蠕虫扫描和攻击行为,往往导致网络链路拥挤、服务质量下降、网络主机崩溃等后果,严重影响各项教育信息化工作的正常开展。本文在详细分析了网络蠕虫工作原理和传播机制的基础上,提出了教育区域网中有效防治网络蠕虫的安全策略与措施。
关键词:网络蠕虫;教育区域网;蠕虫防治
中图分类号:TP309文献标识码:A文章编号:1673-8454(2009)22-0073-03
近年来,随着教育信息化工作的大力推进,教育区域网中各种应用系统不断增加,成为支撑各项工作正常开展的基础。在互联网中泛滥的网络蠕虫开始渗入教育网中,严重影响了基础网络平台的正常运作。本文从网络蠕虫的定义出发,深入分析了蠕虫的工作原理和传播机制,并针对教育区域网的特点提出了行之有效的防治策略和措施。
一、网络蠕虫的定义
网络蠕虫可定义为独立存在或植入其他文件中的、通过网络传播的恶意代码。[1] 根据传播机制可将蠕虫分为三类:
* 依赖于客户应用程序的蠕虫 *Windows文件共享蠕虫
*传统蠕虫
第一类中的典型代表是E-mail蠕虫和IM(Instant Messenger,即时通信软件)蠕虫,它们依赖于本地系统中的E-mail或IM功能来传播,主要途径是欺骗用户运行不可信的文件使其受感染。文件共享蠕虫利用微软Windows系统的端对端(Peer-to-Peer)服务传播,而传统蠕虫则是直接发起网络连接对其他存在操作系统或应用程序漏洞的网络主机进行攻击,这两类属于完全无需用户干预的自动传播蠕虫。
网络蠕虫的功能结构一般可分为主体功能和辅助功能。[2] 主体功能模块完成关键的自我传播过程,包括信息搜集、扫描探测、攻击渗透、自我繁殖等功能;辅助功能模块主要为了增强蠕虫的破坏力和生存能力,包括实体隐藏、宿主破坏、信息通信、远程控制、自动升级等功能。
二、网络蠕虫的传播
1.蠕虫的生存周期
从宏观角度看,一个蠕虫的生存周期包括四个阶段[3]:潜伏期、繁殖期、衰退期以及持续期。如图1所示。潜伏期是指从一个漏洞被发现,到针对该漏洞的蠕虫在实际网络中出现之间的时期;繁殖期是指蠕虫进行大范围扩散的时期,该期间蠕虫使用各种潜在目标发现技术来感染尽可能多的存在漏洞的网络主机;蠕虫大范围繁殖之后开始进入衰退期,该期间网络管理员通过部署针对性策略抑制蠕虫的继续发展,受感染的主机被打上补丁或者移离网络,蠕虫的影响被逐渐减小;最后,大多非毁灭性的蠕虫会进入持续期,仍然潜伏在为数不多的未被发现的受感染主机之中,在某些情况下可能会重新发作。
从微观角度看,蠕虫的传播主要发生在繁殖期,该过程可以细分为初始化、网络传播和负载激活等三个阶段。[4] 蠕虫感染一台主机后首先进行初始化,包括安装必要的软件、获取本地主机的配置信息、设置全局变量等;完成初始化后将进入网络传播阶段,此时受感染主机通过网络侦察、扫描探测等各种技术发现潜在的易感染目标,然后对这些目标发起攻击并使其受感染。负载激活阶段可以发生在蠕虫初始化后的任何时间,该阶段与另外两个阶段在逻辑上相对独立,意图是让大量受感染主机执行负载中的代码实现某种功能,这是蠕虫传播的最终目的。例如Code Red I蠕虫[5] 设定在每月20日至29日激活,对白宫网站发起DoS(Denial of Service,拒绝服务)攻击。
2.蠕虫的传播机制
网络蠕虫的传播主要包括攻击目标的发现以及对目标主机的攻击与感染。
(1)攻击目标的发现。大多蠕虫采用主动目标发现机制:对于E-mail蠕虫和IM蠕虫等依赖于客户应用程序的蠕虫,其攻击对象一般来源自受感染的本地主机客户端中的联系人列表,例如E-mail客户端软件的通信录或QQ、MSN等即时通信软件的好友列表;而对于传统蠕虫,一般是使用扫描和脆弱目标列表来发现攻击目标,在下面将对这些技术进行详细讨论。少数蠕虫采用被动目标发现机制:它们只将与受感染主机有正常E-mail、IM通信或者正常网络连接关系的主机作为攻击目标。相对于主动机制,被动机制较为隐蔽,但是扩散的速度则较慢。
(2)攻击与感染。对于传统蠕虫,攻击渗透是针对目标主机的特定漏洞进行攻击,以获取高级权限;感染是在获取目标主机的高级权限以后,将自身复制到目标主机并进行初始化。例如虽然攻击和感染在逻辑上是独立的步骤,但在实际的蠕虫实现中,这两步通常合二为一。对于依赖于客户应用程序的蠕虫一般不进行直接攻击,而是通过社会信任关系欺骗目标,使其被感染。其中E-mail蠕虫通常是将包含蠕虫副本的文件作为附件发送,使得接收方在无意中运行并被感染;而IM蠕虫除了可以将蠕虫副本文件直接发送给联系人并欺骗其执行以外,还可以通过文本方式发送URL信息,该链接一般指向包含蠕虫副本的网站。
3.主动目标发现技术
主动目标发现技术包括扫描、脆弱目标列表、内部生成的目标列表等。[4]
(1)扫描(Scanning)是指通过刺探一个IP地址集合来寻找存在漏洞的主机。根据地址集合生成方式的区别,可以分为以下几类:
随机扫描(Random Scanning)是指从一个地址空间中按照某种概率分布随机生成地址集合。这个地址空间可以是整个可用的IPv4地址空间,也可以是选定的地址空间,例如某个AS(Autonomous System,自治域)。其中最简单的是基于均匀概率分布,这需要一个很好的随机数生成器。Code Red蠕虫的两个版本都使用了这种方法,其中Code Red I的随机数生成器使用了一个固定种子,导致所有样本都生成相同的地址集合,传播速度因此受到限制;而Code Red II使用了真正的随机种子,使得各个样本生成的地址集合都不相同,得以在短时间内大范围传播。随机扫描还可以基于其他概率分布,例如可以生成倾向于选择靠近本机的IP地址。
顺序扫描(Sequential Scanning)是指给定一个起始IP地址,然后通过不断地自增或自减来产生下一目标地址。根据不同的策略,蠕虫可以选择不同的起始地址。例如Blaster蠕虫[3] 就使用了该方法,其从本机所在C类子网中和从整个IPv4地址空间中随机选择一个起始IP地址的概率分别是0.4和0.6。
可路由扫描(Routable Scanning)是指从可路由的地址空间中生成地址集合,可利用BGP(Border Gateway Protocol,边界网关协议)路由表提供的信息来获取可路由的IP地址。该方法能够保证地址集合中的所有IP地址均可达,但是传播中需要携带可路由地址库,这将降低其传播速度。
域名扫描(DNS Scanning)是指从具有域名的地址空间中生成地址集合,可从DNS(Domain Name System,域名系统)服务器获取具有公共域名的IP地址。该方法生成的地址集合可用性强,但是与可路由扫描一样需要携带地址库。
(2)脆弱目标列表(Hit-List)中包含了存在特定漏洞,能够被该蠕虫攻击感染的主机地址,该列表是预先生成的,由设计者内置在蠕虫中。脆弱目标列表可分为不完整列表(Incomplete Hit-List)与完整列表(Complete Hit-List)两种。不完整列表只包含部分能够被该蠕虫感染的主机,通过它可以增加初始的被感染主机的数量,一般配合扫描等其他目标发现技术同时使用,起到加速传播的效果。完整列表中则包含了所有能够被该蠕虫感染的主机,通过它可以在最短的时间内把所有存在漏洞的主机全部感染。采用完整目标列表的蠕虫又被称为Flash蠕虫[6],因为其传播速度极快。
(3)内部生成的目标列表是指蠕虫通过在被感染主机上窃取信息而获得的可能存在漏洞的目标列表。例如前面提到的E-mail蠕虫和IM蠕虫都采用这种方式,它们以被感染主机上的E-mail客户端软件通信录或QQ、MSN等即时通信软件好友列表上的联系人作为攻击感染的目标。
三、教育区域网中的蠕虫防治
因为网络蠕虫具有相当的复杂性与不确定性,其防治需要综合运用多种技术和管理手段。
1.预防蠕虫
从上面讨论的蠕虫工作原理中可以看出,蠕虫存在并蔓延的根本原因是网络主机的操作系统或者应用程序存在着漏洞,能够被蠕虫攻击感染,将自身植入其中。因此,只要在蠕虫的潜伏期间,也就是针对该漏洞的蠕虫实际样本出现之前,能够使所有区域网内的网络主机打上补丁,那么蠕虫将无法渗入。这属于网络管理的职能范畴。教育区域网的特点是网络主机地域分布较为分散,存在较多的分支子网管理域,但是区内的教育类应用系统较为一致。因此可以建立一个自顶而下的安全管理机制,由区域网枢纽的管理者统一掌握区内各种应用系统的最新安全状况;当需要执行系统更新或安装补丁时,由其向各分支子网的管理者下发相关的通知和程序,并检查更新情况。
除了建立统一的管理机制以外,还应当注重网络安全使用教育。例如QQ尾巴等一些当今流传较广的IM蠕虫,都是利用社会信任关系,欺骗用户点击不可信任的危险网站、或者打开不可信任的有害文件。被感染的用户往往在不知情的情况下,变成了新的感染源,被蠕虫利用攻击其他用户,危害极其严重。定期组织区内网络用户开展网络安全使用教育,培养健康的上网习惯,可以有效防止蠕虫的肆虐。
2.蠕虫监控
当一个漏洞被公开后,别有用心的攻击者通常马上针对该漏洞开发蠕虫,而一些自动化工具的出现,也使得蠕虫开发的周期大为缩短。因此,在软件维护者提供修补漏洞的补丁程序之前,区域网应进入预警状态,蠕虫随时有可能大范围传播。从上面了解的蠕虫传播机制可以知道,最先受感染的网络主机通常会出现大范围扫描的行为,这一特征可以用作发现蠕虫传播源。区域网管理者可配置防火墙,当出现外网主机向内网扫描的情况,则封锁该主机的扫描流量甚至所有流量,直至其恢复正常;当区域网内出现具有扫描行为的主机,立即隔离该主机并产生警告信息,通知其所在管理域的网络管理者。另外还可以部署NIDS(Network Intrusion Detection System,网络入侵检测系统)产品,这些检测系统能够通过负载特征匹配方法识别已知的蠕虫。
对于区域网内出现的蠕虫传播源,将其隔离之后,首先应当对其进行详细的分析,包括提取蠕虫的样本、统计蠕虫的扫描特征等信息,将分析的结果上报给网络安全研究机构,然后必须在彻底地清除蠕虫样本之后再重新接入网络,以免其死灰复燃。
四、结束语
网络蠕虫是互联网中的主要威胁之一,目前无法将其根治。在教育区域网环境中,可以通过严谨的管理策略、合适的安全设施、有效的应变措施将蠕虫最大限度地拒之门外。只有在网络管理者们的协调和努力,以及网络用户的积极配合下,才能够营造一个和谐、高效的网络环境。
参考文献:
[1]D.M.Kienzle and M.C.Elder.Recent Worms:A Survey and Trends[C]. In WORM ’03, Washington D.C., USA, 2003, pp. 1-10.
[2]文伟平,卿斯汉,蒋建春,王业君. 网络蠕虫研究与进展[J]. 软件学报,2004,15(8): 1208-1219.
[3]M. Bailey, E. Cooke, F. Jahanian et al. The Blaster Worm: Then and Now[J]. IEEE Security
关键词:网络蠕虫;教育区域网;蠕虫防治
中图分类号:TP309文献标识码:A文章编号:1673-8454(2009)22-0073-03
近年来,随着教育信息化工作的大力推进,教育区域网中各种应用系统不断增加,成为支撑各项工作正常开展的基础。在互联网中泛滥的网络蠕虫开始渗入教育网中,严重影响了基础网络平台的正常运作。本文从网络蠕虫的定义出发,深入分析了蠕虫的工作原理和传播机制,并针对教育区域网的特点提出了行之有效的防治策略和措施。
一、网络蠕虫的定义
网络蠕虫可定义为独立存在或植入其他文件中的、通过网络传播的恶意代码。[1] 根据传播机制可将蠕虫分为三类:
* 依赖于客户应用程序的蠕虫 *Windows文件共享蠕虫
*传统蠕虫
第一类中的典型代表是E-mail蠕虫和IM(Instant Messenger,即时通信软件)蠕虫,它们依赖于本地系统中的E-mail或IM功能来传播,主要途径是欺骗用户运行不可信的文件使其受感染。文件共享蠕虫利用微软Windows系统的端对端(Peer-to-Peer)服务传播,而传统蠕虫则是直接发起网络连接对其他存在操作系统或应用程序漏洞的网络主机进行攻击,这两类属于完全无需用户干预的自动传播蠕虫。
网络蠕虫的功能结构一般可分为主体功能和辅助功能。[2] 主体功能模块完成关键的自我传播过程,包括信息搜集、扫描探测、攻击渗透、自我繁殖等功能;辅助功能模块主要为了增强蠕虫的破坏力和生存能力,包括实体隐藏、宿主破坏、信息通信、远程控制、自动升级等功能。
二、网络蠕虫的传播
1.蠕虫的生存周期
从宏观角度看,一个蠕虫的生存周期包括四个阶段[3]:潜伏期、繁殖期、衰退期以及持续期。如图1所示。潜伏期是指从一个漏洞被发现,到针对该漏洞的蠕虫在实际网络中出现之间的时期;繁殖期是指蠕虫进行大范围扩散的时期,该期间蠕虫使用各种潜在目标发现技术来感染尽可能多的存在漏洞的网络主机;蠕虫大范围繁殖之后开始进入衰退期,该期间网络管理员通过部署针对性策略抑制蠕虫的继续发展,受感染的主机被打上补丁或者移离网络,蠕虫的影响被逐渐减小;最后,大多非毁灭性的蠕虫会进入持续期,仍然潜伏在为数不多的未被发现的受感染主机之中,在某些情况下可能会重新发作。
从微观角度看,蠕虫的传播主要发生在繁殖期,该过程可以细分为初始化、网络传播和负载激活等三个阶段。[4] 蠕虫感染一台主机后首先进行初始化,包括安装必要的软件、获取本地主机的配置信息、设置全局变量等;完成初始化后将进入网络传播阶段,此时受感染主机通过网络侦察、扫描探测等各种技术发现潜在的易感染目标,然后对这些目标发起攻击并使其受感染。负载激活阶段可以发生在蠕虫初始化后的任何时间,该阶段与另外两个阶段在逻辑上相对独立,意图是让大量受感染主机执行负载中的代码实现某种功能,这是蠕虫传播的最终目的。例如Code Red I蠕虫[5] 设定在每月20日至29日激活,对白宫网站发起DoS(Denial of Service,拒绝服务)攻击。
2.蠕虫的传播机制
网络蠕虫的传播主要包括攻击目标的发现以及对目标主机的攻击与感染。
(1)攻击目标的发现。大多蠕虫采用主动目标发现机制:对于E-mail蠕虫和IM蠕虫等依赖于客户应用程序的蠕虫,其攻击对象一般来源自受感染的本地主机客户端中的联系人列表,例如E-mail客户端软件的通信录或QQ、MSN等即时通信软件的好友列表;而对于传统蠕虫,一般是使用扫描和脆弱目标列表来发现攻击目标,在下面将对这些技术进行详细讨论。少数蠕虫采用被动目标发现机制:它们只将与受感染主机有正常E-mail、IM通信或者正常网络连接关系的主机作为攻击目标。相对于主动机制,被动机制较为隐蔽,但是扩散的速度则较慢。
(2)攻击与感染。对于传统蠕虫,攻击渗透是针对目标主机的特定漏洞进行攻击,以获取高级权限;感染是在获取目标主机的高级权限以后,将自身复制到目标主机并进行初始化。例如虽然攻击和感染在逻辑上是独立的步骤,但在实际的蠕虫实现中,这两步通常合二为一。对于依赖于客户应用程序的蠕虫一般不进行直接攻击,而是通过社会信任关系欺骗目标,使其被感染。其中E-mail蠕虫通常是将包含蠕虫副本的文件作为附件发送,使得接收方在无意中运行并被感染;而IM蠕虫除了可以将蠕虫副本文件直接发送给联系人并欺骗其执行以外,还可以通过文本方式发送URL信息,该链接一般指向包含蠕虫副本的网站。
3.主动目标发现技术
主动目标发现技术包括扫描、脆弱目标列表、内部生成的目标列表等。[4]
(1)扫描(Scanning)是指通过刺探一个IP地址集合来寻找存在漏洞的主机。根据地址集合生成方式的区别,可以分为以下几类:
随机扫描(Random Scanning)是指从一个地址空间中按照某种概率分布随机生成地址集合。这个地址空间可以是整个可用的IPv4地址空间,也可以是选定的地址空间,例如某个AS(Autonomous System,自治域)。其中最简单的是基于均匀概率分布,这需要一个很好的随机数生成器。Code Red蠕虫的两个版本都使用了这种方法,其中Code Red I的随机数生成器使用了一个固定种子,导致所有样本都生成相同的地址集合,传播速度因此受到限制;而Code Red II使用了真正的随机种子,使得各个样本生成的地址集合都不相同,得以在短时间内大范围传播。随机扫描还可以基于其他概率分布,例如可以生成倾向于选择靠近本机的IP地址。
顺序扫描(Sequential Scanning)是指给定一个起始IP地址,然后通过不断地自增或自减来产生下一目标地址。根据不同的策略,蠕虫可以选择不同的起始地址。例如Blaster蠕虫[3] 就使用了该方法,其从本机所在C类子网中和从整个IPv4地址空间中随机选择一个起始IP地址的概率分别是0.4和0.6。
可路由扫描(Routable Scanning)是指从可路由的地址空间中生成地址集合,可利用BGP(Border Gateway Protocol,边界网关协议)路由表提供的信息来获取可路由的IP地址。该方法能够保证地址集合中的所有IP地址均可达,但是传播中需要携带可路由地址库,这将降低其传播速度。
域名扫描(DNS Scanning)是指从具有域名的地址空间中生成地址集合,可从DNS(Domain Name System,域名系统)服务器获取具有公共域名的IP地址。该方法生成的地址集合可用性强,但是与可路由扫描一样需要携带地址库。
(2)脆弱目标列表(Hit-List)中包含了存在特定漏洞,能够被该蠕虫攻击感染的主机地址,该列表是预先生成的,由设计者内置在蠕虫中。脆弱目标列表可分为不完整列表(Incomplete Hit-List)与完整列表(Complete Hit-List)两种。不完整列表只包含部分能够被该蠕虫感染的主机,通过它可以增加初始的被感染主机的数量,一般配合扫描等其他目标发现技术同时使用,起到加速传播的效果。完整列表中则包含了所有能够被该蠕虫感染的主机,通过它可以在最短的时间内把所有存在漏洞的主机全部感染。采用完整目标列表的蠕虫又被称为Flash蠕虫[6],因为其传播速度极快。
(3)内部生成的目标列表是指蠕虫通过在被感染主机上窃取信息而获得的可能存在漏洞的目标列表。例如前面提到的E-mail蠕虫和IM蠕虫都采用这种方式,它们以被感染主机上的E-mail客户端软件通信录或QQ、MSN等即时通信软件好友列表上的联系人作为攻击感染的目标。
三、教育区域网中的蠕虫防治
因为网络蠕虫具有相当的复杂性与不确定性,其防治需要综合运用多种技术和管理手段。
1.预防蠕虫
从上面讨论的蠕虫工作原理中可以看出,蠕虫存在并蔓延的根本原因是网络主机的操作系统或者应用程序存在着漏洞,能够被蠕虫攻击感染,将自身植入其中。因此,只要在蠕虫的潜伏期间,也就是针对该漏洞的蠕虫实际样本出现之前,能够使所有区域网内的网络主机打上补丁,那么蠕虫将无法渗入。这属于网络管理的职能范畴。教育区域网的特点是网络主机地域分布较为分散,存在较多的分支子网管理域,但是区内的教育类应用系统较为一致。因此可以建立一个自顶而下的安全管理机制,由区域网枢纽的管理者统一掌握区内各种应用系统的最新安全状况;当需要执行系统更新或安装补丁时,由其向各分支子网的管理者下发相关的通知和程序,并检查更新情况。
除了建立统一的管理机制以外,还应当注重网络安全使用教育。例如QQ尾巴等一些当今流传较广的IM蠕虫,都是利用社会信任关系,欺骗用户点击不可信任的危险网站、或者打开不可信任的有害文件。被感染的用户往往在不知情的情况下,变成了新的感染源,被蠕虫利用攻击其他用户,危害极其严重。定期组织区内网络用户开展网络安全使用教育,培养健康的上网习惯,可以有效防止蠕虫的肆虐。
2.蠕虫监控
当一个漏洞被公开后,别有用心的攻击者通常马上针对该漏洞开发蠕虫,而一些自动化工具的出现,也使得蠕虫开发的周期大为缩短。因此,在软件维护者提供修补漏洞的补丁程序之前,区域网应进入预警状态,蠕虫随时有可能大范围传播。从上面了解的蠕虫传播机制可以知道,最先受感染的网络主机通常会出现大范围扫描的行为,这一特征可以用作发现蠕虫传播源。区域网管理者可配置防火墙,当出现外网主机向内网扫描的情况,则封锁该主机的扫描流量甚至所有流量,直至其恢复正常;当区域网内出现具有扫描行为的主机,立即隔离该主机并产生警告信息,通知其所在管理域的网络管理者。另外还可以部署NIDS(Network Intrusion Detection System,网络入侵检测系统)产品,这些检测系统能够通过负载特征匹配方法识别已知的蠕虫。
对于区域网内出现的蠕虫传播源,将其隔离之后,首先应当对其进行详细的分析,包括提取蠕虫的样本、统计蠕虫的扫描特征等信息,将分析的结果上报给网络安全研究机构,然后必须在彻底地清除蠕虫样本之后再重新接入网络,以免其死灰复燃。
四、结束语
网络蠕虫是互联网中的主要威胁之一,目前无法将其根治。在教育区域网环境中,可以通过严谨的管理策略、合适的安全设施、有效的应变措施将蠕虫最大限度地拒之门外。只有在网络管理者们的协调和努力,以及网络用户的积极配合下,才能够营造一个和谐、高效的网络环境。
参考文献:
[1]D.M.Kienzle and M.C.Elder.Recent Worms:A Survey and Trends[C]. In WORM ’03, Washington D.C., USA, 2003, pp. 1-10.
[2]文伟平,卿斯汉,蒋建春,王业君. 网络蠕虫研究与进展[J]. 软件学报,2004,15(8): 1208-1219.
[3]M. Bailey, E. Cooke, F. Jahanian et al. The Blaster Worm: Then and Now[J]. IEEE Security