|
| |
精品推荐 |
 |
|
| |
|
|
|
|
Windows注册表修改实例完全手册(下)
|
日期:2007年4月11日 作者: 查看:[大字体
中字体 小字体]
|
在Windows环境下,由于病毒必须获得CPU的控制权,因此很多病毒都需要在Windows启动后,自动地运行起来。另一方面,越来越多的病毒采用了高级语言的形式,象宏病毒,采用的是VB语言,本身不能直接由CPU来执行,必须由相关程序解释执行,因此它们必须在操作系统正常启动后,才能加载自身,进行病毒传播。因此说,很多病毒必须在Windows启动后自动地运行起来,并且是依赖于Windows的自动启动程序的功能。这是这些病毒的一个特点,也是一大弱点。我们可以根据这个特点,分析Windows启动时有那些程序自动运行,通过检查这些程序来防范病毒的侵袭。
(1)注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
该项下存放了Windows NT/2000/XP的服务程序。下面的每一个子项对应于一个服务:
ImagePath值项存放了该服务的程序文件路径。这些服务都有一个Start值项。值为0,表示由核心装载器装载;值为1,表示由I/O子系统装载。Start值为0和1的,都是非常低级和关键的Windows服务,它们必须正常启动,Windows NT/2000/XP才能继续启动。通常病毒不会将自己放在这里面,因为这时候WindowsNT/2000/XP只装载了核心部分,只有最基本的功能。Start值为2,表示自动启动,值为3,表示手工启动,值为4,表示禁止启动。这三类服务,可以在"控制面板"→"管理工具"→"服务"中查看到。
我们需要检查的是,那些Start值为2的服务,其对应的程序文件(ImagePath值项定义)是否可疑。
(2)注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\Session Manager
该项下存放了会话管理器(Smss.exe)的信息。在Windows NT/2000/XP的内核启动阶段,需要启动该项下定义的几个程序。在REG_MULTI_SZ类型的值项BootExecute中,定义了会话管理器装载服务前需要运行的程序。默认值为AutoCheck autochk *和Dfsinit。该默认值表示运行磁盘检查程序,以及启动DFS文件系统的初始化程序。
我们需要检查的是,值项BootExecute存放的是否是默认的执行文件,是否还定义了其他的执行程序。
(3)注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon\Userinit
该值项类型为字符串值,定义了用户注册进入时执行的初始化程序。在用户注册时,注册管理程序(Winlogon)启动该初始化程序,默认值是Userinit.exe。该程序首先运行注册脚本,建立网络连接,然后启动用户界面程序(Explorer.exe)。用户可以替换该初始化程序为自己的初始化程序(当然,病毒也可以做到)。一般地,用户自己的初始化程序可以在处理完自己需要进行的工作后,再调用Userinit.exe程序即可。
我们需要检查的是,Userinit值项的值是否是Userinit.exe。同时检查\Winnt\System32下的Userinit.exe文件的大小和时间是否是正常的。
(4)注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon\Shell
该值项类型为字符串值,定义了用户界面程序,默认值为Explorer.exe。正常情况下,注册管理程序(Winlogon)启动Userinit定义的初始化程序,该初始化程序会启动用户界面程序,因此不需要运行Shell值项定义的程序。如果注册管理程序没有能成功启动Userinit定义的初始化程序,则注册管理程序会过来启动该Shell值项定义的用户界面程序。
我们需要检查的是, Shell值项的值是否是Explorer.exe。
(5)注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon\System(适用于Windows NT)
该值项类型为字符串值,该值项中存放了安全管理器程序,默认值为Lsass.exe。安全管理器就是Windows NT启动时,或者屏幕保护后,要求输入用户和密码的画面。用户可以替换该安全管理器程序。
我们需要检查的是System值项的值是否是Lsass.exe。
(6)注册表项HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\ CurrentVersion\Policies\Explorer\Run
在该项下可以有若干个字符串类型的值项,每个值项的名称从1开始,值为程序或者文档的名称。在用户注册进入Windows时,该项下定义的程序将被启动起来。例如该项下有两个值项,第一个是1,值为Notepad.exe,第二个是2,值为C:\readme.doc,则在用户注册进入Windows 2000时,系统会首先运行起Notepad.exe程序,然后会使用DOC的关联程序打开C:\readme.doc文档。
我们需要检查的是,如果定义了自动启动程序,则查找该程序是哪个软件对应的,是否为可疑程序。默认情况下,该注册表项下应该为空。
(7)注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ Policies\Explorer\Run
上一篇:从DLL文件入手 提升Windows运行效率
下一篇:操作系统中毒后初级自救法
|
| Windows注册表修改实例完全手册(下) 相关文章: |
|
|
|
| Windows注册表修改实例完全手册(下) 相关软件: |
|
|
|
|