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

我近日在网络上看到了一些关于局域网脚本蠕虫的传播方式的一些讨论,这里提供一些思路。
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,使之不断复制。
具体参见其他有关新欢乐时光的病毒分析。

(0)

相关推荐

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

    我近日在网络上看到了一些关于局域网脚本蠕虫的传播方式的一些讨论,这里提供一些思路. 1. 利用WSH里的MapNetworkDrive方法.该方法是将网络驱动器映射到本地. MapNetworkDrive方法: object.MapNetworkDrive(strLocalName, strRemoteName, [bUpdateProfile], [strUser], [strPassword]) 参数 object  WshNetwork 对象.  strLocalName  表示映射驱动器

  • javascript中利用柯里化函数实现bind方法

    柯理化函数思想:一个js预先处理的思想:利用函数执行可以形成一个不销毁的作用域的原理,把需要预先处理的内容都储存在这个不销毁的作用域中,并且返回一个小函数,以后我们执行的都是小函数,在小函数中把之前预先存储的值进行相关的操作处理即可: 柯里化函数主要起到预处理的作用: bind方法的作用:把传递进来的callback回调方法中的this预先处理为上下文context; /** * bind方法实现原理1 * @param callback [Function] 回调函数 * @param con

  • javascript中利用柯里化函数实现bind方法【推荐】

    • 柯理化函数思想:一个js预先处理的思想:利用函数执行可以形成一个不销毁的作用域的原理,把需要预先处理的内容都储存在这个不销毁的作用域中,并且返回一个小函数,以后我们执行的都是小函数,在小函数中把之前预先存储的值进行相关的操作处理即可: • 柯里化函数主要起到预处理的作用: • bind方法的作用:把传递进来的callback回调方法中的this预先处理为上下文context; /** * bind方法实现原理1 * @param callback [Function] 回调函数 * @par

  • php利用cookies实现购物车的方法

    本文实例讲述了php利用cookies实现购物车的方法.分享给大家供大家参考.具体分析如下: php购物车是在电子商务网站会用到的,一种像超市购物车一样的,选好商品了,先放到自己的购物车里面等好了再到柜台结算,本款php购物车完全按照这个原理来实例的,感兴趣的朋友可以来看看,该实例利用了cookie来实现,代码如下: 复制代码 代码如下: <?php /**  * 购物车类 cookies 保存,保存周期为1天 注意:浏览器必须支持cookie才能够使用  */ class cartapi {

  • 利用ASP实现事务处理的方法

    利用ASP实现事务处理的方法     选择自 AppleBBS 的 Blog   关键字   利用ASP实现事务处理的方法  出处 在开发Web应用时,无一例外地需要访问数据库,以完成对数据的查询.插入.更新.删除等操作.受应用逻辑的影响,有时需要将多条数据库操作指令组成一个工作单元(事务).在数据库中,所谓事务是指一组逻辑操作单元,它使数据从一种状态变换到另一种状态.为确保数据库中数据的一致性,应当用离散的成组的逻辑单元操作数据:当它全部完成时,数据的一致性可以保持:而当单元中的一部分操作失败

  • Angular利用trackBy提升性能的方法

    在Angular的模板中遍历一个集合(collection)的时候你会这样写: <ul> <li *ngFor="let item of collection">{{item.id}}</li> </ul> 有时你会需要改变这个集合,比如从后端接口返回了新的数据.那么问题来了,Angular不知道怎么跟踪这个集合里面的项,不知道哪些该添加哪些该修改哪些该删除.结果就是,Angular会把该集合里的项全部移除然后重新添加.就像这样: 这样做

  • js函数柯里化的方法和作用实例分析

    本文实例讲述了js函数柯里化的方法和作用.分享给大家供大家参考,具体如下: 函数柯里化的方法: 1,利用数组的reduce方法可实现柯里化,具体参见我的另外一篇文章 2,代码如下 const curry = (fn, ...args) =>{ console.log('args',args) // console.log(fn.length,args.length) return args.length < fn.length // 参数长度不足时,重新柯里化该函数,等待接受新参数 ? (..

  • Go语言利用ssh连接服务器的方法步骤

    学习了Go语言后,打算利用最近比较空一点,写一个前端部署工具,不需要每次都复制粘贴的麻烦,需要完成部署的第一步就需要连接远程服务器 打开 ssh server 首先我们想要利用ssh连接服务器的前提是服务器打开了ssh server,ssh 分为client和server端 ,如果打开了client可以连接远程服务器,打开了server就可以被连接. 因为linux网上教程很多,windows比较少,所以这里只写windows版本的, 首先我们一般用Open SSH这个工具打开服务,window

  • python 利用PyAutoGUI快速构建自动化操作脚本

    一.背景 大家好,我是安果! 我们经常遇到需要进行大量重复操作的时候,比如:网页上填表,对 web 版本 OA 进行操作,自动化测试或者给新系统首次添加数据等 这些操作的特点往往是:数据同构,大多是已经有了的结构化数据:操作比较呆板,都是同一个流程的点击.输入:数据量大,极大消耗操作人精力 那么能不能自动化呢? 二.自动化的方案 如果你在 web 上进行操作, Python 的 Selenium 可以满足要求.如果需要对 GUI 界面进行操作,你恐怕得试验下"按键精灵"能不能满足要求.

  • 利用JavaScript构建树形图的方法详解

    目录 什么是树形图 浏览JS树形图 创建一个基本的JS树形图 1. 创建一个HTML页面 2. 参考JavaScript文件 3.设置数据 4. 编写一些JS树形图代码 自定义JS树形图 A. 改变颜色 B. 应用线性色标 C. 格式化标签和工具提示 D. 按升序排列图块 树形图可视化广泛用于分层数据分析.如果你没有经验还想创建一个,那将会有些复杂.下面是一个详细教程,教你如何使用JavaScript创建交互式树形图. 宇宙中只有我们吗?我们每个人都曾在某个时候问过自己这个问题.当我们在考虑地球

随机推荐