清除威胁 网络蠕虫病毒的检测与防治(多图)(4) | |||||||||
---|---|---|---|---|---|---|---|---|---|
http://www.sina.com.cn 2004年09月03日 09:26 天极网 | |||||||||
文/郑传波 叶小列
1.对未知蠕虫的检测
对蠕虫在网络中产生的异常,有多种的的方法可以对未知的蠕虫进行检测,比较通用的方法有对流量异常的统计分析,对tcp连接异常的分析,网威入侵检测在这两种分析的基础上,又使用了对ICMP数据异常分析的方法,可以更全面的检测网络中的未知蠕虫。这种网络蠕虫的测的方法是Bob Gray,Vincent Berk在2003年11月4日的ISTS 技术大会中提出的。
具体实现如下:
当一台主机向一个不存在的主机发起连接时,中间的路由器会产生一个ICMP-T3(目标不可达)包返回给蠕虫主机(如图4)。
图4 路由器返回ICMP-T3包
在蠕虫的扫描阶段,蠕虫会随机的或者伪随机的生成大量的IP地址进行扫描,探测漏洞主机。这些被扫描主机中会存在许多空的或者不可达的IP地址,从而在一段时间里,蠕虫主机会接收到大量的来自不同路由器的ICMP-T3数据包(如图5)。网威的VDS通过对这些数据包进行检测和统计,在蠕虫的扫描阶段将其发现,然后对蠕虫主机进行隔离,对蠕虫其进行分析,进而采取防御措施。
图5 蠕虫的随机扫描行为
如图6所示,将ICMP-T3数据包进行收集、解析,并根据源和目的地址进行分类,如果一个IP在一定时间(T)内对超过一定数量(N)的其它主机的同一端口(P)进行了扫描,则产生一个发现蠕虫的报警(同时还会产生其它的一些报警)。
图6 检测扫描
这种方法可以检测出具有高速,大规模传染模型的网络蠕虫。(很难检测针对某个网络的传播的特定的蠕虫和慢速传播的蠕虫。这两种蠕虫,可以认为对整个网络来说,他们的危害比较小)
2.对于已知蠕虫的检测
网威网络病毒检测系统为了适应对蠕虫各个阶段的不同行为的检测,使用编译技术,创建了网威的脚本语言NPDCL(网威检测控制语言),结合虚拟机技术,创建了解释执行NPDCL语言的虚拟机。通过整个NPDCL脚本来控制整个VDS的检测过程。打破了传统的单一的发现符合某条规则就进行事件报警的机制,提高安全事件的关联分析功能。从而可以对一个蠕虫的各个阶段的不同行为进行关联分析,并且根据蠕虫的多个行为特征进行判断,而不是简单的针对某个存在漏洞的服务进行特征匹配。同时具有丰富的行为特征库,可以对目前流行的病毒,如振荡波,冲积波等病毒以及多种变种进行检测。
以“振荡波的b变种”检测为例,其检测流程如图7。
图7 振荡波检测流程
首先通过对TCP半连接状态的检测发现蠕虫的扫描行为,发现可疑的扫描源;然后在TCP的连接建立时间中检测可疑扫描源对漏洞主机特定端口(445)的攻击行为,进一步确认感染了蠕虫的主机;第三步检测蠕虫的自我传播过程,对震荡波来说,是通过5545端口的ftp服务来进行传播;最后通过传播文件的特征(如123_up.exe)来进一步确认振荡波的传播。
在以上的检测步骤中都会产生相关的报警,从而采取相应的措施,防止蠕虫的进一步传播。
[上一页]  [1]  [2]  [3]  [4]  [5]  [下一页]
|