百度首页 | 百度空间
 
查看文章
 
病毒专杀VBS模板更新[07.5.15]
2007-04-29 22:26

08.03.09最新更新:
miniK(VBS杀毒引擎)v1.0发布,详情

自从发布了《写了款Worm.Win32.VB.fw病毒专杀》与《病毒rundll.exe专杀发布与源码共享》两篇文章中的病毒专杀后,我的病毒专杀VBS模板也开始考虑完善。这次增加了“HOSTS文件恢复功能模块”与“Autorun免疫功能模块”。本地服务的控制模块还在测试中……源码还是完全公开,这样的好处是有兴趣的朋友可以继续完善,多谢小GUMU看破红尘

07.4.30日更新如下:
1、“病毒文件删除模块”支持环境变量,这样使得此专杀模板的通用性增强!
2、“HOSTS文件恢复模块”支持换行写入要屏蔽的网址功能,符合HOSTS文件格式标准。

07.5.04日更新如下:
1、添加“ARP病毒欺骗--客户端免疫模块”,这是对付局域网ARP欺骗的一种临时方法。
2、添加“插入型dll病毒释放模块”,调用了第三方cmd程序ps.exe。这个程序可以到我网盘下载
http://ycosxhack.ys168.com/,“病毒专杀”目录,文件名为“ps.rar”,附使用说明。
3、这次将各个功能模块优化,每个功能模块可以单独使用。
4、考虑到代码的高效与简洁,在有些地方调用cmd程序;且由于加进了环境变量使代码通用性增强!

07.5.13更新如下:
解决反斜杠\问题,具体请看这里:病毒专杀VBS模板更新:解决反斜杠\问题。模板编写重心开始转向WMI。

07.5.15更新如下:
在写Trojan-PSW.Win32.OnlineGames.kw病毒专杀时进行了代码的优化,增加数组等元素。具体请查看:Trojan-PSW.Win32.OnlineGames.kw专杀中的说明。

转载下面病毒专杀模板请保持模板信息的完整性,谢谢~~~

附:要学习VBS专杀的写法可以参考我以前这篇文章《VBS编程打造自己的病毒专杀工具》,抛砖引玉罢了……多谢小G,这套模板才得以及时趋于完善,不足之处自然还很多。也希望大家的加入。众人拾柴火焰高嘛。

'-----------------病毒专杀VBS模板源码开始-----------------
on error resume next
msgbox "本专杀有ycosxhack提供http://hi.baidu.com/ycosxhack!",64,"xxx病毒专杀"
'本专杀模板有ycosxhack(余弦函数)制作,我的博客:http://hi.baidu.com/ycosxhack,欢迎讨论。

'-----------------病毒进程结束模块开始-----------------
set w=getobject("winmgmts:")
set p=w.execquery("select * from win32_process where name='rundll.exe'")
for each i in p
i.terminate
next
'-----------------病毒进程结束模块终止-----------------

'-----------------插入型dll病毒释放模块开始-----------------
set WSHShell=wscript.createobject("wscript.shell")
WSHShell.run("ps /e * hook.dll"),0,true
'请将第三方程序ps.exe与本专杀放在同一目录下
'-----------------插入型dll病毒释放模块终止-----------------

'-----------------病毒文件删除模块开始-----------------
set fso=createobject("scripting.filesystemobject")
set del=wscript.createobject("wscript.shell")
d1=del.ExpandEnvironmentStrings("%temp%\rundll.exe")
d2=del.ExpandEnvironmentStrings("%SystemRoot%\rundll86.exe")
d3=del.ExpandEnvironmentStrings("%SystemRoot%\system32\rundll86.exe")
set v1=fso.getfile(d1)
set v2=fso.getfile(d2)
set v3=fso.getfile(d3)
set v4=fso.getfile("d:\virus\virus.exe") '没涉及到环境变量的可以直接这样写。
v1.attributes=0
v2.attributes=0
v3.attributes=0
v4.attributes=0
v1.delete
v2.delete
v3.delete
v4.delete
'-----------------病毒文件删除模块终止-----------------

'-----------------遍历删除各盘符根目录下病毒文件模块开始-----------------
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
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 fso=createobject("scripting.filesystemobject")
set reg=wscript.createobject("wscript.shell")
reg.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit", fso.GetSpecialFolder(1)&"\userinit.exe,","REG_SZ"
reg.regwrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools",0,"REG_DWORD"
reg.regdelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoFolderOptions"
'-----------------注册表操作模块终止-----------------

'-----------------系统文件恢复模块开始-----------------
set fso=createobject("scripting.filesystemobject")
fso.getfile("rundll32.exe").copy("c:\windows\system32\rundll32.exe")
fso.getfile("rundll32.exe").copy("C:\WINDOWS\system32\dllcache\rundll32.exe")
'-----------------系统文件修复模块终止-----------------

'-----------------HOST文件修复模块开始-----------------
set fso=createobject("scripting.filesystemobject")
set re=fso.OpenTextFile("C:\WINDOWS\system32\drivers\etc\hosts",2,0)
re.Writeline "127.0.0.1                 localhost"
re.Writeline "127.0.0.1                 www.你要屏蔽的恶意网址或IP.com"
re.Close
set re=nothing
'-----------------HOST文件修复模块终止-----------------

'-----------------Autorun免疫模块开始-----------------
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\免疫文件夹..\")
set fl=fso.getfolder(drv.driveletter&":\autorun.inf")
fl.attributes=3
end if
next
'-----------------Autorun免疫模块终止-----------------

'-----------------ARP病毒欺骗--客户端免疫模块开始-----------------
set WshShell=wscript.createobject("wscript.shell")
WshShell.run "arp -d",0
WshShell.run "arp -s 202.4.139.1 00-07-ec-23-f8-0a",0,true
'-----------------ARP病毒欺骗--客户端免疫模块终止-----------------

set fso=nothing
msgbox "病毒清除成功,请重启电脑!",64,"xxx病毒专杀"
'-----------------病毒专杀VBS模板源码终止-----------------

最后附上解除Autorun免疫文件夹的bat,下面红色部分为盘符,你可以继续添加……

@echo off
echo 解除autorun免疫……Ycosxhack制作
pause
for %%a in (c d e f) do rd %%a:\autorun.inf\免疫文件夹..\ & attrib -h -r -s -a %%a:\autorun.inf & rd %%a:\autorun.inf
@echo 解除免疫完成!
http://hi.baidu.com/ycosxhack
pause

完整病毒专杀VBS模板可以到我网盘下载:http://ycosxhack.ys168.com/,“病毒专杀”目录,文件名为“病毒专杀VBS模板.rar”,有缺陷之处还望指出:)


类别:Virus | 添加到搜藏 | 浏览() | 评论 (31)
 
最近读者:
 
网友评论:
1
2007-04-29 23:04
我加加文件夹免疫
 
2
2007-04-30 11:19
re.Write "127.0.0.1 localhost" 为什么要修改这个呢?
fl.attributes=3 是做什么的
呵呵 现在对杀毒有点了解了
 
3
2007-04-30 11:23
Autorun免疫文件夹是有什么作用呢 呵呵 太菜了 请教
 
4
2007-04-30 12:16
re.Write "127.0.0.1 localhost"覆盖hosts文件里的内容,将次内容写入。
fl.attributes=3将文件夹属性设置为只读与隐藏(1+2=3),1是只读,2是隐藏。它们的和就是只读与隐藏。
Autorun免疫文件夹的存在,在一定程度上限制了这类病毒的传染。^^
 
5
2007-04-30 12:21
是啊,主要是这个免疫文件夹..在起免疫作用
 
6
2007-04-30 18:17
恩 果然是隐藏 为什么要这样呢 有什么好处?
 
7
2007-04-30 18:19
只读+隐藏,病毒就不能轻易地直接删了。
 
8
2007-05-01 18:21
如果病毒死循环写autorun.inf,那可是件郁闷事……
 
9
2007-05-03 12:19
现在网页木马很常见,利用类似原理,搞个网页杀毒~呵呵,新鲜玩意......
 
10
2007-05-03 12:43
test好想法!我以前也想过,vbs、bat可以写。
javascript,vbscript肯定也可以写。不过这些写出来的照样要调用fso,wscript.shell,ado.stream等,估计也会被杀软杀。不过会有解决方法的。^^
 
11
2007-05-03 21:02
如果要清除插入系统进程中的恶意dll
那个专杀如何实现啊?
谢谢...
 
12
2007-05-03 21:10
这个问题我曾经与好友讨论过:
目前我还不知道如何仅用VBS来KILL插入正常进程的dll。
不过可以通过调用第三方dos命令来实现:X-PS。

调用命令:ps /e * hook.dll实现强制所有进程释放 hook.dll。这样这个dll被释放之后,就可以delete了。目前还在考虑如何通过VBS来实现,不过也是这会是段不短了代码……
 
13
2007-05-04 21:19
嗯.谢谢余弦兄弟的解惑.
呵呵,我是最近才开始对病毒产生了一点点兴趣的,所以经常光顾你的博客
博客写得很好,对我们这些入门级的爱好者来说,虽然看得不是蛮懂,但是也有不少启发...
谢谢...
 
14
2007-05-04 21:32
不用谢:)
 
15
2007-05-08 08:55
请检查 网盘里面病毒专杀VBS模版.rar里面的ps.exe文件 是不是被感染了病毒 我这里 瑞星和卡巴均报毒 win32.private.a
那个单放的ps.rar没事
 
16
2007-05-08 09:59
哦,非常的抱歉~~是我的疏忽。
我电脑里一直有这个感染型病毒。幸好,目前下载这个模板的人不多。
啊,~~赶快去换回来!
 
17
2007-06-01 11:43
如果要结束的进程名为svchost.exe.
在进程结束模块该怎么做呢?谢谢!
 
18
2007-06-01 12:36
svchost.exe不能结束,进程中的svchost.exe有5、6个。都结束了会很多问题出现,包括电脑突然重启……

这个进程,我们只能释放其中的病毒服务。至于释放可以调用第三方DOS命令,上面提到PS。当然VBS会提供类似的方法。我不知道。
 
19
2007-06-01 12:43
利用wmi应该可以实现结束指定映象路径的进程,命令行可以使用wmic,vbs就不清楚了,记得umu那里好像有相关的资料
 
20
2007-06-01 12:50
好,我会好好研究这个问题。
 
21
2007-06-01 14:33
关于进程结束模块--请问如何结束路径为c:\windows的svchost.exe的进程.谢谢了!
 
22
2007-06-01 15:34
http://hi.baidu.com/umu618/blog/item/ae316506dc2b767a0208819e.html
umu的帖子,看看吧,命令行和脚本的方法都有
 
23
2007-06-01 16:09
Set objWMI = GetObject( "winmgmts:{impersonationLevel=impersonate}\\" & _
strComputer & "\root\cimv2" )
Set colProcesses = objWMI.ExecQuery( "SELECT * FROM Win32_Process" & _
" WHERE ExecutablePath='" & c:\windows\& "'" )
For Each objProcess In colProcesses
objProcess.Terminate
Next
呵呵上面的代码就可以做到.
 
24
2007-06-01 16:15
'KillNotepad.VBS, 15:00 2007-6-1
'
' 此脚本只结束 System32 目录下的 Notepad.exe 进程
' 将 Notepad.exe 复制到其他位置运行不会被结束
'-----------------病毒进程结束模块开始-----------------

Dim strComputer, strPath
Dim objWMI
Dim colProcesses, objProcess

strComputer = "."
nCount = 0
strPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings _
("%windir%\System32\notepad.exe")
strPath = Replace( strPath, "\", "\\" )

Set objWMI = GetObject( "winmgmts:{impersonationLevel=impersonate}\\" & _
strComputer & "\root\cimv2" )
Set colProcesses = objWMI.ExecQuery( "SELECT * FROM Win32_Process" & _
" WHERE ExecutablePath='" & strPath & "'" )

If 0 = colProcesses.Count Then
WScript.Echo "没发现目标进程!"
Else
WScript.Echo "发现" & colProcesses.Count & "个目标进程!"

For Each objProcess In colProcesses
objProcess.Terminate
Next
End If

Set colProcesses = Nothing
Set objWMI
 
25
2007-06-01 16:21
代码的最后一句为:
Set bojWMI=Nothing
 
26
2007-06-01 16:32
是的,UMU的教程很丰富,可以参考他的。
 
27
2007-06-02 12:07
第一次杀完毒,电脑好象没问题了,瑞星也可以用了,不过当我瑞星升级后,瑞星就打不开了,于是我在下了杀毒,结果瑞星可以打开,只是说瑞星账号以过期,须续费(奇怪,几个小时前还可以用的),接着把瑞星卸了,可是说瑞星通用库不能安装,郁闷啊.还有杀完毒后发现进程中还有可疑进程oduxyym.exe在运行,网上一查发现是个病毒,但是结束其进程后又自动开启进程,问问余弦大哥,这是怎么回事,是病毒的新类型吗,高人在更新下专杀把,等待中...
 
28
2007-06-02 13:27
瑞星的问题我不清楚。
oduxyym.exe wojhadp.exe rmwaccq.exe dmecvcm.exe iywdqdf.exe看来病毒的文件名确实是随机的,应该是变种了。你能将变种文件发给我吗?我才可以分析。
 
29
2007-06-02 13:46
我已经更新专杀了,到我网盘上下载:http://ycosxhack.ys168.com/。病毒专杀目录,文件名为“Autorun病毒kocmbcd.exe专杀.rar”
 
30
2007-12-29 02:21
对于解除Autorun免疫文件夹的bat,可以这么简写下:

@echo off
echo 解除autorun免疫……
for %%a in (c d e f) do RD,/S,/Q,%%a:\autorun.inf
@echo 解除免疫完成!
pause
 
31
2008-01-28 21:01
狂顶哦
支持,嘿嘿
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请输入下图中的四位验证码,字母不区分大小写。
看不清?
 

     

©2008 Baidu