|
 | | skykey | 等级:轻骑兵 管理等级:认证用户 贡献积分:59 帖子水平:偶有精华 虚拟学会:无门无派 |
| 〖删除〗〖版主编辑〗〖转移帖子〗〖顶〗〖精〗[回复][短消息][编辑] | | 木马越来越隐蔽了。 | 去年11月在博客里写的,没想到担心真成了事实,现在驱动级的木马满天飞。
最近发现越来越多的病毒开始使用Rootkit技术隐藏自身,有的病毒还会在运行后“自杀”,通过程序关联以及rootkit技术将自己更深地隐藏在系统中,使得普通电脑用户根本感觉不到病毒的存在。上周典型病毒“阿纳科”变种b病毒和“魔兽”变种aql均具有隐藏特征。“阿纳科”变种b可以隐藏病毒主进程,隐藏病毒在硬盘中的文件以及隐藏病毒注册表启动项等功能,一旦用户感染很难将其彻底清除,大大加剧电脑用户的网络安全威胁。 “魔兽”变种aql木马安装程序执行完毕后即“自杀”,同时会在后台秘密监视用户打开的窗口标题,盗取网络游戏《魔兽世界》玩家的游戏帐号、游戏密码、游戏区服等信息。
注:驱动高手如果真的要编写一个木马的话,那么基本清除的可能性为零。
Rootkit木马 Rootkit木马就是信息世界里的AIDS,一旦感染,就难以用一般手段消灭了,因为它和自然界里的同类做的事情一样,破坏了系统自身检测的完整性—— 抛开术语的描述也许难以理解,但是可以配合AIDS的图片想象一下,由于AIDS破坏了人体免疫系统,导致白细胞对它无能为力,只能眼睁睁看着人体机能被慢慢破坏。计算机系统没有免疫功能,但是它提供了对自身环境的相关检测功能——枚举进程、文件列表、级别权限保护等,大部分杀毒软件和进程工具都依赖于系统自带的检测功能才得以运作,而Rootkit木马要破坏的,正是这些功能。要了解Rootkit木马的原理,就必须从系统原理说起,我们知道,操作系统是由内核(Kernel)和外壳(Shell)两部分组成的,内核负责一切实际的工作,包括CPU任务调度、内存分配管理、设备管理、文件操作等,外壳是基于内核提供的交互功能而存在的界面,它负责指令传递和解释。由于内核和外壳负责的任务不同,它们的处理环境也不同,因此处理器提供了多个不同的处理环境,把它们称为运行级别(Ring),Ring让程序指令能访问的计算机资源依次逐级递减,目的在于保护计算机遭受意外损害——内核运行于Ring 0级别,拥有最完全最底层的管理功能,而到了外壳部分,它只能拥有Ring 3级别,这个级别能操作的功能极少,几乎所有指令都需要传递给内核来决定能否执行,一旦发现有可能对系统造成破坏的指令传递(例如超越指定范围的内存读写),内核便返回一个“非法越权”标志,发送这个指令的程序就有可能被终止运行,这就是大部分常见的“非法”的由来,这样做的目的是为了保护计算机免遭破坏,如果外壳和内核的运行级别一样,用户一个不经意的点击都有可能破坏整个系统。由于Ring的存在,除了由系统内核加载的程序以外,由外壳调用执行的一般程序都只能运行在Ring 3级别,也就是说,它们的操作指令全部依赖于内核授权的功能,一般的进程查看工具和杀毒软件也不例外,由于这层机制的存在,我们能看到的进程其实是内核“ 看到”并通过相关接口指令(还记得API吗?)反馈到应用程序的,这样就不可避免的存在一条数据通道,虽然在一般情况下它是难以被篡改的,但是不能避免意外的发生,Rootkit正是“制造”这种意外的程序。简单的说,Rootkit实质是一种“越权执行”的应用程序,它设法让自己达到和内核一样的运行级别,甚至进入内核空间,这样它就拥有了和内核一样的访问权限,因而可以对内核指令进行修改,最常见的是修改内核枚举进程的API,让它们返回的数据始终“ 遗漏”Rootkit自身进程的信息,一般的进程工具自然就“看”不到Rootkit了。更高级的Rootkit还篡改更多API,这样,用户就看不到进程(进程API被拦截),看不到文件(文件读写API被拦截),看不到被打开的端口(网络组件Sock API被拦截),更拦截不到相关的网络数据包(网络组件NDIS API被拦截)了,幸好网络设备的数据指示不受内核控制,否则恐怕Rootkit要让它也不会亮了才好!我们使用的变得是在内核功能支持下运作的,如果内核变得不可信任了,依赖它运行的程序还能信任吗?(图6.普通应用级别的木马后门和Rootkit木马的对比)但即使是Rootkit这一类恐怖的寄生虫,它们也并非所向无敌的,要知道,既然Rootkit是利用内核和Ring 0配合的欺骗,那么我们同样也能使用可以“越权”的检查程序,绕过API提供的数据,直接从内核领域里读取进程列表,因为所有进程在这里都不可能把自己隐藏,除非它已经不想运行了。也就是说,内核始终拥有最真实的进程列表和主宰权,只要能读取这个原始的进程列表,再和进程API枚举的进程列表对比,便能发现Rootkit进程,由于这类工具也“越权”了,因而对Rootkit进行查杀也就不再是难事,而Rootkit进程一旦被清除,它隐藏自身的措施也就不复存在,内核就能把它“供”出来了,用户会突然发现那个一直“找不到”的Rootkit程序文件已经老实的呆在文件管理器的视图里了。推荐工具,狙剑。 | 最初发表时间:2008-7-16 |  | | 未填 |
|
 | | 瀚海蓝月 | (痛并快乐着) 等级:黄金长老 管理等级:站长 贡献积分:2275 帖子水平:研究水准 虚拟学会:紫禁之颠 |
| 〖删除〗[回复][联系作者][编辑] | | RE: | | 随着人们水平的提高,进入底层肯定将来是不争的事实,也是中国软件业技术水平提高的一个副产品吧~ | 最初发表时间:2008-7-17 |  | | 永远不要嫌弃你的父母行动迟缓,因为你永远想象不出你小的时候他们是如何耐心地教你走路;<br>永远不要嫌弃你的父母学不会电脑,因为你永远不会知道在你小的时候他们是如何不厌其烦地教你认字。 |
|
 | | skykey | 等级:骑兵 管理等级:认证用户 贡献积分:65 帖子水平:偶有精华 虚拟学会:无门无派 |
| 〖删除〗[回复][联系作者][编辑] | | RE: | | 通常,我帮别人杀毒的时候,都要在 我的电脑-右键-属性-硬件-设备管理器-查看-显示隐藏的设备-非即插即用驱动程序-通常在那里可以看到木马的影子,当然还有杀毒软件的。 | 最初发表时间:2008-7-17 |  | | 未填 |
|