① 木马的检测
木马的检测、清除与防范
来源:CNCERT/CC广东分中心编写
木马程序不同于病毒程序,通常并不象病毒程序那样感染文件。木马一般是以寻找后门、
窃取密码和重要文件为主,还可以对电脑进行跟踪监视、控制、查看、修改资料等操作,具有很强的隐蔽性、
突发性和攻击性。由于木马具有很强的隐蔽性,用户往往是在自己的密码被盗、
机密文件丢失的情况下才知道自己中了木马。在这里将介绍如何检测自己的机子是否中了木马,
如何对木马进行清除和防范。
木马检测
1、查看开放端口
当前最为常见的木马通常是基于TCP/UDP协议进行Client端与Server端之间的通讯的,
这样我们就可以通过查看在本机上开放的端口,看是否有可疑的程序打开了某个可疑的端口。
例如冰河使用的监听端口是7626,Back Orifice 2000使用的监听端口是54320等。
假如查看到有可疑的程序在利用可疑端口进行连接,则很有可能就是中了木马。
查看端口的方法有几种:
(1)使用Windows本身自带的netstat命令
C:\>netstat -an
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:113 0.0.0.0:0 LISTENING
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1026 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1033 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1230 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1232 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1239 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1740 0.0.0.0:0 LISTENING
TCP 127.0.0.1:5092 0.0.0.0: LISTENING
TCP 127.0.0.1:5092 127.0.0.1:1748 TIME_WAI
TCP 127.0.0.1:6092 0.0.0.0:0 LISTENING
UDP 0.0.0.0:69 *:*
UDP 0.0.0.0:445 *:*
UDP 0.0.0.0:1703 *:*
UDP 0.0.0.0:1704 *:*
UDP 0.0.0.0:4000 *:*
UDP 0.0.0.0:6000 *:*
UDP 0.0.0.0:6001 *:*
UDP 127.0.0.1:1034 *:*
UDP 127.0.0.1:1321 *:*
UDP 127.0.0.1:1551 *:*
(2)使用windows2000下的命令行工具fport
E:\software>Fport.exe
FPort v2.0 - TCP/IP Process to Port Mapper
Copyright 2000 by Foundstone, Inc.
http://www.foundstone.com
Pid Process Port Proto Path
420 svchost -> 135 TCP E:\WINNT\system32\svchost.exe
8 System -> 139 TCP
8 System -> 445 TCP
768 MSTask -> 1025 TCP E:\WINNT\system32\MSTask.exe
8 System -> 1027 TCP
8 System -> 137 UDP
8 System -> 138 UDP
8 System -> 445 UDP
256 lsass -> 500 UDP E:\WINNT\system32\lsass.exe
(3)使用图形化界面工具Active Ports
这个工具可以监视到电脑所有打开的TCP/IP/UDP端口,还可以显示所有端口所对应的程序所在的路径,
本地IP和远端IP(试图连接你的电脑IP)是否正在活动。这个工具适用于Windows NT/2000/XP平台。
2、查看win.ini和system.ini系统配置文件
查看win.ini和system.ini文件是否有被修改的地方。
例如有的木马通过修改win.ini文件中windows节 的“load=file.exe ,run=file.exe”语句进行自动加载。
此外可以修改system.ini中的boot节,实现木马加载。
例如 “妖之吻” 病毒,将“Shell=Explorer.exe” (Windows系统的图形界面命令解释器)
修改成“Shell=yzw.exe”,在电脑每次启动后就自动运行程序yzw.exe。
修改的方法是将“shell=yzw.exe”还原为“shell=explorer.exe”就可以了。
3、查看启动程序
如果木马自动加载的文件是直接通过在Windows菜单上自定义添加的,
一般都会放在主菜单的“开始->程序->启动”处,
在Win98资源管理器里的位置是“C:\windows\start menu\programs\启动”处。
通过这种方式使文件自动加载时,一般都会将其存放在注册表中下述4个位置上:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\Explorer\Shell Folders
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\Explorer\User Shell Folders
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\Explorer\User Shell Folders
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\Explorer\Shell Folders
检查是否有可疑的启动程序,便很容易查到是否中了木马。
在Win98系统下,还可以直接运行Msconfig命令查看启动程序和system.ini、win.ini、autoexec.bat等
文件。
4、查看系统进程
木马即使再狡猾,它也是一个应用程序,需要进程来执行。可以通过查看系统进程来推断木马是否存在。
在Windows NT/XP系统下,按下“CTL+ALT+DEL”,进入任务管理器,就可看到系统正在运行的全部进程。
在Win98下,可以通过Prcview和winproc工具来查看进程。查看进程中,要求你要对系统非常熟悉,
对每个系统运行的进程要知道它是做什么用的,这样,木马运行时,
就很容易看出来哪个是木马程序的活动进程了。
5、查看注册表
木马一旦被加载,一般都会对注册表进行修改。一般来说,
木马在注册表中实现加载文件一般是在以下等处:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\RunServices
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\RunServices
此外在注册表中的HKEY_CLASSES_ROOT\exefile\shell\open\command=
““%1” %*”处,如果其中的“%1”被修改为木马,那么每次启动一个该可执行文件时木马就会启动一次,
例如着名的冰河木马就是将TXT文件的Notepad.exe改成了它自己的启动文件,
每次打开记事本时就会自动启动冰河木马,做得非常隐蔽。
还有“广外女生”木马就是在HKEY_CLASSES_ROOT\exefile\shell\open
\command=““%1” %*”处将其默认键值改成"%1" %*",
并在HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\RunServices添加了名称为"Diagnostic Configuration"的键值;
6、使用检测软件
上面介绍的是手工检测木马的方法,此外,我们还可以通过各种杀毒软件、
防火墙软件和各种木马查杀工具等检测木马。各种杀毒软件主要有:KV3000,Kill3000、瑞星等,
防火墙软件主要有国外的Lockdown,国内的天网、金山网镖等,各种木马查杀工具主要有:The Cleaner、
木马克星、木马终结者等。这里推荐一款工具防护工具McAfee VirusScan ,
它集合了入侵防卫及防火墙技术,为个人电脑和文件服务器提供全面的病毒防护。
木马清除
检测到电脑中了木马后,就要根据木马的特征来进行清除。查看是否有可疑的启动程序、
可疑的进程存在,是否修改了win.ini、system.ini系统配置文件和注册表。
如果存在可疑的程序和进程,就按照特定的方法进行清除。
主要的步骤都不外乎以下几个:
(但并不是所有的木马清除都能够根据下列步骤删除,这里只是介绍清除木马的基本方法)
1、删除可疑的启动程序
查看系统启动程序和注册表是否存在可疑的程序后,判断是否中了木马,
如果存在木马,则除了要查出木马文件并删除外,还要将木马自动启动程序删除。
例如Hack.Rbot病毒、后门就会拷贝自身到一些固定的windows自启动项中:
WINDOWS\All Users\Start Menu\Programs\StartUp
WINNT\Profiles\All Users\Start Menu\Programs\Startup
WINDOWS\Start Menu\Programs\Startup
Documents and Settings\All Users\Start Menu\Programs\Startup
查看一下这些目录,如果有可疑的启动程序,则将之删除。
2、恢复win.ini和system.ini系统配置文件的原始配置
许多病毒会将win.ini和system.ini系统配置文件修改,使之能在系统启动时加载和运行木马程序。
例如电脑中了“妖之吻”病毒后,病毒会将system.ini中的boot节的
“Shell=Explorer.exe”字段修改成“Shell=yzw.exe”,清除木马的方法是把system.ini给恢复原始配置,
即“Shell=yzw.exe”修改回“Shell=Explorer.exe”,再删除掉病毒文件即可。
TROJ_BADTRANS.A病毒,也会更改win.ini以便在下一次重新开机时执行木马程序。
主要是将win.ini中的windows节的“Run=”字段修改成“Run= C:%WINDIR%INETD.EXE”字段。
执行清除的步骤如下:
(1)打开win.ini文本文件,将字段“RUN=C:%WINDIR%INETD.EXE”中 等号后面的字符删除,
仅保留“RUN=”。
(2)将被TROJ_BADTRANS.A病毒感染的文件删除。
3、停止可疑的系统进程
木马程序在运行时都会在系统进程中留下痕迹。通过查看系统进程可以发现运行的木马程序,
在对木马进行清除时,当然首先要停掉木马程序的系统进程。
例如Hack.Rbot病毒、后门除了将自身拷贝到一些固定的windows自启动项中外,
还在进程中运行wuamgrd.exe程序,修改了注册表,以便病毒可随机自启动。
在看到有木马程序在进程中运行,则需要马上杀掉进程,并进行下一步操作,修改注册表和清除木马文件。
4、修改注册表
查看注册表,将注册表中木马修改的部分还原。例如上面所提到的Hack.Rbot病毒、后门,
向注册表的以下地方:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion \RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
\RunServices
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion
\Run
添加了键值"Microsoft Update" = "wuamgrd.exe",以便病毒可随机自启动。
这就需要我们进入注册表,将这个键值给删除。注意:可能有些木马会不允许执行.exe文件,
这样我们就需要先将regedit.exe改成系统能够运行的,比如可以改成regedit.com。
这里就说说如何清除Hack.Rbot病毒、后门的。
(1)将进程中运行的wuamgrd.exe进程停止,这是一个木马程序;
(2)将Hack.Rbot拷贝到windows启动项中的启动文件删除;
(3)将Hack.Rbot添加到注册表中的键值"Microsoft Update"=
"wuamgrd.exe"删除;
(4)手工或用专杀工具删除被Hack.Rbot病毒感染的文件。并全面检查系统。
5、使用杀毒软件和木马查杀工具进行木马查杀
常用的杀毒软件包括KV3000、瑞星、诺顿等,这些软件对木马的查杀是比较有效的,
但是要注意时刻更新病毒库,而且对于一些木马查杀不彻底,在系统重新启动后还会自动加载。
此外,你还可以使用The Cleaner、木马克星、木马终结者等各种木马转杀工具对木马进行查杀。
这里推荐一款工具Anti-Trojan Shield,这是一款享誉欧洲的专业木马侦测、拦截及清除软件。
可以在http://www.atshield.com网站下载。
木马防范
随着网络的普及,硬件和软件的高速发展,网络安全显得日益重要。对于网络中比较流行的木马程序,
传播时间比较快,影响比较严重,因此对于木马的防范就更不能疏忽。
我们在检测清除木马的同时,还要注意对木马的预防,做到防范于未然。
1、不要随意打开来历不明的邮件
现在许多木马都是通过邮件来传播的,当你收到来历不明的邮件时,请不要打开,应尽快删除。
并加强邮件监控系统,拒收垃圾邮件。
2、不要随意下载来历不明的软件
最好是在一些知名的网站下载软件,不要下载和运行那些来历不明的软件。
在安装软件的同时最好用杀毒软件查看有没有病毒,之后才进行安装。
3、及时修补漏洞和关闭可疑的端口
一般木马都是通过漏洞在系统上打开端口留下后门,以便上传木马文件和执行代码,
在把漏洞修补上的同时,需要对端口进行检查,把可疑的端口关闭。
4、尽量少用共享文件夹
如果必须使用共享文件夹,则最好设置帐号和密码保护。注意千万不要将系统目录设置成共享,
最好将系统下默认共享的目录关闭。Windows系统默认情况下将目录设置成共享状态,这是非常危险的。
5、运行实时监控程序
在上网时最好运行反木马实时监控程序和个人防火墙,并定时对系统进行病毒检查。
6、经常升级系统和更新病毒库
经常关注厂商网站的安全公告,这些网站通常都会及时的将漏洞、木马和更新公布出来,
并第一时间发布补丁和新的病毒库等。
采用注册表来管理系统配置,主要是为了提高系统的稳定性,平时操作系统出现的一些问题,
诸如系统无法启动、应用程序无法运行、系统不稳定等情况,很多都是因为注册表出现错误而造成的,
而通过修改相应的数据就能解决这些问题,所以,掌握如何正确备份、恢复注册表的方法,
可以让每一个用户更加得心应手地使用自己的电脑。
一、利用注册表编辑器手工备份注册表
注册表编辑器(Regedit)是操作系统自带的一款注册表工具,通过它就能对注册表进行各种修改。
当然,"备份"与"恢复"注册表自然是它的本能了。
(1)通过注册表编辑器备份注册表
由于修改注册表有时会危及系统的安全,因此不管是WINDOWS 98还是WINDOWS 2000甚至WINDOWS XP,
都把注册表编辑器"藏"在了一个非常隐蔽的地方,要想"请"它出山,必须通过特殊的手段才行。
点击"开始"菜单,选择菜单上的"运行"选项,在弹出的"运行"窗口中输入"Regedit"后,点击"确定"按钮,
这样就启动了注册表编辑器。
点击注册表编辑器的"注册表"菜单,再点击"导出注册表文件"选项,
在弹出的对话框中输入文件名"regedit",将"保存类型"选为"注册表文件",再将"导出范围"设置为"全部",
接下来选择文件存储位置,最后点击"保存"按钮,就可将系统的注册表保存到硬盘上。
完成上述步骤后,找到刚才保存备份文件的那个文件夹,就会发现备份好的文件已经放在文件夹中了。
(2)在DOS下备份注册表
当注册表损坏后,WINDOWS(包括"安全模式")无法进入,此时该怎么办呢?
在纯DOS环境下进行注册表的备份、恢复是另外一种补救措施,下面来看看在DOS环境下,
怎样来备份、恢复注册表。
在纯DOS下通过注册表编辑器备份与恢复注册表前面已经讲解了利用注册表编辑器在WINDOWS环境下备份、
恢复注册表,其实"Regedit.exe"这个注册表编辑器不仅能在WINDOWS环境中运行,也能在DOS下使用。
虽然在DOS环境中的注册表编辑器的功能没有在WINDOWS环境中那么强大,但是也有它的独到之处。
比如说通过注册表编辑器在WINDOWS中备份了注册表,可系统出了问题之后,无法进入WINDOWS,
此时就可以在纯DOS下通过注册表编辑器来恢复注册表。
应该说在DOS环境中备份注册表的情况还是不多见的,一般在WINDOWS中备份就行了,
不过在一些特殊的情况下,这种方式就显得很实用了。
进入DOS后,再进入C盘的WINDOWS目录,在该目录的提示符下输入"regedit"后按回车键,
便能查看"regedit"的使用参数。
通过"Regedit"备份注册表仍然需要用到"system.dat"和"user.dat"这两个文件,
而该程序的具体命令格式是这样的:
Regedit /L:system /R:user /E filename.reg Regpath
参数含义:
/L:system指定System.dat文件所在的路径。
/R:user指定User.dat文件所在的路径。
/E:此参数指定注册表编辑器要进行导出注册表操作,在此参数后面空一格,输入导出注册表的文件名。
Regpath:用来指定要导出哪个注册表的分支,如果不指定,则将导出全部注册表分支。在这些参数中
,"/L:system"和"/R:user"参数是可选项,如果不使用这两个参数,
注册表编辑器则认为是对WINDOWS目录下的"system.dat"和"user.dat"文件进行操作。
如果是通过从软盘启动并进入DOS,
那么就必须使用"/L"和"/R"参数来指定"system.dat"和"user.dat"文件的具体路径,
否则注册表编辑器将无法找到它们。
比如说,如果通过启动盘进入DOS,
则备份注册表的命令是"Regedit /L:C:\windows\/R:C:\windows\/e regedit.reg",
该命令的意思是把整个注册表备份到WINDOWS目录下,其文件名为"regedit.reg"。
而如果输入的是"regedit /E D:\regedit.reg"这条命令,
则是说把整个注册表备份到D盘的根目录下(省略了"/L"和"/R"参数),其文件名为"Regedit.reg"。
( 3)用注册表检查器备份注册表
在DOS环境下的注册表检查器Scanreg.exe可以用来备份注册表。
命令格式为:
Scanreg /backup /restore /comment
参数解释:
/backup用来立即备份注册表
/restore按照备份的时间以及日期显示所有的备份文件
/comment在/restore中显示同备份文件有关的部分
注意:在显示备份的注册表文件时,压缩备份的文件以 .CAB文件列出,
CAB文件的后面单词是Started或者是NotStarted,Started表示这个文件能够成功启动Windows,
是一个完好的备份文件,NotStarted表示文件没有被用来启动Windows,
因此还不能够知道是否是一个完好备份。
比如:如果我们要查看所有的备份文件及同备份有关的部分,命令如下:
Scanreg /restore /comment
注册表恢复
注册表中存放着计算机软硬件的配置信息,病毒、网页恶意代码往往要修改注册表,
平时安装、操作软件也会使注册表内容发生变化。当计算机工作不正常时,
往往可以通过恢复注册表来修复。所以,平时我们应经常备份注册表(运行regedit,导出注册表文件)。
这样,需要时就可以导入过去某个备份,使电脑恢复正常。
如果平时没有导出注册表,则只好通过运行 scanreg /restore来恢复注册表,
或运行scanreg
/fix来修复注册表。不过该命令应该在DOS下执行。对于win98系统,开机时按F8,
选择Command Prompt
Only进入DOS;对于WinMe系统,则可以运行Command进入DOS。当然,也可以用软盘引导系统,
进入C:\windows\command子目录,然后执行上述修复注册表的命令。
目前网页恶意代码最可恶的破坏行为之一是在注册表中禁止了程序运行。
此时因IE无法运行,不能使用在线自动修复;且“微机数据维护”等修复软件也不能运行;
同样也不能导入注册表文件来修复注册表。此时唯一的办法就是在DOS下运行C:\windows
scanreg /restore来修复注册表。
② 如何才能知道电脑有没有中“木马病毒”
具体如下:
一、CPU的利用率在电脑没有处理任何任务的时候通常都是百分之零到百分之一的如果系统没有运行任何程序和任务而且利用率超过10%那一定是有古怪的,这个时候就千万要注意了。
二、进程,电脑在没有任何处理任务和程序的时候一般进程都是很熟悉的,如果进程中有很多莫名其妙的点exe的进程那么这个时候可要注意了。一般系统进程都是很标准的英文或者英文所限,例如alg.exe,如果实在无法判断某一个进程是否为病毒木马程序,可以把这个进程的名字记下来,网络一下马上就会有答案了!
三、看网络流量及端口号
看网络流量这里以360防火墙为例吧