电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 电脑学院 > 网络安全 > 正文
[组图]反病毒教程(提升篇)第6课
反病毒教程(提升篇)第6课
2009-5-10 17:43:29  文/佚名   出处:剑盟   

一.环境变量与命令
命令分为内部命令和外部命令,以前用到的cd就是一个内部命令,内部命令只能在cmd中执行,其他的还有del(删除文件的命令),rd(删除目录的命令),md(创建目录的命令)等.外部命令很多,每个外部命令都有一个与命令同名的文件,这些文件都可以在path环境变量所设定的目录中找到.
广义上讲,窗体程序也可以算命令,如regedit(注册表编辑器),services.msc(服务)等.
我们天天用的QQ当然也可以算哈,试下在运行中输入QQ,结果如图:

 



让QQ这个命令可用吧,跟我操作:
我的电脑,属性,高级,环境变量,系统变量(用户变量也是一样的)
找到变量Path,双击,可以看到变量值是由很多文件路径组成的,每个路径是用分号隔开的.
所有在最后面先加个分号,再在后面加上QQ的安装目录,比如我的就加X:\Program Files\Tencent\QQ
确定,再点确定.
如果没有path变量,可以新建一个,然后直接输入QQ的目录.(没有的话,后面的结果就会有不同)
现在在运行中输入qq就可以直接运行了.
path变量的值也是系统搜索目录
到%SystemRoot%\System32目录(或%SystemRoot%目录)把notepad.exe重命名为qq.exe,然后在运行中输入qq
这时运行的程序不再是QQ,而是记事本.
原因是系统优先搜索%SystemRoot%\System32目录,再是我设定的目录,如果在前面的目录中可以找到名为qq的程序,则直接运行它了,不再搜索后面的目录.
把那个文件改回notepad.exe吧.

二.减少开机自动运行的程序
Win+R,输入msconfig,确定,切换到启动页.软件装多了的话,这里可以看到好多.
我这里可以看到5个,三个打勾的,表示已启用,如图:

 



启动项目的名字一般就是程序的文件名或描述
第二列,命令,就是开机自动运行的程序所在的路径,可以带参数运行.
第三列是位置,很多是注册表路径.

Startup这个位置表示的是当前用户的开始菜单,所有程序,启动这个位置,文件路径为C:\Documents and Settings\你的用户名\「开始」菜单\程序\启动,也就是说你往这个目录放程序,下次及以后一开机就会自动运行这个程序了(只对指定的用户有效).
Common Startup,路径为C:\Documents and Settings\All Users\「开始」菜单\程序\启动,这里放的程序对所有用户有效,其他和上面的一样,可以是程序快捷方式等.
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,这个大家肯定熟悉,是注册表路径,只是前面的根键缩写了,写全了就是HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run,只是这个位置比较特殊,大家打开注册表定位到这里,和刚才在系统配制实用程序中看到的对比下.
这里的键名和msconfig中的名称是不一样的,但键值却和命令是一样的.

事实上这里的键名可以任意更改,键值就是你想开机时自动运行的命令(或程序)
这里就可以把不需要的删除,哪些不需要?
百度一下文件名就知道了,比如我这里第二个wesec.exe,搜索下就知道了,它是365门神,一款优秀的恶意网页广告等的标示及拦截工具
(对于进程名,不知道的也去百度一下吧,百度不到的google)
第三个估计大部分都有吧,输入法图标,呵.
第一个google工具条.

开始,运行,输入services.msc,确定.(或者,控制面板,管理工具,服务)
选中某个服务时,左上角会显示该服务的具体描述(如果你的不显示,请点击左下角的扩展)

 



图中是部分已被我禁用的服务,因为我根本不需要它们,开了只会浪费资源.当然需要的时候可以再次开启它.
双击或者右键选择属性就可以看到更多的信息,我们所要关注的就是可执行文件的路径,依存关系,启动类型,服务状态.
比如这个Print Spooler,因为我根本就没有打印机,更不需要打印,所以我把它停止并禁用了,于是任务管理器中将看不到映像名为spoolsv.exe的进程了.
作为服务启动的程序在任务管理器中看到的用户名一列均为system.

所有服务在注册表中都有相对应的位置,这些位置有如下几个(可能你的没有第三个或还有其他的):
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
不过这样找某个具体的服务麻烦了点,因此一般不直接找,而是搜索.

怎么来搜索打印服务?
展开到并选中该项,点编辑,查找,输入spoolsv.exe,查看那里的三个全选上(也可以只选数据,这样搜索速度会快一点),全字匹配不要选上,点查找下一个.
很快就搜索到了,在左边空白处点一下,可以看到它的完整注册表路径为HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Spooler

项名即为服务名称.
DisplayName为服务的显示名称
Description的值为该服务的描述,这些都可以修改
ImagePath的值为可执行文件的路径
Start的值表示服务的启动方式,4表示禁用,3表示手动,2表示自动
ObjectName的值表示服务类型,如本地服务(LocalSystem),网络服务等.

将整个项删除可以完全删除这个服务,不建议这样做.按F3继续查找,在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services下又发现有...

这里有必要解释一下了:
Currentcontrolset一般是ControlSet001的映射,也就是当前生效的项.修改其中的一个,另一个会跟着变化.
ControlSet002保存上次生效的配置(最后一次正确配制所加载的内容.开机时按F8就知道了)
ControlSet003如果使用过上次有效的配置则这里的是备份的ControlSet001
后面如果还有的话以此类推.

为什么我上面说Currentcontrolset一般是ControlSet001的映射,因为有些情况下并不是这样的,可能是ControlSet002的映射,这个由HKEY_LOCAL_MACHINE\SYSTEM\Select下面的键来决定.具体是:
Cturren   当前,值为1表示当前使用的是ControlSet001下面的配制,值为2表示使用的是ControlSet002下的配制,其他以此类推.
Default     默认,通常和上面键的值一样
LastKnownGood        最后一次正确配置,默认应该是3吧,也就是指向了ControlSet003.
Failed 指向上次启动失败的设置项

禁用最后一次正确配置
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
ReportBootOk的值改为0,没有就新建.

这一课的内容,想要完全掌握,是要下点工夫的,呵呵,不要以为很简单.
附件是一张服务对照图,比较完整,包括是否需要禁用等.图片大小908*2721,比较大,所以用windows图片和传真查看器打开时,请放大,否则看不清楚.
  • 上一篇文章:

  • 下一篇文章:
  • 最新热点 最新推荐 相关文章
    反病毒教程(高级篇)第11课
    反病毒教程(中级篇)第10课
    反病毒教程(中级篇)第9课
    反病毒教程(中级篇)第8课
    反病毒教程(中级篇)第7课
    反病毒教程(提升篇)第5课
    反病毒教程(基础篇)第4课
    反病毒教程(基础篇)第3课
    反病毒教程(基础篇)第2课
    反病毒教程(基础篇)第1课
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号