四.蠕虫的检测与防治
由前面的分析可知,尽早的发现蠕虫并对感染蠕虫的主机进行隔离和恢复,是防止蠕虫泛滥,造成重大损失的关键。
4.1蠕虫的检测
4.1.1 蠕虫监测和防护现状
目前国内并没有专门的蠕虫检测和防御系统,传统的主机防病毒系统并不能对未知的蠕虫进行检测,只能被动的对已发现的特征的蠕虫进行检测。而目前市场上的入侵检测产品,对蠕虫的检测也多半的基于特征,同时ids提供的异常检测功能,虽然可以发现网络中的异常,但是也没有更好的办法对蠕虫的传染进行控制,减少蠕虫造成的损失。
4.1.2 网威VDS(Virus Detect System)的蠕虫检测方法
中科网威的VDS产品针对病毒查杀软件和目前NIDS存在的不足,在检测和互动方面使用了多种技术,达到对蠕虫的检测和控制的目的。下面先说一下对中科网威对未知蠕虫的检测技术。
1. 对未知蠕虫的检测
对蠕虫在网络中产生的异常,有多种的的方法可以对未知的蠕虫进行检测,比较通用的方法有对流量异常的统计分析,对tcp连接异常的分析,网威入侵检测在这两种分析的基础上,又使用了对ICMP数据异常分析的方法,可以更全面的检测网络中的未知蠕虫。这种网络蠕虫的测的方法是Bob Gray,Vincent Berk在2003年11月4日的ISTS 技术大会中提出的。
具体实现如下:
![]() |
| 路由器返回ICMP-T3包(点击放大) |
当一台主机向一个不存在的主机发起连接时,中间的路由器会产生一个ICMP-T3(目标不可达)包返回给蠕虫主机(如上图)。
![]() |
| 蠕虫的随机扫描行为(点击放大) |
在蠕虫的扫描阶段,蠕虫会随机的或者伪随机的生成大量的IP地址进行扫描,探测漏洞主机。这些被扫描主机中会存在许多空的或者不可达的IP地址,从而在一段时间里,蠕虫主机会接收到大量的来自不同路由器的ICMP-T3数据包(如上图)。网威的VDS通过对这些数据包进行检测和统计,在蠕虫的扫描阶段将其发现,然后对蠕虫主机进行隔离,对蠕虫其进行分析,进而采取防御措施。
![]() |
| 检测扫描(点击放大) |
如图上所示,将ICMP-T3数据包进行收集、解析,并根据源和目的地址进行分类,如果一个IP在一定时间(T)内对超过一定数量(N)的其它主机的同一端口(P)进行了扫描,则产生一个发现蠕虫的报警(同时还会产生其它的一些报警)。
这种方法可以检测出具有高速,大规模传染模型的网络蠕虫。(很难检测针对某个网络的传播的特定的蠕虫和慢速传播的蠕虫。这两种蠕虫,可以认为对整个网络来说,他们的危害比较小)
