|
发表于 2007-5-30 09:59:55
|
显示全部楼层
来自: 中国山东泰安
Svchost.exe占用CPU100%全面解析与进程说明
<<摘抄自网络,解答楼主疑问,版权归原作者所有>>
3 P9 W6 |7 Y0 `8 v5 _+ m6 ? 我们先看看微软是怎样描述Svchost.exe的。在微软知识库314056中对Svchost.exe有如/ g$ J1 T; x) K
下描述:Svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。 7 C \5 {( w, Z7 W1 K8 ?! O5 U
其实Svchost.exe是Windows XP系统的一个核心进程。Svchost.exe不单单只出现在
( O2 w% a, H7 `5 D! V$ H7 @) ]! UWindows XP中,在使用NT内核的Windows系统中都会有Svchost.exe的存在。一般在Windows 0 e, M i0 I2 F9 W; X
2000中Svchost.exe进程的数目为2个,而在Windows XP中Svchost.exe进程的数目就上升到了
- I) O/ z7 O. e0 {" M7 V9 B4个及4个以上。所以看到系统的进程列表中有几个Svchost.exe不用那么担心。 7 ~3 g1 b# V: Q
0 x+ Q2 A0 a* N7 ~, ?( h; eSvchost.exe到底是做什么用的呢?
" S% f: p+ w+ R8 S 首先我们要了解一点那就是Windows系统的中的进程分为:独立进程和共享进程这两种。9 X2 n2 m7 b! n
由于Windows系统中的服务越来越多,为了节约有限的系统资源微软把很多的系统服务做成了" m/ m2 p) Q& D) l6 o7 g$ X3 A
共享模式。那Svchost.exe在这中间是担任怎样一个角色呢?
( A" F% `/ n( H7 T) y Svchost.exe的工作就是作为这些服务的宿主,即由Svchost.exe来启动这些服务。
8 z8 c2 }/ f, @9 GSvchost.exe只是负责为这些服务提供启动的条件,其自身并不能实现任何服务的功能,也不
4 x# A) k; I' K# @$ ^能为用户提供任何服务。Svchost.exe通过为这些系统服务调用动态链接库(DLL)的方式来3 m: H* N" W+ `9 t4 s, L1 F$ T
启动系统服务。 v$ p# C: i( c0 J
那Svchost.exe是病毒这种说法是任何产生的呢?
# @: q9 g4 t5 X% l/ l! J 因为Svchost.exe可以作为服务的宿主来启动服务,所以病毒、木马的编写者也挖空心思1 D1 m: _: s0 K& I) p! ?3 q
的要利用Svchost.exe的这个特性来迷惑用户达到入侵、破坏计算机的目的。
6 Q( e8 | m/ s* E: |如何才能辨别哪些是正常的Svchost.exe进程,而哪些是病毒进程呢?
3 N3 k2 d' e8 K& j; F+ i$ J. uSvchost.exe的键值是在“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows - u' V2 y) b( p! s
NT\CurrentVersion\Svchost”,如图1所示。图1中每个键值表示一个独立的Svchost.exe组
5 n" h) y, q7 y6 j6 U。
/ d9 i+ [4 h5 i0 |: l0 a 微软还为我们提供了一种察看系统正在运行在Svchost.exe列表中的服务的方法。以
* F8 m6 v) J* ~# R. c6 QWindows XP为例:在“运行”中输入:cmd,然后在命令行模式中输入:tasklist /svc。+ m' L, p) \3 V U
例:/ v/ P' u6 i6 k+ a( m' v9 v
http://hiphotos.baidu.com/sskgyiqpl/pic/item/9be22a2da8cffe30359bf7c2.jpg
2 z8 n5 B C# C5 j/ V如果使用的是Windows 2000系统则把前面的“tasklist /svc”命令替换为:“tlist -s”即
4 M* B7 \: j8 ?+ T& q9 w4 W可。如果你怀疑计算机有可能被病毒感染,Svchost.exe的服务出现异常的话通过搜索$ i7 L* c; C3 C* O5 i3 B3 D" J
Svchost.exe文件就可以发现异常情况。一般只会找到一个在:“C:\Windows\System32”目6 U3 r# a9 |5 k9 V5 e, J; j
录下的Svchost.exe程序。如果你在其他目录下发现Svchost.exe程序的话,那很可能就是中
$ P' ?7 o% l) S) A g" d) }4 D" F5 U6 h毒了。
' T9 Z, W. S+ G: H# G3 U- z 还有一种确认Svchost.exe是否中毒的方法是在任务管理器中察看进程的执行路径。但是
) X: i7 ]* N, }; C由于在Windows系统自带的任务管理器不能察看进程路径,所以要使用第三方的进程察看工具
& } c- B# o9 N& R/ k$ j9 U& w。
/ J5 P* T4 Y2 ~/ G2 s, R 上面简单的介绍了Svchost.exe进程的相关情况。总而言之,Svchost.exe是一个系统的
/ N) m# e8 {- ]8 B9 P. F3 s$ R. V: q( J核心进程,并不是病毒进程。但由于Svchost.exe进程的特殊性,所以病毒也会千方百计的入
. Q4 H" f& y- O1 A侵Svchost.exe。通过察看Svchost.exe进程的执行路径可以确认是否中毒。
9 p: Z/ o9 T9 t2 q注:希望广大朋友不要进行非法用途,在这里解密木马捆绑是希望大家了解其原理。 3 k, R: Q# O* [# ?- o5 `
# q' p0 o) w2 w/ a& h 如今网络上病毒肆虐,让电脑用户在应付病毒上花费了不少精力。当你使用杀毒软件查2 N6 l* c0 W# m& ^2 w9 \
杀病毒时,是否遇到查出了病毒,但是杀不掉的情况,原因何在?该如何处理呢?以下笔者对8 p( ^ x ?1 u
此略作介绍。
' m v- |5 C" I# {3 b◆系统还原文件 % ?) L* {7 n4 E. O4 x. d% W1 _
_restore文件夹是Windows Me/XP系统特有的系统还原文件夹,隐藏在该文件夹中的病毒) v) ?) @. ], V6 A- A9 Y& P6 g
是不能直接清除的。当然这些病毒也不能直接发挥作用。要清除这些病毒,可以关闭Windows
$ n3 J$ @! T$ q系统的“系统还原”功能,清理系统还原点,或者直接删除_restore文件夹的内容。
7 z& E+ y! q1 u+ ^5 K5 @! P◆疑似电脑病毒 ( s0 \6 q9 g' y( j# h7 t' q& n( ~
有时杀毒软件会出现提示:unknown.com.tsr.virus。该提示中,unknown是“不明的”
% O _9 m8 e: b; T; H意思,tsr是内存驻留的意思,本信息一般提示的是纯DOS环境下的可执行文件,表明杀毒软
9 q0 T3 c5 o* c- N件在该文件中发现了可疑代码,类似病毒,但是没有确定是什么病毒。 # @5 d$ @3 O. U5 s3 H$ `+ F" G+ G
如果疑似病毒提示涉及Type-Win32代码,则表示可疑的32位代码的意思,是指Windows环" ]% e( H$ V4 X9 o% u' p; f
境下可疑的可执行代码。对于疑似病毒,可以直接删除该文件,或者将这些“疑似”的病毒
9 m0 }0 t* D+ p* p; ]) p文件发送给反病毒软件公司,请求帮助。
' a; F: Q3 s- b# `0 n◆exe 文件感染病毒
' l. Z( z0 V W5 w 以.exe为扩展名称的文件是软件安装程序的部分文件,其中的病毒不能直接清除。只有0 x5 M* _3 X& h4 }- ~2 C% A
在软件完全安装成功后,方可清除。这有点类似于在COPY文件时发现了病毒的处理方法。 4 Y# T2 o& l: M
◆在DOS下清除病毒
, L% H" F1 ?* v/ |; }, G 对于在引导区发现的病毒,如POLYBOOT/WYX.b病毒,请使用干净的系统盘启动系统到DOS8 S1 W9 L! M* K% ~" B4 Q6 {
,然后在DOS下杀毒即可清除。如果可感染引导区的病毒存在于文件中,可以直接删除该文件! b. B+ L4 v. Q3 t% Q
。
5 F8 o& B) L: e( E, E6 [◆系统初始文件中引用病毒
% Q/ M* a& w1 U% v8 z' h杀毒时出现如下提示:! C' ~1 i0 ~- \# V3 J p p
-----------------------------------------------------------------------------------------------8 B: `6 h' n5 ]
QUOTE:% H* f0 d& x, f4 p
C:\Windows\brasil.pif worm.win32.opasoft.a病毒 已删除 " @. T; _' H/ d. T9 I& q: M
C:\Windows\instit.bat worm.win32.opasoft.a病毒 已删除 0 k6 G$ d9 Y# i: H' Y# `0 H B
C:\Windows\alevir.exe worm.win32.opasoft.a病毒 已删除
. U) J& H l+ |+ m. P9 q8 a# E C:\Windows\marco.scr worm.win32.opasoft.a病毒 已删除
" M, f: ^ [4 z C:\Windows\SCRSVR.exe worm.win32.opasoft.a病毒 已删除
7 q$ d% Y5 [ }8 F: Z8 w------------------------------------------------------------------------------------------------
2 J+ s5 i5 O1 l- I 杀毒后,重启动电脑时出现很多找不到文件的信息,而且再次杀毒时提示依旧,病毒还
' b1 B8 j4 ?. W% d: p% j* @是存在。这些顽固病毒的引用应该是在win.ini文件中,请单击“开始→运行”,键入' o' h- ?0 ~6 [) ^
“sysedit”,按下回车键,编辑win.ini,删除对病毒的引用行。 ; g: n/ h9 f l6 f, T. g+ d
◆病毒最新变种
) D; c/ n& `, e: j( p& z4 ~0 {杀毒软件查出的是其病毒库中不存在的新型病毒,请将杀毒软件的病毒库升级到最新,然后& {7 s( t; |/ I/ |0 T; Z% q
再查杀。
# F6 K7 d6 c7 N) h--------------------
1 K W/ F2 l: F6 b3 y* d 一款好的防火墙并不能发现所有病毒;一个好的杀毒软件并不能歼灭所有的带毒程序!
" M4 D9 N. m/ q, T+ |" `遇到这些情况我们该做何处理呢?很简单——手工杀毒。而要论到手工杀毒,就不能不提到# n2 u( t) p" \2 M* f
系统进程的妙用了。 ; R7 [: F5 z2 {- T; W
进程、病毒? 6 E; y& V' | Y' I0 `7 ?
书上说:“进程为应用程序的运行实例,是应用程序的一次动态执行。”看似高深,我
/ s8 y6 {4 r# K0 d5 h们可以简单地理解为:它是操作系统当前运行的执行程序。在系统当前运行的执行程序里包
# c1 X$ f/ Q5 |" |) Y" s括:系统管理计算机个体和完成各种操作所必需的程序;用户开启、执行的额外程序,当然
; T1 C/ n) K* F. E也包括用户不知道,而自动运行的非法程序(它们就有可能是病毒程序)。 ( Z- P6 J7 |+ {' T6 w& C
危害较大的可执行病毒同样以“进程”形式出现在系统内部(一些病毒可能并不被进程7 }; c/ Y& ?3 c3 q- r
列表显示,如“宏病毒”),那么及时查看并准确杀掉非法进程对于“手工杀毒有起着关键
% u) i5 P9 ^& P性的作用。 9 T) B* q+ {7 t
操作系统如何打开进程列表?
, I) A6 P1 P# R2 p3 b 要通过进程列表查看系统是否染毒,必须打开当前的执行程序进程列表,Microsoft的每7 p* @5 G, _* F/ D7 v3 _
种系统都有相应的打开方法,但能够显示的能力却因(系统)不同,有所差异: 7 _; @; Q; X8 n- h
1.Windows 98 /Me系统 0 f8 A) o, }# a% r3 V, T9 m6 C& E
打开系统进程的方式很简单,快捷键“Ctrl+Alt+Delete”(如图1),这个窗口大家应
- r, C" u6 b# [1 h9 C; l* P该比较熟悉,使用Windows系统的用户都知道用这个方法来关闭程序,不过它同样用于显示系( p5 |& H% ~: k
统进程,只是Windows 98系统较初级,对进程的显示局限于名称,且里面所显示的还有打开
" n. f- f4 _9 R# `& U- I' V' f的文件及目录名,查看时易混淆。Windows Me的进程打开方式和Windows 98相同。 1 R8 l$ D- I# g
Windows 9x系统打开的进程列表混乱且不完全,显然不便于查看系统的具体进程状况,. w$ ~) Q" h0 P# p
所以建议使用一些工具程序来为Windows 9x系统显示进程,如“Windows优化大师”,在“优
) Y* O$ }2 |) C8 z化大师”的“系统安全优化”项内打开“进程管理”,在图2所示的“Windows 进程管理”窗
, q* z1 r% R- c! J口内,可以详细查看当前计算机所运行的所有进程,及具体程序所在的位置,这样更方便完# I& b( u# H* Y, B0 X! r2 [
成后面要介绍的如何利用进程进行查毒、杀毒。 |
|