不久以前,很多系统管理员还信誓旦旦的表示,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 病毒、蠕虫和木马是否存在。做一些调查然后选择一个适合你系统的防毒产品,它们能帮你防止病毒的传播。
原文出处:eNet