作者:guns 来源:赛迪网 2006-06-14 12:49
不久以前,很多系统管理员还信誓旦旦的表示,Linux和其他基于UNIX的平台对于病毒和蠕虫事实上是无懈可击的。我不知道为什么他们对自己的威胁分析这么自信,特别是从第一个大型蠕虫在1988年被Robert Morris发明,在使用Sendmail程序的UNIX系统中被释放出来以后。我猜测每个人都变得热衷于批评微软的操作系统和软件,这已经成为越来越多病毒制造者的攻击目标,然而他们却遗忘了UNIX上的脆弱点。
Linux/UNIX威胁
随着Klez病毒在Linux平台上传染的通告,防毒软件厂商开始提醒我们微软的操作系统不再是唯一易受病毒攻击的操作系统了。即使Linux和其他一些主流UNIX平台的用户可能不是微软捆绑应用软件的大用户,不可能通过这些软件造成病毒的泛滥,Linux和UNIX仍然有它们自身并不引人注目的脆弱点。
除了Klez以外,其他Linux/UNIX平台的主要威胁有:Lion.worm、OSF.8759病毒、Slapper、Scalper、Linux.Svat和BoxPoison病毒,这些很少被提及。
我记得曾经在两年前参加了一个由欧洲最大的财政机构完成的安全审计项目,当时我听见一个知名的安全专家告诉审计师,UNIX是不易受病毒攻击的。审计师只是简单的说了一句"okay",然后纪录下"UNIX系统对于病毒是安全的"。那个时代已经过去了,你现在可以预料到,安全审计师和IT安全团队已经开始强烈的需要UNIX平台上的病毒策略了。
一个叫Alexander Bartolich的奥地利学生甚至已经完成了如何一个编写Linux平台上ELF 病毒的指南。Bartolich 没有要求做一个Linux病毒先锋,他表示,他只是更有效的说明了和反映了病毒、蠕虫和木马威胁Linux 更好的途径,那些很早就已经在别处被说明了。有了这样具启发性的、在网上发布的文档,基于UNIX的病毒数量只会增长的更快,特别是自Linux 在服务器领域的应用越来越广泛之后。系统管理员也许希望,在亲自读过那本指南以后,对Linux 病毒的理解发生飞跃,从而能够更好的掌握Linux 的脆弱点。
病毒的制造者是一些精通编写代码的黑客,他们远比那些胡乱涂改网站却对编写病毒知之甚少的黑客要危险。尽管一个被黑掉的网站可以很快的修好,病毒却加更隐蔽,会带来潜在的安全隐患。你也许不能相信,但是病毒会一直潜伏,直到它给系统带来不可挽回的损害。
受影响的Linux/UNIX平台
不是所有版本的Linux/UNIX平台都已经被影响,但是下面这些是在从前已经被病毒侵害过的系统:
SuSE Linux
Mandrake Linux
Red Hat Linux
Debian GNU Linux
Slackware Linux
FreeBSD
HP/UX
IBM AIX
SCO Unixware
SCO OpenServer
Sun Solaris
SunOS
越多的Linux/UNIX系统连接到局域网和广域网,你的单位就有越多受攻击的可能,这是因为很多UNIX 病毒正在快速的扩散着。使用WINE的 Linux/UNIX系统特别容易受到病毒的攻击。WINE是一个公开源代码的兼容软件包,能让UNIX平台运行Windows应用软件。 WINE系统特别容易遭受病毒的攻击,因为它们会使无论是对UNIX的还是对 Windows的病毒、蠕虫和木马都能对系统产生威胁。
威胁的本质
你不应该为Linux/UNIX平台上的病毒和Windows操作系统上的病毒工作方式不同而感到奇怪。不过,UNIX中病毒、蠕虫和木马工作的原理和Windows中的还是大同小异的。
病毒只不过是一个能不经过你的同意而感染和摧毁其他程序的程序。蠕虫是一个不经过你的同意而自我复制的代码块。尽管计算机程序中的bug也可能在未经你允许的情况下进行自我复制,它们还是有很大区别的。区别就在于bug的自我复制是无意识的,而病毒的自我复制却是有意识的。木马程序隐藏了它们进行数字破坏的企图。在一个UNIX环境下,木马可能被命名为一个合法的程序(例如tar或者df),可是它却能移除整个文件系统。
这些病毒和蠕虫如何工作
为了给你一个由UNIX病毒、蠕虫和木马产生的重大破坏过程的认识,我带你走进两个假想的环境来揭示它们是如何工作的。每个病毒、蠕虫和木马都有它们自己的特性和行为,当然,这些例子只能给你一个对它们怎样在Linux/UNIX里发作的认识。
让我们从Linux.Slapper worm. Slapper怎样侵袭一个Apache服务器开始。它通过HTTP的80端口连接到服务器,然后发送有效的GET请求,以发现正在使用的Apache服务器的版本,从而为详细的目标系统做一个自我定义。当找到了一个合适的易攻击的系统之后,它又连接到443端口,利用一个缓冲区溢出漏洞来采用合适的蠕虫包替换目标系统。
接着,蠕虫会利用一个本地编译器,例如gcc来编译自己。二进制结果跟着从/tmp目录开始扩散,监听UDP端口,以接受更长远的分布式拒绝服务(DDoS )攻击的指示。最后,DDoS攻击制造TCP洪流令系统瘫痪。某些Slapper病毒的变异体还会扫描整个B类网络寻找易攻击的Apache服务器。
另一种蠕虫,Linux Lion worm,扫描任意的B类网络里的53端口,从而找出易受攻击版本的BIND----最流行的Linux/UNIX DNS服务器。当Linux Lion worm找到一个易受攻击版本的BIND之后,它清除日志文件,接着种植各种木马文件以隐藏它的企图。Linux Lion worm可能安装的木马文件有:
/bin/in.telnetd
/bin/mjy
/bin/ps
/bin/netstat
/bin/ls
/etc/inetd.conf
/sbin/ifconfig
/usr/bin/find
/usr/sbin/nscd
/usr/sbin/in.fingerd
/usr/bin/top
/usr/bin/du
你可以看到,这些文件看起来是合法的UNIX文件,因此你可能怀疑你的第一眼所见,但这就是木马的关键所在。
要掩盖它的足迹, Linux Lion可能会删除以下文件:
/.bash_history
/etc/hosts.deny
/root/.bash_history
/var/log/messages
/var/log/maillog
一旦已经对系统构成威胁,Lion会把密码文件发送给远程的计算机,其他Lion 的变种可以通过嗅探器来嗅探活动连接中的密码信息。通过获得系统访问权限,病毒黑客们能利用远程系统进行DDoS攻击,窃取信用卡号,或者窃取和破坏机密文件、纪录。
Linux/UNIX的防毒产品
自从Linux成为最流行的UNIX平台之一以后,大多数为UNIX系统所编写的病毒瞄准了Linux平台。然而,一些厂商同样有一些非主流UNIX平台的软件包。如果你的单位正在使用Solaris、FreeBSD,或者其他版本的UNIX,不要期待找到很多防毒的选择。明显的,Linux/UNIX平台上的防毒软件正在蔓延,在教育,只有一部分厂商提供了Linux/UNIX 平台的软件产品。
一些UNIX防毒产品被特别的设计安装在防火墙之上,因此你可以在UNIX病毒侵害其他系统之前将其拦截在防火墙上。另外的一些UNIX防毒产品被特别的设计在消息和群件服务器上。
保护你的系统不受自动化的黑客行为所侵害
病毒、蠕虫和木马基本上意味着自动化的黑客行为,也许被病毒攻击比被黑客攻击更可能发生。直接的黑客攻击目标一般是服务器,而病毒是等机会的麻烦制造者。如果你的网络包含了Linux或UNIX系统,特别危险的是服务器,不要在作出反应之前等待寻找UNIX病毒、蠕虫和木马是否存在。做一些调查然后选择一个适合你系统的防毒产品,它们能帮你防止病毒的传播。