接着Trojan-PSW.Win32.OnlineGames.kw病毒分析,我写了相关的专杀,此专杀最好在安全模式下进行。否则你还没杀完毒电脑就又重启了,并且此毒在电脑再次启动时会有许多不确定因素出现,比如一些新的病毒进程出现(它们互相保护着)。从上面的病毒分析报告中就可以看出电脑在启动时将加载至少八个病毒文件。所以强烈建议在安全模式下杀毒!
关于此专杀的一些说明:
点击此下载专杀:Trojan-PSW.Win32.OnlineGames.kw病毒专杀。专杀压缩包中附有简要操作说明。
在写这个专杀过程中,顺便对这个模板进行了优化,使得代码更加简短高效,下面的代码即为Trojan-PSW.Win32.OnlineGames.kw的专杀源码:
'-----------------病毒专杀VBS模板源码开始-----------------
on error resume next
msgbox "本专杀由ycosxhack提供http://hi.baidu.com/ycosxhack!",64,"木马Trojan-PSW.Win32.OnlineGames.kw专杀"
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='explorer.exe' or name='winform.exe' or name='IEXPLORE.EXE' or name='mppds.exe' or name='upxdnd.exe' or name='c0nime.exe' or name='Kvsc3.exe' or name='msccrt.exe' or name='cmdbcs.exe' or name='javavm.exe' or name='systemt.exe' or name='ALP.exe' or name='cmd.exe'")
for each i in p
i.terminate
next
'将病毒进程名通过逻辑判断符or集中在了一起,这样扩充也就方便多了。
set fso=createobject("scripting.filesystemobject")
set del=wscript.createobject("wscript.shell")
dim d(29)
dim v(29)
d(0)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\nwizAsktao.dll")
d(1)=del.ExpandEnvironmentStrings("%temp%\c0nime.exe")
d(2)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\servet.exe")
d(3)=del.ExpandEnvironmentStrings("%SystemRoot%\upxdnd.exe")
d(4)=del.ExpandEnvironmentStrings("%SystemRoot%\winform.exe")
d(5)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\winform.dll")
d(6)=del.ExpandEnvironmentStrings("%SystemRoot%\mppds.exe")
d(7)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\mppds.dll")
d(8)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\upxdnd.dll")
d(9)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\SMSSS.exe")
d(10)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\LSASSS.exe")
d(11)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\systemt.exe")
d(12)=del.ExpandEnvironmentStrings("%SystemRoot%\Kvsc3.exe")
d(13)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\Kvsc3.dll")
d(14)=del.ExpandEnvironmentStrings("%SystemRoot%\msccrt.exe")
d(15)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\msccrt.dll")
d(16)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\ALP.exe")
d(17)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\nwizAsktao.exe")
d(18)=del.ExpandEnvironmentStrings("%SystemRoot%\cmdbcs.exe")
d(19)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\MSTCS.exe")
d(20)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\mh100.dll")
d(21)=del.ExpandEnvironmentStrings("%SystemRoot%\javavm.exe")
d(22)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\javavm.dll")
d(23)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\TASKMRG.exe")
d(24)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\mh100.exe")
d(25)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\cmdbcs.dll")
d(26)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\drivers\usbine.sys")
d(27)=del.ExpandEnvironmentStrings("%SystemRoot%\system32\ALP.exe")
d(28)=del.ExpandEnvironmentStrings("%SystemRoot%\temp\c0nime.exe")
for i=0 to 28
set v(i)=fso.getfile(d(i))
v(i).attributes=0
v(i).delete
next
'这里创建了两个数组d()与v(),接着for循环进行病毒文件的删除操作。代码是不是简短多了?
set drvs=fso.drives
for each drv in drvs
if drv.drivetype=1 or drv.drivetype=2 or drv.drivetype=3 or drv.drivetype=4 then
set w=fso.getfile(drv.driveletter&":\servet.exe")
w.attributes=0
w.delete
set u=fso.getfile(drv.driveletter&":\autorun.inf")
u.attributes=0
u.delete
end if
next
set reg=wscript.createobject("wscript.shell")
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\winform"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\mppds"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\upxdnd"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Kvsc3"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\msccrt"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\cmdbcs"
reg.regdelete "HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\load"
reg.regdelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\javavm"
set fso=createobject("scripting.filesystemobject")
set drvs=fso.drives
for each drv in drvs
if drv.drivetype=1 or drv.drivetype=2 or drv.drivetype=3 or drv.drivetype=4 then
fso.createfolder(drv.driveletter&":\autorun.inf")
fso.createfolder(drv.driveletter&":\autorun.inf\hack..\")
set fl=fso.getfolder(drv.driveletter&":\autorun.inf")
fl.attributes=3
end if
next
set fso=nothing
msgbox "病毒清除成功,请重启电脑!",64,"木马Trojan-PSW.Win32.OnlineGames.kw专杀"
'-----------------病毒专杀VBS模板源码终止-----------------
由于这个病毒会将自己的dll(nwizAsktao.dll与mh100.dll)注入到explorer.exe中,所以我删此毒时并没进行dll的释放操作,而是直接将explorer.exe进程结束,杀完毒后explorer.exe会自动恢复。这样的投机会导致一个问题,如果病毒将dll注入到其他重要的进程中(比如winlogon.exe),那这样的做法就不可取了,不过这时可以按照病毒专杀VBS模板的“插入型dll病毒释放模块”中介绍的操作即可。有BUG请指出。