现在,越来越多的木马采用双进程守护技术保护自己,就是两个拥有同样功能的代码程序,不断地检测对方是否已经被别人终止,如果发现对方已经被终止了,那么又开始创建对方,这给我们的查杀带来很大的困难。不过,此类木马也有“软肋”,它只通过进程列表进程名称来判断被守护进程是否存在。这样,我们只要用记事本程序来替代木马进程,就可以达到“欺骗”守护进程的目的。
1.双进程木马的查杀
下面以某变种木马的查杀为例。中招该木马后,木马的“internet.exe”和“systemtray.exe”两个进程会互相监视。当然,我们中招的时候大多不知道木马具体的监护进程。不过,通过进程名称可以知道,“systemtray.exe”是异常的进程,因为系统正常进程中没有该进程。下面使用替换方法来查杀该木马。
第一步:单击“开始→运行”,输入“Msinfo32”打开系统信息窗口,展开“系统摘要→软件环境→正在运行任务”,这里可以看到“systemtray.exe”路径在“C:\Windows\System32”下。
第二步:打开“C:\Windows\System32”,复制记事本程序“notepad.exe”到“D:\” ,同时重命名为“systemtray.exe”。
第三步:打开记事本程序,输入下列代码,保存为“shadu.bat”,放置在桌面(括号为注释,无须输入):
@echo off
Taskkill /f /im systemtray.exe (使用taskkill命令强行终止“systemtray.exe”进程)
Delete C:\Windows\System32\systemtray.exe (删除病毒文件)
Copy d:\systemtray.exe C:\Windows\System32\(替换病毒文件)
第四步:现在只要在桌面运行“shadu.bat”,系统会将“systemtray.exe”进程终止并删除,同时把改名的记事本程序复制到系统目录。这样,守护进程会“误以为”被守护进程还存在,它会立刻启动一个记事本程序。
第五步:接下来我们只要找出监视进程并删除即可,在命令提示符输入:
“taskkill /f /im systemtray.exe ”,将守护进程再生的“systemtray.exe”终止,可以看到“systemtray.exe”进程是由“PID 3288的进程”创建的,打开任务管理器可以看到“PID 3288的进程”为“internet.exe”,这就是再生进程的“元凶”。
第六步:按照第一步方式,打开系统信息窗口可以看到“internet.exe”也位于系统目录,终止“internet.exe”进程并进入系统目录把上述两个文件删除即可。
2.使病毒失效并删除
大家知道,文件都是由编码组成的,记事本程序理论上可以打开任意文件(只不过有些会显示为乱码)。我们可以将病毒打开方式关联到记事本,使之启动后变成由记事本打开,失去作恶的功能。比如,一些顽固病毒常常会在注册表的“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run”等启动位置生成难以删除的键值,达到恶意启动的目的。下面使用记事本来“废”掉病毒的生命力。
第一步:启动命令提示符,输入“ftype exefile=notepad.exe %1”,把所有EXE程序打开方式关联到记事本程序,重启系统后我们会发现桌面自动启动好几个程序,这里包括系统正常的程序如输入法、音量调整程序等,当然也包括恶意启动的流氓程序,不过现在都被记事本打开了。
第二步:根据记事本窗口标题找到病毒程序,比如上例的systemtray.exe程序,找到这个记事本窗口后,单击“文件→另存为”,我们就可以看到病毒具体路径在“C:\Windows\System32”下。现在关掉记事本窗口,按上述路径提示进入系统目录删除病毒即可。
第三步:删除病毒后就可以删除病毒启动键值了,接着重启电脑,按住F8,然后在安全模式菜单选择“带命令提示的安全模式”,进入系统后会自动打开命令提示符。输入“ftype exefile="%1"%*”恢复exe文件打开方式即可。