Autoruns 使用方法

SECTION 1,查找木马篇 
理论: 
以我的经验,查看自动运行的文件的公司签名是一个很可靠的方法,一般来说Microsoft/Adobe/RealTek/Macromedia/Symantec/NVIDIA/Corel等大公司不会制作木马,而且做木马的人也不敢轻易假冒这些大公司的签名。 

实践: 
在Autoruns中打开 Options/Verify Code Signature 选项,从Everyone 标签页就可以看到自动运行的文件的Publisher和是否通过签名验证。如果显示 (Verified)和信誉良好的大公司,则这个可以确认为不是木马。其他的则很可能是木马。当然你也可以对照自己安装的软件来进行一些推测,或者来BBS上询问。 

SECTION2,清除木马 

理论: 
一般来说木马防止自己被清除一般通过3种办法: 
1,打开一个Handle; 
2,另启动一个进程来监视; 
3,进程插入。 

前两种相对简单,第3种比较麻烦一些。不过这些小伎俩在强大的Process Explorer面前就不值一提了。 

实践: 

10: 打开Process Explorer; 
20: 选中Options/Verify Image Signature; 
30: View/Select Columns/Process Image/ Verified Signer; 
40: 查找没有通过验证的东东; 
50: 选中没有通过验证的一个进程点右键/Suspent Process; 
60: 循环反复执行40-50把所有的未验证进程都Suspend; 
70: 按照 “SECTION 1”中的描述从Autoruns中未通过验证的文件; 
80: Find/Find Dll and Handle 查找这个文件; 
90: 把找到的进程给Suspend,但是注意不要Suspend Explorer.exe; 
100: 反复执行 70-90直到他们都被Suspend; 
110: 按照 “SECTION 1”中的描述从Autoruns中未通过验证的文件,点右键选择Properities 
, 更改安全性成 everyone都不可以读取或运行; 
120: 重复110直到按F5刷新的时候Autoruns显示找不到文件; 
130: 重新启动计算机; 
140: 重复 10 -130直到所有的木马都被设置成任何人都不能访问。 

这样处理过以后,就同时具备了这些病毒的免疫能力。 

SECTION3,木马免疫 
再如上述方法清除木马以后,在Autoruns中把找不到文件的项目删除,并点右键Jump To然后把这个键的父键设置安全性为everyone 只读。这样处理过的Windows就基本可以自己对抗大多数病毒,但是某些软件可能因此不能正常安装,因此做这些操作的时候需要做一个笔记,以在需要的时候恢复过来。 

一、为什么流氓软件总是删不掉? 

    经常有网友发贴子说文件删除不掉,或者流氓软件清除不了,或者删除了相关的文件,但是马上它又出现了。现在流氓软件为了保护自己,采取的手段是五花八门,无所不用其极:进程保护,交叉感染,自启动,自我恢复,文件隐藏,进程注入,驱动保护 
到目前为止,所有流氓软件最终极、最有效的保护办法还是底层驱动级的保护,一般就是在drivers目录下增加一个或多个.sys文件(我也见过一个用rundll32来运行一个.dll作为驱动的),但本质上这个都会在Windows的HKLM\SYSTEM\CurrentControlSet\Services\下建一个相关的值,如CNNIC建立的就是HKLM\SYSTEM\CurrentControlSet\Services\cdnprot,并且将启动级别做得很高,在安全模式下也会自动启动。这个底层的驱动过滤所有的文件以及注册表操作,如果发现是对流氓软件自己的文件/注册表操作,就会直接返回一个true,如果发觉文件被删除,就会通过备份或者网络来下载恢复。它们的保护措施已经做到这一级,普通用户根本没有办法删除相关的文件,一般都需要重启到DOS系统下去删除文件。 

    这也是很多网友提的为什么文件删除不掉,或者删除了,重启之后,一会儿又出现了,阴魂不散的原因。下面我们的要做的,就是找出来这些流氓软件的后台的驱动保护。 

二、为什么找出驱动保护很困难? 

    Windows的驱动文件一般位于system32\drivers目录下,以.sys文件方式存在,通过注册表的HKLM\SYSTEM\CurrentControlSet\Services\的方式来启动,有一部分属于服务的,可以在Windows的服务的MMC控制窗口里看到。但如果是驱动,则在这里看不到。Windows正式情况下,那个drivers目录下有200个左右的文件,如果偷偷往这个下面塞一个.sys文件,是很难发现的。象著名的3721这类cnsminkp.sys,CNNIC的cdnprot.sys比较容易认识,但现在的很多软件的名字都是不固定的,或者是随机生成的,这样的辨识的难度就很大。我曾经用过的方式有: 

  1、通过保存文件列表,时常自己手工比较这两个文件,看前后差别多出来的文件肯定有问题 

  2、通过文件生成的日期。(这点流氓软件也想到了,日期也只能作为参考) 

  3、通过文件的属性里在的公司信息。早年还行,现在越来越多的流氓软件的驱动冒充是M$的,有的连英文单词都写错了。唉。。。 

  4、通过文件夹监视工具。 

  上面这四种都有一定的缺陷,只能作为参考,都不是太好。并且现在有一些软件通过文件系统隐藏,这些驱动文件,通过资源管理器,根本连看都看不到。 
     

三、如何找出可疑驱动来? 
    介绍:autoruns是著名的sysinternals出品的一款小软件,它的主要功能是列出系统自启动的项目。通过它,你可以轻易查看到所有系统可能启动的地方,非常的全面。跟流氓软件相关的是“Services(服务)",“LSA Providers(LSA提供者)”、"Winsock Providers(Winsock提供者)",“Drivers(驱动)“。下面重点介绍Drivers这一部分的功能。 

    运行autoruns之后,在它的“Options(选项)”菜单中有两项“Verifiy Code Signatures(验证代码签名)“Hide Signed Microsoft Entries(隐藏已签名的微软项)“,把这两项都选中了。验证代码签名是指验证所有dirvers下的.sys文件的文件签名。Windows下的硬件有一个签名的功能,它是为了保证所有的驱动文件是经过M$测试,符合HAL兼容性。隐藏已签名的微软项,就是把那些合法的隐藏起来。不然200多个,会看着发晕的。 

    这样autoruns就会检查所有已经注册成为驱动的项,并且检查所有的.sys的文件数字签名。所有假冒的或者没有通过代码签名的项,都会在这里列出来。也就可以很容易判断这个驱动是不是有问题了。如果有问题的话,可能通过冰刀文件把里面相关的注册表键值删除,重启机器,这样驱动保护就失效了,然后可以通过文件删除工具来删除其它的文件,完成最后的清理工作。 

四、总结 
    最后再总结一下: 
  1、流氓软件删除不掉或者死灰复燃,很多时候是因为有驱动或服务保护 
  2、通过autoruns找到这些可疑的驱动 
  3、通过冰刀删除相关驱动健值或者直接用文件粉碎器删除相关的.sys文件,重启驱动就无效 
  4、清理其它文件,完成善后工作。 

  以上方法通过各种测试是证明有效的,但不排除将来有更进一步的隐藏手段来躲避autoruns的检查。但原理是一样的。不过是通过程序来减少工作量。

你可能感兴趣的:(职场,休闲,autoruns)