令人费解的是,自己明明已经删除了木马文件和相应的启动项,却为什么不能恢复正常呢?不少用户都很疑惑,难道删除的木马竟然恶意修改了操作系统核心吗?
一、什么是并联方式
令人费解的是,自己明明已经删除了木马文件和相应的启动项,却为什么不能恢复正常呢?不少用户都很疑惑,难道删除的木马竟然恶意修改了操作系统核心吗?要想解开这些疑惑,我们就不得不从什么是文件的“并联方式”说起,因为这种木马修改了应用程序文件(通常是EXE)的并联方式。说起Windows系统,就不能不谈到注册表,注册表在Windows系统中的地位是高高在上的,如果用户使用的是Windows系统,而至今还不知道什么注册表的话,那么还是先找些注册表和Windows系统原理的资料好好补习补习吧!
在Windows系统中,几乎所有文件的打开操作都是通过注册表内相应键值指定的应用程序来执行的,这个部分位于注册表的“HKEY_CLASSES_ROOT”主键内。当系统收到一个文件名请求时,就会根据这个文件的后缀名结合注册表里存储的相应键值来识别文件类型,从而调用相应的程序将其打开、执行。无论是文件夹、文档还是应用程序,Windows系统都将其视为一个文件,当然也拥有文件类型,同样可以用其他方式开启。例如:各种音频、视频文件(如:rm、avi、wmv、mp3等)都可以使用两种以上的程序将其打开播放。只不过 Windows系统将应用程序(EXE)设置它的调用程序为“"%1" %*”,让系统内核理解为“可执行请求”,它就会为使用这种打开方式的文件创建进程,最终文件就被加载执行了。如果有其他的程序更改了这个键值, Windows就会调用那个指定的文件来开启它。
二、木马原理
那些文件并联木马程序会把EXE后缀名对应的exefile类型的“打开方式”改成为“木马程序”%1" %*”,运行程序时系统就会先为“木马程序”创建进程,把紧跟着的文件名作为参数传递给木马执行,这样用户就被木马欺骗了,用户会觉得程序已经被正常启动了。因为木马程序被作为所有EXE文件的调用程序,使得它可以长期驻留内存,每次都能恢复自身文件,所以在一般用户看来,这个木马就做到了“永生不死”或认为是又“死灰复燃”了,其实用户了解这些木马的原理后,就知道它既不能“长命百岁”,也没有“死而复生”的能力。
三、后果严重
然而,用户一旦将木马程序删除,Windows系统就会找不到相应的调用程序,于是正常程序就无法执行了,这就是所谓的“所有程序都无法运行”的情况来源。并不是木马更改了系统核心,当然用户也就没必要因此重装整个操作系统啦。
四、根除方法
根除这种木马的最简单方法只需要查看EXE文件的打开方式被指向了什么程序,立即停止这个程序的进程,如果它还产生了其他木马文件的话,也一起停止。紧随其后,在保持注册表编辑器开启着的情况下(否则你的所有程序都会打不开了)删除掉所有木马文件(前提是用户知道哪些是目木马文件,所以还不熟悉系统的用户抓紧时间恶补吧),把exefile的“打开方式”项
(HKEY_CLASSES_ROOT\exefile\shell\open\command)
改回原来的“”%1” %*”即可。
注册表键值
如果删除木马前忘记把并联方式改回来,就会发现程序打不开了,这时候千万不要乱了方寸。如果你是Win9x用户,请使用“外壳替换大法”:重启系统后,按F8进入启动菜单选择MS-DOS模式,把Explorer.exe随便改个名字,再把REGEDIT.EXE改名为Explorer.exe,再次重启后会发现进入Windows只剩下一个注册表编辑器了,赶快把并联方式改回来吧!再次重启的时候,别忘记恢复以前的Explorer.exe程序名。
对于Win200用户而言,这个操作就更简单了,只要在开机时按F8进入启动菜单,选择“命令提示符的安全模式”进行启动,系统就会自动调用命令提示符界面作为外壳,直接在里面输入REGEDIT即可打开注册表编辑器!
而XP用户甚至不需要重启系统,就可以直接在“打开方式”里输入“CMD”后回车,就能打开“命令提示符”界面,然后运行注册表编辑器REGEDIT.EXE就OK了。接下来需要做的就是把程序的打开方式改成“”%1” %*”即可。