以下专杀源码针对《Autorun型新病毒rundll.exe分析》提到的病毒。
我已经有了自己的一套病毒专杀模版(VBS编写),完全原创。此模版我可以共享出来。大虾们就可以一笑而过了,毕竟这样的专杀相对于其他语言编写的有点“弱智”,其实我认为VBS写的专杀并不是不好,就连bat也可以写专杀。非要VC++、VB来写专杀吗?我感觉都一样!
on error resume next
msgbox "本专杀有ycosxhack提供http://hi.baidu.com/ycosxhack!",64,"U盘病毒rundll.exe专杀"
'-----------------病毒进程结束模块开始-----------------
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='rundll.exe'")
for each i in p
i.terminate
next
on error resume next
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='rundll16.exe'")
for each i in p
i.terminate
next
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='c_10083.nls'")
for each i in p
i.terminate
next
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='npkpdb.dll'")
for each i in p
i.terminate
next
'-----------------病毒进程结束模块终止-----------------
'-----------------病毒文件删除模块开始-----------------
set fso=createobject("scripting.filesystemobject")
set v1=fso.getfile("c:\windows\system32\rundll.exe")
set v2=fso.getfile("c:\windows\system32\rundll16.exe")
set v3=fso.getfile("c:\windows\system32\rundll86.exe")
set v4=fso.getfile("c:\windows\system32\npkpdb.dll")
set v5=fso.getfile("c:\windows\system32\c_10083.nls")
set v6=fso.getfile("c:\windows\system32\UTF-8.nls")
set v7=fso.getfile("c:\windows\system32\rundll32.exe")
v1.attributes=0
v2.attributes=0
v3.attributes=0
v4.attributes=0
v5.attributes=0
v6.attributes=0
v7.attributes=0
v1.delete
v2.delete
v3.delete
v4.delete
v5.delete
v6.delete
v7.delete
'-----------------病毒文件删除模块终止-----------------
'-----------------遍历删除各盘符根目录下病毒文件模块开始-----------------
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&":\rundll.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.regwrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr",0,"REG_DWORD"
reg.regwrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools",0,"REG_DWORD"
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue",1,"REG_DWORD"
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\DefaultValue",2,"REG_DWORD"
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\NOHIDDEN\CheckedValue",2,"REG_DWORD"
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\NOHIDDEN\DefaultValue",2,"REG_DWORD"
reg.regwrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoRun",0,"REG_DWORD"
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit","C:\WINDOWS\system32\userinit.exe,"
reg.regdelete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\System"
reg.regdelete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Run a DLL as an App"
reg.regdelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoFolderOptions"
'-----------------注册表操作模块终止-----------------
'-----------------系统文件恢复模块开始-----------------
fso.getfile("rundll32.exe").copy("c:\windows\system32\rundll32.exe")
fso.getfile("rundll32.exe").copy("C:\WINDOWS\system32\dllcache\rundll32.exe")
'-----------------系统文件修复模块终止-----------------
msgbox "病毒清除成功,请重启电脑!",64,"U盘病毒rundll.exe专杀"
以上VBS代码就是这次“Autorun型新病毒rundll.exe”的专杀源码了,完整文件可以到我网盘下载http://ycosxhack.ys168.com/,“病毒专杀”目录,文件名为“U盘病毒rundll.exe专杀-余弦.rar”。rundll.exe病毒样本也可以到我网盘上下载,“病毒样本”目录,密码“buct”,文件名为“rundll.rar”。专杀使用方法:直接运行KillVirus.vbs文件即可。
根据此病毒专杀模版(VBS),你可以将你所了解的病毒行为,依照上面功能模块写,就可以写出自己的病毒专杀工具了,要是不想让别人知道你专杀的源码可以去加密……简单吧?当然这些功能对付更厉害的病毒就不够了,有些病毒添加服务项,修改系统文件信息等等,就没办法了吗?当然有了,自己想吧。还有反其道而行之,自己都可以写病毒了……^^