其实早在1988年,Unix平台上就已经释放出了第一个大型的蠕虫,但这些就如同当时的Unix系统本人一样,还不为人所知。随着Klez病毒在Linux平台上传染的通告,才使人们渐渐认识到,原来Unix和Linux也存在安全问题。接下来的病毒就更多了,如:Lion.worm、OSF.8759、Slapper、Scalper、Linux.Svat和BoxPoison等等病毒。有一个奥地利的学生,甚至编写了一本如何在Linux平台上编写ELF 病毒的指南,但即使这样,很多病毒还是不被大家所熟悉。至今被病毒侵害过Unix/Linux已经很多了,Unix的有:FreeBSD、HP/UX、IBM AIX、SCO Unixware、SCO OpenServer、Sun Solaris以及SunOS等,Linux的有:SuSE Linux、Mandrake Linux、Red Hat Linux、Debian GNU Linux、Slackware Linux。
WINE是一个公开源代码的兼容软件包,能让UNIX平台运行Windows应用软件。虽然这似乎是个不错的选择,然而,使用WINE的 Unix/Linux系统特别容易受到病毒的攻击。因为它们会使无论是对UNIX的还是对 Windows的病毒、蠕虫和木马都能对系统产生威胁。其实,无论是Unix/Linux还是Windows,病毒和木马的工作原理都是大同小异的,我们可以将病毒简单的理解为不经过你的同意而感染和摧毁其他程序的程序,蠕虫则看成是一个不经过你的同意而自我复制的代码块,虽然有些系统Bug也会存在复制的行为,但其无意识的行为和病毒、蠕虫、木马的有意识的主动行为还是有区别的。在Unix系统中,一个将名字伪装成tar或df的木马,甚至可以移除整个文件系统,这显然是非常可怕的。
四、实例为证
为了进一步了解在Unix/Linux环境下,病毒的工作原理和过程,最好还是结合病毒实例进行讲述。在Unix/Linux系统中使用Apache作为WEB服务器的用户是相对较多的,而Linux.Slapper worm. Slapper正是针对其攻击的,此蠕虫通过HTTP协议向WEB的80端口发出GET请求,从而获得Apache的版本,它一旦发现容易攻击的版本时,便连接到服务器的443端口,利用一个缓冲区溢出漏洞来采用合适的蠕虫包替换服务器中相应的文件。替换成功后,该蠕虫会利用一个本地编译器(如:GCC)编译自身,将编译后的二进制结果从/tmp目录开始扩散,监听UDP端口,以接受更长远的分布式拒绝服务(DDoS )攻击的指示。最后,DDoS攻击制造TCP洪流令系统瘫痪。某些Slapper病毒的变异体还会扫描整个B类网络寻找容易攻击的Apache服务器。
另外还有一个典型的例子,Linux Lion worm蠕虫。它就是通过扫描B类网络的53端口,从中寻找易攻击的DNS服务器(基于Unix/Linux平台),若寻找到目标服务器,它将清除日志文件,接着种植各种木马文件以隐藏它的真实企图。它复制的这些文件几乎看不什么破绽,它还会删除一些系统文件以达到更好的隐藏目的。一旦整个部署过程完成后,它会把密码文件发送给预先设定的远程计算机,其他Lion 的变种可以通过嗅探器来嗅探活动连接中的密码信息。通过获得系统访问权限,病毒黑客们能利用远程系统进行DDoS攻击,窃取信用卡号,或者窃取和破坏机密文件、纪录。
结束语
要想使你的Unix/Linux系统更加安全,选择合适的防毒产品是必须要考虑的问题,一些Unix/Linux被设计安装在防火墙上,或部署在消息和群件服务器上。在拥有Unix/Linux服务器的网络中,保护服务器的安全就显得尤为重要,仍需要厂商和广大的程序员们不懈地努力!