利用WSH里的MapNetworkDrive方法脚本蠕虫的传播方式
2019-10-26 17:57:51
供稿:网友
我近日在网络上看到了一些关于局域网脚本蠕虫的传播方式的一些讨论,这里提供一些思路。
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