每一次蠕虫的爆发都会给社会带来巨大的损失。2001 年9 月18 日,Nimda 蠕虫被发现,对Nimda 造成的损失评估数据从5 亿美元攀升到26 亿美元后,继续攀升,到现在已无法估计。目前蠕虫爆发的频率越来越快,尤其是近两年来,越来越多的蠕虫(如冲击波、振荡波等)出现。对蠕虫进行深入研究,并提出一种行之有效的解决方案,为企业和政府提供一个安全的网络环境成为我们急待解决的问题。
什么是蠕虫
Internet 蠕虫是无须计算机使用者干预即可运行的独立程序,它通过不停地获得网络中存在漏洞的计算机上的部分或全部控制权来进行传播。
蠕虫与病毒的最大不同在于它不需要人为干预,且能够自主不断地复制和传播。蠕虫程序的工作流程可以分为漏洞扫描、攻击、传染、现场处理四个阶段。蠕虫程序扫描到有漏洞的计算机系统后,将蠕虫主体迁移到目标主机。然后,蠕虫程序进入被感染的系统,对目标主机进行现场处理。现场处理部分的工作包括:隐藏、信息搜集等。不同的蠕虫采取的IP生成策略可能并不相同,甚至随机生成。各个步骤的繁简程度也不同,有的十分复杂,有的则非常简单。
蠕虫的行为特征包括:
·自我繁殖:
·利用软件漏洞:
·造成网络拥塞:
·消耗系统资源:
·留下安全隐患:
蠕虫的工作方式归纳如下:随机产生一个IP 地址;判断对应此IP 地址的机器是否可被感染;如果可被感染,则感染之;重复1~3 共m 次,m 为蠕虫产生的繁殖副本数量。
如何检测蠕虫
由以上的分析可知,尽早地发现蠕虫并对感染蠕虫的主机进行隔离和恢复,是防止蠕虫泛滥、造成重大损失的关键。
目前国内并没有专门的蠕虫检测和防御系统,传统的主机防病毒系统并不能对未知的蠕虫进行检测,只能被动地对已发现的特征的蠕虫进行检测。而且目前市场上的入侵检测产品,对蠕虫的检测也多半是基于特征,所以我们利用ids提供的异常检测功能,通过发现网络中的异常,来对蠕虫的传染进行控制。虽然有些事后诸葛的嫌疑,但只要发现及时,还是能大大减少蠕虫造成的损失。
在对未知蠕虫的检测方面,入侵检测在对流量异常的统计分析和对tcp连接异常的分析基础上,又使用了对ICMP数据异常分析的方法,可以更全面地检测网络中的未知蠕虫。这种网络蠕虫的检测技术是Bob Gray,具体实现过程是:当一台主机向一个不存在的主机发起连接时,中间的路由器会产生一个ICMP-T3(目标不可达)包返回给蠕虫主机。
这种方法可以检测出具有高速、大规模传染模型的网络蠕虫。(很难检测针对某个网络传播的特定的蠕虫和慢速传播的蠕虫。这两种蠕虫,可以认为对整个网络来说,它们的危害比较小)。
全方位的蠕虫防治策略
当蠕虫被发现时,要在尽量短的时间内对其进行响应。首先产生报警,通知管理员,并通过防火墙、路由器、或者HIDS的互动将感染了蠕虫的主机隔离;然后对蠕虫进行分析,进一步制定检测策略,尽早对整个系统存在的不安全隐患进行修补,防止蠕虫再次传染,并对感染了蠕虫的主机进行蠕虫的删除工作。
对于感染了蠕虫的主机时,其防治策略是这样的:
1.与防火墙互动:通过控制防火墙的策略,对感染主机的对外访问数据进行控制,防止蠕虫对外网的主机进行感染。
2.交换机联动:通过SNMP协议进行联动,当发现内网主机被蠕虫感染时,可以切断感染主机同内网的其他主机的通讯,防止感染主机在内网的大肆传播。
3.通知HIDS(基于主机的入侵监测):装有HIDS的服务器接收到监测系统传来的信息,可以对可疑主机的访问进行阻断,这样可以阻止受感染的主机访问服务器,使服务器上的重要资源免受损坏。
4.报警:产生报警,通知网络管理员,对蠕虫进行分析后,可以通过配置Scaner来对网络进行漏洞扫描,通知存在漏洞的主机到Patch服务器下载补丁进行漏洞修复,防治蠕虫进一步传播。
……