1 概述
随着企业 Intranet 网和Internet 的迅猛发展,网络对企业关键业务的正常运作起 着越来越至关重要的作用。以此同时,各种各样的网络非法入侵、网络攻击和网络病毒也日益猖獗,网络安全受到严重的威胁。如何有效、及时地检测和发现潜在的和正在发生的网络攻击,已成为企业 IT 和网络维护人员非常关注的问题。
从 2003 年8 月11 日在美国首次发现网络冲击波蠕虫病毒(W32.Blaster.Worm)以 来,此病毒正以非常惊人的速度在整个 Internet 上迅速蔓延。目前,此病毒已在中国的 Internet 和企业网中大量扩散,严重影响和威胁着企业网络和广大网民的正常上网。
为此,对冲击波蠕虫病毒的特征进行了一定的研究,并利用 Agilent Advisor 和Network Analyzer 网络协议分析仪为工具, 总结出一套及时在网络中发现和隔离冲击波蠕虫病毒的行之有效的方法和流程。
2 冲击波蠕虫病毒的网络特征
要检测在网络中是否存在冲击波蠕虫病毒,我们首先要了解该病毒的网络行为和特征。冲击波蠕虫病毒主要针对 Windows 2000 和Windows XP 主机中所运行的DCOM RPC 程 序的漏洞,利用 TCP 端口135 来发起攻击。一旦计算机感染了该病毒,它会按照一定的 规则或随机产生 IP 地址,并向使用这些IP 地址的其它主机发起攻击,以试图感染这些 主机。该病毒产生攻击目标 IP 地址的情况有两种:
获得了这些 IP 地址后,该病毒就会向它们发送大量TCP 端口为135 的数据,以试图 使没有打 DCOM RPC 补丁的Windows 2000 和Windows XP 主机受到感染。在80%的时间, 该病毒会产生针对 Windows XP 的攻击数据包,在20%的时间,它会产生针对Windows 2000的攻击数据包。
此外,病毒还会在被感染的计算机上用 Cmd.exe 创建一个远程Shell 进程,并被动 侦听 TCP 端口4444,从而使得黑客可以向被感染计算机发布远程控制指令,以进行其它 方式的网络破坏和攻击。被感染的计算机还会侦听 UDP 端口69,一旦它在该端口收到另 一台计算机的请求,该病毒便会发送 msblast.exe 文件到该计算机并使其运行,从而感 染该计算机。病毒还会在某些日期和特定条件满足的情况下,控制被感染的计算机对微 软公司的 windowsupdate.com 网站进行拒绝服务(DOS)攻击。
3 网络测试连接
3.1 测试点在网络拓扑中的位置
选择合适的网络测试点对于有效地发现冲击波蠕虫病毒是非常重要的。目前的企业网大多采用的是交换式以太网。由于交换式以太网的非共享特性,需要将测试仪表连接在网络的关键网段(即大多数网络流量的必经之路上,例如:连接骨干交换机之间的 Trunk 链路、 Internet 出口路由器链路等)。这样连接,一方面比较容易发现冲击波蠕虫病毒。 由于 60%的冲击波病毒所攻击的IP 地址是随机产生,它们很有可能是公网上的IP 地址, 因此这些流量会被转发到 Internet 出口链路上。另一方面,保证这些关键链路不受病毒 侵扰,对整个网络的维护也是最为重要的。
3.2 仪表连接图
安捷伦局域网测试模块支持内置 HUB 和全双工测试,并提供快速以太网 10/100M 自 适应测试功能。仪表提供两个 RJ45 接口,在不引入其它附加设备的情况下,利用内置 的 HUB ,即可将仪表串接在交换机和主机节点之间,进行交换式以太网的测试,避免了引入附加 HUB 带来的操作不便和额外的影响。这项功能非常有效地解决了对交换式以太网监测所存在的连接测试点问题。
以下是采用安捷伦协议分析进行以太网监测的连接图。
(1) 共享式以太网
图表共享式以太网测试连接图
(2)交换式以太网
图表交换式以太网测试连接图
除了以上的串接方式,通过配置交换机,把多个端口的收发数据镜像到另一个空闲 端口也可以实现对交换式以太网的测试。仪表连接方式同( 1)。
4 冲击波蠕虫病毒检测案例分析
以下我们在国内某企业网的路由器 Internet 出口进行测试,发现并隔离被冲击波蠕虫 病毒感染计算机的应用实例。
通过该案例分析,您也可从中掌握如何利用网络协议分析仪发现和隔离冲击波蠕虫病毒的一般步骤。对于其它类型的网络或病毒攻击,只要您掌握了它的网络行为特征,也可以用类似的方法来进行检测和隔离。
4.1 分析网络应用协议分布是否正常
从仪表的主菜单中选择 [File->Open Measurement … ],然后选择“Protocol Stats IP.msx”文件,便可启动IP 应用协议的分布统计测量。 以下在该测试案例中网络的 IP 应用协议分布统计。
由上图可见, LOC-SRV ( TCP 135 )端口占了将近 1/3 的网络总流量,其线路利用率为 3.13% ,带宽占用为 3.13Mbps 。这种网络协议分布显然是不合理的,同正常的网络情况有很大的差异,因此可以初步判断网络中有可能存在冲击波蠕虫病毒。
4.2 启动网络连接统计
为了进一步分析哪些主机在产生 TCP 135 端口的流量,可在仪表的工具条中选择 “ Connection Stats”按钮(或按Ctrl+Shift+X 热键)。安捷伦网络分析仪具有的强 大流量统计关联功能,它能将网络节点、连接和协议分布有效地进行关联,包括以下三 种关联方式:
1) 节点- >连接->协议:此种关联方式,可以先统计出产生流量最多的网络节点,然 后可进一步了解这些网络节点跟谁在进行通信,采用的是哪一种网络协议。
2) 节点- >协议->连接:此种关联方式,可以先统计出产生流量最多的网络节点,然 后可进一步了解这些网络节点主要使用哪些网络协议,以及跟谁在进行通信。
3) 协议- >节点->连接:此种关联方式,可以先统计出网络中的协议应用的流量分布, 然后可进一步了解是哪些网络节点和连接在使用这些协议应用。
在本次测试中的网络连接统计可采用协议- >节点->连接关联方式。要选择此种关 联方式,可在连接统计的列表中点击鼠标右键,即可弹出菜单,然后选择“ View Protocol/Nodes/Connections”选项,如下图所示。

4.3 查找受感染的计算机
在“协议- >节点->连接关联方式”的连接统计列表中,我们可以找到 LOC-SRV 135 的协议统计条目,点击其左侧的“+”按钮可将使用该协议的网络节点列表展开,此时我们可以看到所有产生和接收 TCP 135 端口流量的 IP 地址,其中产生流量的节点(即 “ Frame->”和“Byte->”列有统计数值的节点)即为感染病毒的主机。如下图所示:

通过以上列表,我们可以十分方便地找到感染病毒的主机的 IP 地址,如: 10.16.131.55,10.14.11.241,…等。如果这些主机在DNS 中有域名映射,也可以从仪表 的“节点发现”测量中,找到这些节点的名称。
4.4 分析受感染计算机正在攻击的目标
点击主机左侧的“+”按钮可将同该主机通信的其它网络节点列表展开,这些节点便是被攻击的计算机。

在上图中,我们可以看到 10.14.11.241 主机,正在攻击 IP 地址为 10.14.65.123 — 128 的网络节点。此攻击 IP 地址序列完全符合冲击波病毒的特征。
4.5 分析攻击数据包的具体内容
通过以上这些分析步骤,我们已可十分方便地找到并确认受冲击波病毒感染的主机。如果网络维护人员需要进一步详细分析冲击波病毒的具体特征,可以用鼠标右键点击在受感染的 IP 地址上,在弹出式菜单上选择“ Drill into Decode-> To or From Address”, 便可进入到协议解码窗口。
下图是某一冲击波病毒攻击数据包的协议解码。
我们可以看到冲击波病毒攻击数据包是一个向 TCP 135 端口发起的一个TCP 连接建 立请求,从而用来消耗被攻击的主机的 CPU 和内存资源,最终导致其堆栈溢出而被感染。 这种攻击方式同 TCP SYN 方式的DOS 攻击是非常类似的。