|
任何病毒和木马存在于系统中,都无法彻底和进程脱离关系,即使采用了隐藏技术, 4 U! h- _2 j2 m6 m
也还是能够从进程中找到蛛丝马迹,因此,查看系统中活动的进程成为我们检测病毒 : e- C; B' O- S) g4 t
木马最直接的方法。但是系统中同时运行的进程那么多,哪些是正常的系统进程,哪
P. x8 H- Z6 U4 P* B* i些是木马的进程,而经常被病毒木马假冒的系统进程在系统中又扮演着什么角色呢?
e- t) A% d* _% w- t请看本文。
y: F4 A- X0 d- R( r- ?' o' ^病毒进程隐藏三法 4 w' y8 \6 c1 u0 ?! Z4 \
当我们确认系统中存在病毒,但是通过“任务管理器”查看系统中的进程时又找不出
% I; H- z. B) \0 W: o0 o异样的进程,这说明病毒采用了一些隐藏措施,总结出来有三法: " v6 d) s" d+ @* l
1.以假乱真 ; d* U! Y) E# [- w3 e- k
系统中的正常进程有:svchost.exe、explorer.exe、iexplore.exe、winlogon.exe 1 }+ A) U( Z2 [( s' \1 @, _
等,可能你发现过系统中存在这样的进程:svch0st.exe、explore.exe、iexplorer
$ }& {# R+ O) f, R N.exe、winlogin.exe。对比一下,发现区别了么?这是病毒经常使用的伎俩,目的就
7 I& w( l9 H) L2 X是迷惑用户的眼睛。通常它们会将系统中正常进程名的o改为0,l改为i,i改为j,然 6 y" u8 J$ r4 g" ~7 D# V/ }4 W- X
后成为自己的进程名,仅仅一字之差,意义却完全不同。又或者多一个字母或少一个
8 D3 O- N7 {' u1 y k; m3 D4 u字母,例如explorer.exe和iexplore.exe本来就容易搞混,再出现个iexplorer.exe
6 A1 [ N% h9 _4 ^, P: |4 ]3 L2 x* q3 R就更加混乱了。如果用户不仔细,一般就忽略了,病毒的进程就逃过了一劫。
( L9 G( {4 p7 k& p0 Y8 v) c$ C$ s2.偷梁换柱 0 E L! Y. Y3 O* E
如果用户比较心细,那么上面这招就没用了,病毒会被就地正法。于是乎,病毒也学 / m2 w; T6 H$ r
聪明了,懂得了偷梁换柱这一招。如果一个进程的名字为svchost.exe,和正常的系
/ s4 A0 r3 }9 B0 q5 _& {统进程名分毫不差。那么这个进程是不是就安全了呢?非也,其实它只是利用了“任 ) l' r1 S! _ h u1 r1 Q4 K
务管理器”无法查看进程对应可执行文件这一缺陷。我们知道svchost.exe进程对应 : n2 R M( H' K, B: w5 R& \* J
的可执行文件位于“c:\windows\system32”目录下(windows2000则是c:\winnt\system32
; a3 s9 j1 ]: M) K: H目录),如果病毒将自身复制到“c:\windows\”中,并改名为svchost.exe,运行后 , R2 [. k n* Q+ @ f+ ]1 M1 {
,我们在“任务管理器”中看到的也是svchost.exe,和正常的系统进程无异。你能 8 \7 h( y; J6 l* {2 e
辨别出其中哪一个是病毒的进程吗? 7 R* ^, ^; s$ R7 A0 K7 w. L
3.借尸还魂
7 T W5 F. ] e6 M: {7 K' R* C除了上文中的两种方法外,病毒还有一招终极大法——借尸还魂。所谓的借尸还魂就 , s2 j3 `9 [0 W7 k) e% B/ J
是病毒采用了进程插入技术,将病毒运行所需的dll文件插入正常的系统进程中,表
# c' c( ?* T' ~+ T面上看无任何可疑情况,实质上系统进程已经被病毒控制了,除非我们借助专业的进
6 L' Z# \1 n P程检测工具,否则要想发现隐藏在其中的病毒是很困难的。 K5 u5 b! `; z' n# N- B* ?. Y
系统进程解惑 , n3 F8 `, E- y7 N
上文中提到了很多系统进程,这些系统进程到底有何作用,其运行原理又是什么?下 ( w% D8 u3 J1 [, I7 Y
面我们将对这些系统进程进行逐一讲解,相信在熟知这些系统进程后,就能成功破解 - l/ @& f, p5 H4 v4 P" B/ f
病毒的“以假乱真”和“偷梁换柱”了。
+ J* i1 N5 {. H/ Y4 S( jsvchost.exe 7 c: t6 @1 b; [! C% O/ h, ^: P
常被病毒冒充的进程名有:svch0st.exe、schvost.exe、scvhost.exe。随着windows
- A) m% w4 ^- B. Y系统服务不断增多,为了节省系统资源,微软把很多服务做成共享方式,交由svchost
8 W" l( I7 z& s.exe进程来启动。而系统服务是以动态链接库(dll)形式实现的,它们把可执行程序
. q- u) D7 \$ |7 z: v% T指向scvhost,由cvhost调用相应服务的动态链接库来启动服务。我们可以打开“控 " _$ a9 S2 l9 Y7 o+ m
制面板”→“管理工具”→服务,双击其中“clipbook”服务,在其属性面板中可以 3 _; X* G M( i* _. s) M2 F+ e
发现对应的可执行文件路径为“c:\windows\system32\clipsrv.exe”。再双击“alerter 6 _$ z5 ^; M5 n$ r4 I8 [
”服务,可以发现其可执行文件路径为“c:\windows\system32\svchost.exe -k localservice 1 X5 r4 B8 }4 G5 f- B; _5 w/ b- g
”,而“server”服务的可执行文件路径为“c:\windows\system32\svchost.exe - 3 o7 ^ m" g8 }3 ~
k netsvcs”。正是通过这种调用,可以省下不少系统资源,因此系统中出现多个svchost c# a$ o8 X& [3 m* l
.exe,其实只是系统的服务而已。
: R( T* c# t( E9 v0 x+ Z在windows2000系统中一般存在2个svchost.exe进程,一个是rpcss(remoteprocedurecall ; p- `$ Q# D s' X1 I- l
)服务进程,另外一个则是由很多服务共享的一个svchost.exe;而在windowsxp中, ' @7 R L2 g. V$ _" W# n
则一般有4个以上的svchost.exe服务进程。如果svchost.exe进程的数量多于5个,就 ) T1 `/ l6 e8 S2 U" c
要小心了,很可能是病毒假冒的,检测方法也很简单,使用一些进程管理工具,例如
: |+ f* c& f$ ~6 z; K# Pwindows优化大师的进程管理功能,查看svchost.exe的可执行文件路径,如果在“c
/ T$ {6 I$ E" _% p+ b9 u:\windows\system32”目录外,那么就可以判定是病毒了。
: ~: ?6 }1 S" v/ }! Sexplorer.exe ) W0 m/ M- O. W
常被病毒冒充的进程名有:iexplorer.exe、expiorer.exe、explore.exe。explorer
, Y% t: ?/ p$ x" e/ w.exe就是我们经常会用到的“资源管理器”。如果在“任务管理器”中将explorer. , ]4 W( ~! N/ o {6 t% `
exe进程结束,那么包括任务栏、桌面、以及打开的文件都会统统消失,单击“任务
. ^: l a* e4 [ B ]2 r7 f管理器”→“文件”→“新建任务”,输入“explorer.exe”后,消失的东西又重新
% y+ C& d6 N, ?$ m+ Z# }' t+ y* x回来了。explorer.exe进程的作用就是让我们管理计算机中的资源。
. {* G+ F* V9 D; y: K E' Vexplorer.exe进程默认是和系统一起启动的,其对应可执行文件的路径为“c:\windows
( \0 z2 q* r3 f5 X. `1 B2 K+ f% M”目录,除此之外则为病毒。
) S' y1 n9 ~& D% |" m Kiexplore.exe
, O5 i3 l, R' Q4 {常被病毒冒充的进程名有:iexplorer.exe、iexploer.exeiexplorer.exe进程和上文
7 D6 w5 U9 U6 L9 k0 t, H5 N中的explorer.exe进程名很相像,因此比较容易搞混,其实iexplorer.exe是microsoft
2 q. P% B# i$ R internet explorer所产生的进程,也就是我们平时使用的ie浏览器。知道作用后辨
9 Q' Y' _3 F& [1 K7 ]认起来应该就比较容易了,iexplorer.exe进程名的开头为“ie”,就是ie浏览器的
4 p; O! | j# ]( I意思。 , D5 {* K) G% O5 X/ z+ _
iexplore.exe进程对应的可执行程序位于c:\programfiles\internetexplorer目录中
! f9 z( J# f# S! W8 S3 W,存在于其他目录则为病毒,除非你将该文件夹进行了转移。此外,有时我们会发现
9 m: ~( a7 N' J5 J; `$ |1 E没有打开ie浏览器的情况下,系统中仍然存在iexplore.exe进程,这要分两种情况:
3 u; V* G: z& q& Z$ M1 l. f9 X, Z1.病毒假冒iexplore.exe进程名。2.病毒偷偷在后台通过iexplore.exe干坏事。因此
! N" n3 i6 f7 R' A. D `出现这种情况还是赶快用杀毒软件进行查杀吧。
" m& G) I: f: w2 xrundll32.exe
( ?: S& H7 o9 Z常被病毒冒充的进程名有:rundl132.exe、rundl32.exe。rundll32.exe在系统中的
4 q7 b4 Y' `; y作用是执行dll文件中的内部函数,系统中存在多少个rundll32.exe进程,就表示rundll32
* S9 B! g5 ~1 Z! R3 Y* k3 {.exe启动了多少个的dll文件。其实rundll32.exe我们是会经常用到的,他可以控制 - a- J6 x& K3 p/ d% X% r9 B
系统中的一些dll文件,举个例子,在“命令提示符”中输入“rundll32.exe user32 0 i$ M$ n; s \1 J
.dll,lockworkstation”,回车后,系统就会快速切换到登录界面了。rundll32.exe 7 a0 y! @/ e( U8 _, e
的路径为“c:\windows\system32”,在别的目录则可以判定是病毒。
& s9 t9 j- q* n/ R& ]spoolsv.exe
9 t3 H. _& g% @% e# u, d! B+ z$ \) D常被病毒冒充的进程名有:spoo1sv.exe、spolsv.exe。spoolsv.exe是系统服务“print
5 s& Q6 a% p4 b, V; a* ` spooler”所对应的可执行程序,其作用是管理所有本地和网络打印队列及控制所有
0 D/ x2 }6 a4 o$ K/ H# s' N打印工作。如果此服务被停用,计算机上的打印将不可用,同时spoolsv.exe进程也 $ S3 t8 L1 Q) L$ A- L/ W/ b. U$ D; U
会从计算机上消失。如果你不存在打印机设备,那么就把这项服务关闭吧,可以节省
+ E; K6 m& V; r7 I! Y系统资源。停止并关闭服务后,如果系统中还存在spoolsv.exe进程,这就一定是病 & l; ?! t* n! k! A
毒伪装的了。
8 Q) E2 Q: g4 i$ l# k限于篇幅,关于常见进程的介绍就到这里,我们平时在检查进程的时候如果发现有可 7 ~& H5 t- R2 z
疑,只要根据两点来判断:1.仔细检查进程的文件名;2.检查其路径。通过这两点, , u" t- z. b) u* N
一般的病毒进程肯定会露出马脚。
2 M0 G( M* v1 C' r找个管理进程的好帮手
9 \/ U" D s/ C5 z$ _+ j系统内置的“任务管理器”功能太弱,肯定不适合查杀病毒。因此我们可以使用专业 5 |! T/ x Y! P6 h9 _
的进程管理工具,例如procexp。procexp可以区分系统进程和一般进程,并且以不同 9 \3 u7 D9 u. x$ f
的颜色进行区分,让假冒系统进程的病毒进程无处可藏。
a4 |- m$ A1 }3 y" N! w7 H运行procexp后,进程会被分为两大块,“system idle process”下属的进程属于系
5 y6 ~! l9 C. i- G5 k# s' q$ o2 _统进程,
0 ~3 w8 P) c6 v+ Z2 ^! E! |explorer.exe”下属的进程属于一般进程。我们介绍过的系统进程svchost.exe、winlogon
( ]) f8 u* ^2 A3 _! Z.exe等都隶属于“system idle process”,如果你在“explorer.exe”中发现了svchost Z6 t( I2 n, n0 i+ E/ T. q
.exe,那么不用说,肯定是病毒冒充的。 0 I* _- z- k* T; W
至于病毒采用的“借尸还魂”大法——dll插入技术,我们曾讲解过破解方法,通过 5 }2 x3 s& l' ?' Q7 Y$ j
查看其dll文件的签名即可,这点同样可以在procexp中做到,在此不再阐述。
6 I3 i8 a3 D# O小贴士:在软件的主界面我们可能看不到进程名和进程所对应的可执行文件,我们可 # T5 O( x- @0 H7 D9 X
以点击其“查看”菜单→“选择列”,勾选“进程名称”和“映像路径”,确定保存 # J! q" c1 H. C/ H( H
即可。 |
|