Anonim

Rootkit可以被称为技术上最复杂的恶意代码形式(恶意软件),也是最难发现和消除的形式之一。 在所有类型的恶意软件中,病毒和蠕虫可能得到最广泛的宣传,因为它们普遍存在。 众所周知,许多人都受到病毒或蠕虫的影响,但这绝对不意味着病毒和蠕虫是最具破坏性的各种恶意软件。 恶意软件存在更多危险类型,因为通常它们以隐身模式运行,难以检测和删除,并且很长一段时间都不会被注意到,可以静默获得访问权限,窃取数据并修改受害者计算机上的文件。 。


Rootkits是这种隐性敌人的一个例子,Rootkits是一组工具的集合,这些工具可以替换或更改可执行程序,甚至是操作系统本身的内核,以便获得管理员级别的对系统的访问权限,该权限可用于安装间谍软件,键盘记录程序和其他恶意工具。 本质上,rootkit允许攻击者获得对受害计算机的完全访问权限(可能还可以访问该计算机所属的整个网络)。 Rootkit导致重大损失/损坏的已知用途之一是盗窃了Valve的Half-Life 2:源游戏引擎的源代码。


Rootkit并不是什么新鲜事物,它们已经存在了很多年,并且已经影响了各种操作系统(Windows,UNIX,Linux,Solaris等)。 如果不是因为一两次大规模的Rootkit事件(请参阅“著名示例”)而引起了公众的注意,那么除了一小撮安全专业人员之外,他们可能再次逃脱了警觉。 到目前为止,rootkit尚未像其他形式的恶意软件那样广泛传播,因此尚未发挥其全部破坏潜力。 但是,这可能不太舒服。


Rootkit机制暴露

与特洛伊木马,病毒和蠕虫类似,Rootkit通过利用网络安全和操作系统中的漏洞进行安装,通常无需用户干预。 尽管有些rootkit可以作为电子邮件附件提供,也可以与合法软件程序捆绑在一起提供,但在用户打开附件或安装程序之前,它们无害。 但是与不太复杂的恶意软件形式不同,rootkit会非常深入地渗透到操作系统中,并做出了特殊的努力来掩饰其存在-例如,通过修改系统文件。

基本上,有两种类型的rootkit:内核级rootkit和应用程序级rootkit。 内核级rootkit向操作系统的内核添加代码或修改内核。 这可以通过安装设备驱动程序或可加载模块来实现,该设备驱动程序或可加载模块会更改系统调用以隐藏攻击者的身影。 因此,如果您查看日志文件,则系统上将不会看到可疑活动。 应用程序级rootkit不太复杂,通常更易于检测,因为它们修改了应用程序的可执行文件,而不是操作系统本身。 由于Windows 2000将可执行文件的每次更改都报告给用户,因此使攻击者更容易被忽视。


为什么Rootkit构成风险

Rootkit可以充当后门,通常在执行任务时并不孤单-它们通常伴随间谍软件,特洛伊木马或病毒。 Rootkit的目的可以从渗透他人计算机(并隐藏外国存在的痕迹)的简单恶意乐趣到构建用于非法获取机密数据(信用卡号或源代码)的整个系统,例如Half -生活2)。

通常,应用程序级rootkit的危险性较小,更易于检测。 但是,如果您用来跟踪财务状况的程序被rootkit“修补”,则金钱损失可能会非常可观-即攻击者可以使用您的信用卡数据购买几件商品,如果您不这样做, t在适当的时候注意到您的信用卡余额中有可疑活动,很可能您再也看不到钱了。


与内核级rootkit相比,应用程序级rootkit看起来甜美无害。 为什么? 因为从理论上讲,内核级别的rootkit为系统打开了所有大门。 一旦门打开,其他形式的恶意软件便可以进入系统。 拥有内核级别的rootkit感染并且无法轻松检测(或完全删除,如下所述),这意味着其他人可以完全控制您的计算机,并且可以随意使用它-例如,对其他计算机发起攻击,给人的印象是该攻击源自您的计算机,而不是其他位置。


检测和删除Rootkit

并不是说其他​​类型的恶意软件易于检测和删除,而是内核级rootkit是一个特别的灾难。 从某种意义上讲,它是Catch 22-如果您有rootkit,则很可能会修改anti-rootkit软件所需的系统文件,因此无法信任检查结果。 而且,如果rootkit正在运行,它可以成功修改防病毒程序所依赖的文件列表或正在运行的进程的列表,从而提供虚假数据。 而且,运行中的rootkit可以简单地从内存中卸载防病毒程序进程,从而导致应用程序关闭或意外终止。 但是,通过这样做,它间接显示了它的存在,因此当出现问题时,尤其是维护系统安全的软件,人们可能会感到怀疑。

建议的检测rootkit的方法是从已知为干净的备用媒体(即备份媒体或应急CD-ROM)启动,然后检查可疑系统。 这种方法的优点是rootkit将不会运行(因此它将无法隐藏自身),并且不会主动篡改系统文件。


有多种方法可以检测和(尝试)删除rootkit。 一种方法是使原始系统文件的MD5指纹干净,以比较当前系统文件的指纹。 这种方法不是很可靠,但是总比没有好。 使用内核调试器更可靠,但是需要深入了解操作系统。 即使是大多数系统管理员也很少采用它,尤其是当有免费的好程序可以检测Rootkit时,例如Marc Russinovich的RootkitRevealer。 如果您访问他的网站,则会找到有关如何使用该程序的详细说明。


如果您在计算机上检测到Rootkit,下一步就是摆脱它(说起来容易做起来难)。 对于某些rootkit,除非您也要删除整个操作系统,否则无法删除它! 当涉及到重要的系统文件时,最明显的解决方案-删除受感染的文件(前提是您知道确切隐藏了哪些文件)绝对不适用。 如果删除这些文件,很可能您将永远无法再次启动Windows。 您可以尝试一些Rootkit清除应用程序,例如UnHackMe或F-Secure BlackLight Beta,但不要指望它们太多以至于无法安全地清除有害生物。

这听起来像是休克疗法,但是删除rootkit的唯一行之有效的方法是格式化硬盘驱动器,然后再次重新安装操作系统(当然是从干净的安装介质中!)。 如果您有从哪里获得rootkit的线索(它是捆绑在另一个程序中,还是有人通过电子邮件将其发送给您?),甚至不要考虑再次运行或重新感染源!


Rootkit的著名例子

Rootkit多年来一直被秘密使用,但直到去年它们才出现在新闻头条上。 带有数字版权管理(DRM)技术的Sony-BMG案例通过在用户的计算机上安装rootkit来保护未经授权的CD复制,引起了强烈的批评。 有诉讼和刑事调查。 根据案件和解,Sony-BMG必须从商店取出CD,并用干净的CD替换购买的CD。 索尼-BMG被指控秘密隐藏系统文件,以试图隐藏复制保护程序的存在,该程序也曾用于向索尼网站发送私人数据。 如果用户卸载了该程序,则CD驱动器将无法使用。 实际上,此版权保护程序侵犯了所有隐私权,采用了这种恶意软件所特有的非法技术,最重要的是,使受害者的计算机容易受到各种攻击。 对于大型公司(例如Sony-BMG)来说,通常首先要声明傲慢的态度,即如果大多数人都不知道Rootkit是什么,以及为什么他们会关心自己拥有Rootkit,这是典型的做法。 好吧,如果没有像马克·鲁西诺维奇这样的人,他是第一个对索尼Rootkit敲响警钟的家伙,那把戏本来可以奏效,数百万台计算机也将被感染,这在所谓的对公司知识分子的辩护中是一项全球性的罪行。属性!

与Sony的情况类似,但是在不需要连接到Internet的情况下,Norton SystemWorks就是这种情况。 确实不能从道德或技术角度比较这两种情况,因为尽管诺顿的rootkit(或类似rootkit的技术)修改Windows系统文件以适应Norton Protected Recycle Bin,但几乎不会指责Norton有恶意意图限制用户的权利或从rootkit中受益(与Sony一样)。 伪装的目的是向所有人(用户,管理员等)和所有内容(其他程序,Windows本身)隐藏用户已删除文件的备份目录,以后可以从此备份目录中还原该文件。 受保护的回收站的功能是为快速删除的手指添加一个安全网,该手指首先删除然后再考虑是否删除了正确的文件,从而提供了另一种还原从回收站中删除的文件的方法(或绕过回收站的内容)。

这两个例子并不是最严重的rootkit活动案例,但是值得一提的是,因为通过关注这些特殊案例,公众对整个rootkit产生了兴趣。 希望现在有更多的人不仅知道什么是rootkit,而且还要关心是否有rootkit,并能够检测并删除它们!

什么是rootkit?