扫一扫
关注微信公众号

迎战Rootkit造成的安全威胁
2007-06-06   赛迪网

Rootkit可以说是最新的安全威胁之一。任何听说过它的人都知道它臭名昭著:无法删除,在一台计算机内部存在数年而不被发现,而且可通过操作系统发动攻击。

Rootkits:隐藏的安全威胁

什么是Rootkit呢?根据www.whatis.com的观点,一个Rootkit就是一个允许以管理员身份访问计算机或计算机网络的工具的集合(a Rootkit is “a collection oftools that enable administrator-level access to a computeror a computer network.”)。根据安全专家Greg HogLund的观点,Rootkit是一个设计出来在一个系统中隐藏自身和/或其它过程数据/活动的工具。虽然名声不好,Rootkit实际上却可以拥有十分重要的应用,如管理许可证或隐藏一些管理员不想让其他人看见的文件等。Rootkit的问题在于那些隐藏一些东西并为远程用户提供访问服务的程序,它们可被滥用引起各种安全问题。如今Rootkit可被用来危及计算机的安全,因此计算机用户必须清楚这些Rootkit。Rootkit基本上可作为间谍软件、特洛伊木马、钓鱼软件和其它有害程序的一个基础平台。关于Rootkit的好话我们就不多说了,先重点谈谈Rootkit被用来犯罪的工具问题。

计算机犯罪的理想工具

因为众所周知的经济方面上的原因,近年来Rootkit已经成为一个日益严重的问题。Rootkit的力量在于它允许远程用户控制受害人的系统。一旦它在你的系统上制造或发现一个后门,就可以收集各种各样的个人信息,如信用卡号等。

Rootkit常被用来利用间谍软件和键盘记录程序进行犯罪活动。Rootkit还可以作为蠕虫和病毒的快速启动的跳板。实际上,一些蠕虫就包含Rootkit,这些Rootkit安装在被感染蠕虫的计算机上,从而通过网络进一步扩散。Rootkit的最大危险在于它们可以给远程用户一种能够对系统实施“外壳访问”(shell access)的权限,也就是说黑客可以完全地控制目标系统。如此一来,Rootkit就可以拥有一种几乎无限的破坏潜力。

Rootkit阴险地潜入

Rootkit可存在于内核、库、和应用程序的层次上。内核级的Rootkit特别危险,是人们注意的中心,因为它们十分地难于检测。Rootkit的一个真正狡猾的特点就是:有一些类型的Rootkit可以将其自身与操作系统紧密地绑定,实际上,几乎不可能检测它们。其结果是,Rootkit可以以这种方式取代操作系统,如此一来,用户就不能相信操作系统传给用户的信息。

传统的反间谍软件和反病毒程序在这种情况下是无能为力的,因为它们依靠操作系统自身来寻求状态信息,而操作系统却已被控制。虽然一些Rootkit实际上相当阴险,不过,事实上许多Rootkit可通过关机,然后从另一个干净的磁盘重新启动来检测到。毕竟一个非活动的Rootkit是无法隐藏自己的。

感染了Rootkit怎么办?

有一种观点认为,在感染之前(或者没有被安装Rootkit)),只需备份系统,然后重新格式化磁盘再恢复系统是个好办法。无可否认,这是针对此问题的一个极端的方法。现在有多种免费的或开源的Rootkit检测工具来解决问题,不过这并非是真正的安全之道。用户应谨慎地选择这种软件。特别是免费的Rootkit检测工具并不能像商业软件那样及时更新,而此Rootkit的发展步伐又是如此之快,因此我们还要寻求其它的方法。

因为Rootkit经常被用作间谍软件的平台,配置最好的可以解决Rootkit问题的商业软件或硬件厂商通常是那些有着丰富的间谍软件检测和清除经验的公司。一个Rootkit的检测和清除程序使用多维向量来确认问题。这种程序还应该有最新的被确认的Rootkit的列表,从而确保那些新出现的Rootkit不会成为漏网之鱼。这也就是用户及时更新其签名文件的重要原因。

记住下面一点也是很重要的:并非所有的Rootkit都是恶意的。用户并不想要一个Rootkit检测程序只是检测那些它所能够发现的恶意的Rootkit。一个良好的Rootkit检测程序还应该分辨善意和恶意的Rootkit,并能让管理员禁用或启用这些Rootkit程序。

检测和清除Rootkit的策略

从一定意义上讲,Rootkit是难于清除的,特别是对于那些处于操作系统级的Rootkit来说。不过,这又依赖于Rootkit的执行、实施方法。用户可以在操作系统内核级上安装工具软件,也可以在用户模式水平上放置一些工具。总的来说,Rootkit的目的地是对用户隐藏信息、过程和文件,因此无论是检测还是清除都是相当困难的、复杂的。一般说来,删除比检测更难于实施,因为你要确保操作系统在清除Rootkit后还能正常工作。当今的大多数Rootkit都是可以从系统中安全地清除的,但今后一、两年内,清除Rootkit可能会是一个相当重大的挑战。

那么检测和清除Rootkit的最困难的方面是什么呢?我们说过,Rootkit就是来隐藏信息的。这样你就再也不能真正的相信操作系统本身。一旦你的机器感染了恶意的Rootkit,那么操作系统所告诉你的任何东西都不再是真正可信的信息。因此,从操作系统中清除一个Rootkit的首要一步就是引入能够理解操作系统最低级信息的技术。例如,磁盘如何被格式化。因此对操作系统之下的技术所掌握的能力能够使你确认任何可认为是Rootkit的蛛丝马迹。换句话说,对一个操作系统的更高深的知识和能力是非常关键的。

科学的检测技术应位于操作系统之下,我们可以将操作系统在机器上所看到的与检测软件在操作系统最低层上所看到的相比较。如果二者匹配,操作系统极有可能是干净的、安全的,但如果二者有差异,那你就应该好好看一下了,因为这有可能是一个潜在的Rootkit感染的迹象。

用户可以采取以下几方面的步骤来减少总体的暴露程度和被Rootkit感染的风险:

1.通过尽快地确保计算机打上最新的补丁来保证系统的健康,特别是如果你采用微软的操作系统的话。不过,这条忠告适用于任何其它的操作系统或应用程序。

2.建议用户以非超级用户的身份登录。说来容易做来难。不过,事实是:如果你减少登录用户的权限,你就是在大大地减少被Rootkit感染的风险。

3.总是同时地、及时地更新你的反间谍软件和反病毒软件。

笔者还要建议此文的阅读者:一定要小心所谓的免费下载!一些所谓的免费下载并不是真得免费。因为你是要付出代价的。很多所谓的“免费”下载可能会包含恶意软件或Rootkit,用户完全应该采取预防措施以防止这种事情的发生。尽量从可信任的站点下载,因为它们可为用户提供一定的安全保障,但并非绝对。

热词搜索:

上一篇:Windows 2003网站的安全配置
下一篇:抵御来自Sniffer的嗅探攻击

分享到: 收藏