启动项
启动项目就是开机的时候系统会在前台或者后台运行的程序。当Windows(操作系统)完成登录过程,进程表中出现了很多的进程。Windows在启动的时候,自动加载了很多程序。许多程序的自启动,给我们带来了很多方便,这是不争的事实,但不是每个自启动的程序对我们都有用;更甚者,也许有病毒或木马在自启动行列。其实Windows2000/XP中的自启动文件,除了从以前系统中遗留下来的Autoexec.bat文件中加载外,按照两个文件夹和9个核心注册表子键来自动加载程序的。
经典的启动——“启动”文件夹
单击“开始→程序”,你会发现一个“启动”菜单,这就是最经典的Windows启动位置,右击“启动”菜单选择“打开”即可将其打开,如所示,其中的程序和快捷方式都会在系统启动时自动运行。最常见的启动位置如下:
当前用户:
所有用户:
有名的启动——注册表启动项
注册表是启动程序藏身之处最多的地方,主要有以下几项:
1,Run键
Run键是病毒最青睐的自启动之所,该键位置是[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]和[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run],其下的所有程序在每次启动登录时都会按顺序自动执行。HKEY_CURRENT_USER下面的Run键紧接HKEY_LOCAL_MACHINE下面的Run键运行,实验:在run项建值项(名字随便),然后赋值(值为程序的路径,字符串型),但两者都在处理“启动”文件夹之前。
还有两个不被注意的Run键,位于注册表[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run]和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run],实验:在Explorer下建立run项,在run项建值项(名字随便),然后赋值(值为程序的路径,字符串型),也要仔细查看。
另有HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows\run
2,RunOnce键
RunOnce位于[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce]和[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce]键,与Run不同的是,RunOnce下的程序仅会被自动执行一次。实验:在runonce项建值项(名字随便),然后赋值(值为程序的路径,字符串型),再次查看,该值项已被删除,登录前未被执行。
3,RunServicesOnce键
RunServicesOnce键位于[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]和[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]下,其中的程序会在系统加载时自动启动执行一次。RunServicesOnce注册键用来启动服务程序,启动时间在用户登录之前,而且先于其他通过注册键启动的程序。
4,RunServices键
RunServices注册键指定的程序紧接RunServicesOnce指定的程序之后运行,但两者都在用户登录之前。位于注册表[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices]和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices]键。
5,RunOnceEx键
该键是WindowsXP/2003特有的自启动注册表项,位于[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx]和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx]。
6,load键
[HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows]下的load键值的程序也可以自启动。实验:在windows下的值项load(如果没有,自己创建)是字符型值,该其值为程序路径,开机运行并最小化,而如果建在local_machine下不起作用。
7,Winlogon键
该键位于位于注册表[HKEY_CURRENT_USER\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon]和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon],注意下面的Notify、Userinit、Shell键值也会有自启动的程序,而且其键值可以用逗号分隔,从而实现登录的时候启动多个程序。如通常在Userinit值键下面有一个userinit.exe,但这个键允许指定用逗号分隔的多个程序,例如“userinit.exe,OSA.exe”(不含引号)。实验:在current下winlogon项下建Notify、Userinit值项,都不起作用,建shell有用,但加载的程序运行后,explorer.exe不运行,要手动开启;在local下的winlogon下Userinit值项改值userinit.exe为userinit.exe,OSA.exe,加载程序运行,删除值中的userinit.exe,在系统登录时选择用户名登录后又马上注销,不能启动,在local下winlogon项下建Notify值项不起作用,而其下本就有Notify子项,在该值项下建一值项,值为程序路径,也
不起作用,在local下winlogon项下有shell值项,其值本为"Explorer.exe",该为”Explorer.exe程序路径“,重启附加程序被运行,再次修改shell值为“Explorer”,恢复正常。附:系统文件userinit.exe的作用此文件在注册表中的位置是HKLM\SOFTWARE\microsoft\windowsNT\currentVersion\winlogon下的Userinit.值为c:\windows\system32\userinit.exe,可能病毒也会藏在此处,变为c:\windows\system32\userinit.exe,c:\windows\virus.exe.userinit.exe文件丢失或其相关注册表键值错误将导致不能正常登录系统。症状:登录后立刻自动注销在登录系统后首先将读取这个键值并执行其中指向的程序,如果此键值被某些病毒修改或userinit.exe文件被误删除,就会出现登录系统后立即注销的情况,只能借助操作系统的安装光盘及一些网络上流传的系统急救光盘进行修复。
8,其他注册表位置
还有一些其他键值,经常会有一些程序在这里自动运行,如:[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\Shell]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad]
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System\Scripts]
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\System\Scripts]
小提示
注册表的[HKEY_LOCAL_MACHINE]和[HKEY_CURRENT_USER]键的区别:前者对所有用户有效,后者只对当前用户有效。
古老的启动——自动批处理文件
从DOS时代过来的朋友肯定知道autoexec.bat(位于系统盘根目录)这个自动批处理文件,它会在电脑启动时自动运行,早期许多病毒就看中了它,使用deltree、format等危险命令来破坏硬盘数据。如“C盘杀手”就是用一句“deltree/yc:\*.*”命令,让电脑一启动就自动删除C盘所有文件,害人无数。
小提示
在Windows98中,Autoexec.bat还有一个哥们——Winstart.bat文件,winstart.bat位于Windows文件夹,也会在启动时自动执行。
在WindowsMe/2000/XP中,上述两个批处理文件默认都不会被执行。
常用的启动——系统配置文件
在Windows的配置文件(包括Win.ini、System.ini和wininit.ini文件)也会加载一些自动运行的程序。
1,Win.ini文件
使用“记事本”打开Win.ini文件,在[windows]段下的“Run=”和“LOAD=”语句后面就可以直接加可执行程序,只要程序名称及路径写在“=”后面即可。
小提示
“load=”后面的程序在自启动后最小化运行,而“run=”后程序则会正常运行。
2,System.ini文件
使用“记事本”打开System.ini文件,找到[boot]段下“shell=”语句,该语句默认为“shell=Explorer.exe”,启动的时候运行Windows外壳程序explorer.exe。病毒可不客气,如“妖之吻”病毒干脆把它改成“shell=c:\yzw.exe”,如果你强行删除“妖之吻”病毒程序yzw.exe,Windows就会提示报错,让你重装Windows,也有客气一点的病毒,如将该句变成“shell=Explorer.exe其他程序名”,看到这样的情况,后面的其他程序名一定是病毒程序如所示。
3,wininit.ini
wininit.ini文件是很容易被许多电脑用户忽视的系统配置文件,因为该文件在Windows启动时自动执后会被自动删除,这就是说该文件中的命令只会自动执行一次。该配置文件主要由软件的安装程序生成,对那些在Windows图形界面启动后就不能进行删除、更新和重命名的文件进行操作。若其被病毒写上危险命令,那么后果与“C盘杀手”无异。
小提示
如果不知道它们存放的位置,按F3键打开“搜索”对话框进行搜索;
单击“开始→运行”,输入sysedit回车,打开“系统配置编辑程序”,如图2所示,在这里也可以方便的对上述文件进行查看与修改。
智能的启动——开/关机/登录/注销脚本
在Windows2000/XP中,单击“开始→运行”,输入gpedit.msc回车可以打开“组策略编辑器”,在左侧窗格展开“本地计算机策略→用户配置→管理模板→系统→登录”,然后在右窗格中双击“在用户登录时运行这些程序”,单击“显示”按钮,在“登录时运行的项目”下就显示了自启动的程序。
定时的启动——任务计划
在默认情况下,“任务计划”程序随Windows一起启动并在后台运行。如果把某个程序添加到计划任务文件夹,并将计划任务设置为“系统启动时”或“登录时”,这样也可以实现程序自启动。通过“计划任务”加载的程序一般会在任务栏系统托盘区里有它们的图标。大家也可以双击“控制面板”中的“计划任务”图标查看其中的项目。
小提示
“任务计划”也是一个特殊的系统文件夹,单击“开始→程序→附件→系统工具→任务计划”即可打开该文件夹,从而方便进行查看和管理。
跟着别人的启动——随软件开启的程序
彻底清查Windows自启动
一、从“系统信息”查看启动程序
单击“开始→程序→附件→系统工具→系统信息”,双击“软件环境”,单击“启动程序”,在右边窗口出现的程序就是所有自启动程序,在“装载源”或“位置”下显出该程序是由注册表还是“启动”文件夹启动的。从这里只能查看自启动程序,不能对自启动程序进行禁止自启动等任何更改操作。软件性质:Windows自身功能。
二、MSConfig
在Windows98/Me/XP/2003中,单击“开始→运行”,输入msconfig回车即可打开“系统配置实用程序”窗口,单击“启动”标签,在列表框中显示的就是从注册表、“启动”文件夹和系统配置文件中自启动的程序。程序前有对号的是允许自启动的程序,没有对号的则不会自启动。如果想取消某个程序的自启动,单击取消程序前的对勾即可。还可以在autoexec.bat、system.ini和win.ini标签里面对它们进行编辑,取消其中的自启动程序。
小提示
所有的修改都需要重新启动才能生效。
Windows2000没有msconfig程序,但是我们可以从Windows98或者XP拷贝一个到system32目录,同样可以起作用。软件性质:免费,微软原装。
常见的启动项-系统ctfmon用户输入技术支持
internat.exe输入法指示器程序
LoadPowerProfileWin98/Me电源管理
PCHealthWinMe系统自愈功能
ScanRegistry启动时检查并备份注册表
SchedulingAgent系统计划任务程序
SynchronizationManagerWin2000同步管理
SystemTray系统托盘,管理内存驻留程序
TaskbarDisplayControls屏幕-属性-设置-高级-在任务栏中显示图标
TaskMonitor任务检测程序,记录使用软件情况
*StateMgrWinMe系统还原常见的启动项-软件CnsMin3721网站的中文域名
KingsoftAntiVirus金山毒霸的启动项
McAfeeVirusScanService杀毒软件McAfeeVirusScanVPTRAY诺顿杀毒软件的启动项ccapp也是诺顿的东西
msmsgsWindowsMessenger
NDetectICQ的启动程序
popproxy瑞星防火墙
RavMon瑞星杀毒软件
RavTimer瑞星杀毒软件
RealTrayRealplay的启动项
TkBellExeRealOnePlayer的启动项补充:IMSCMIG.EXE微软IME输入法的组件IMJPMIG,TINTSETP,TINTSETP这三项。这三项是日文,韩文等输入法的启动项目,一般我们都不会使用日文,韩文这些输入法,所以可以禁止这三项随机启动
| 操作系统 | 系统文件 |
| 程序 | 软件 |
| 系统工具 | 字符 |
http://hi.baidu.com/xiongdeqin/blog/item/bc032da979ae5aff1e17a2b7.html
)






