VBScript脚本病毒特点及原理分析 4.1 VBScript脚本病毒的特点 VBS病毒是用VBScript编写而成,该脚本语言功能非常强大,它们利用Windows系统的开放性特点,通过调用一些现成的Windows对象、组件,可以直接对文件系统、注册表等进行控制,功能非常强大。应该说病毒就是一种思想,但是这种思想在用VBS实现时变得极其容易。VBS脚本病毒具有如下几个特点: 1.编写简单,一个以前对病毒一无所知的病毒爱好者可以在很短的时间里编出一个新型病毒来。 2.破坏力大。其破坏力不仅表现在对用户系统文件及性能的破坏。他还可以使邮件服务器崩溃,网络发生严重阻塞。 3.感染力强。由于脚本是直接解释执行,并且它不需要像PE病毒那样,需要做复杂的PE文件格式处理,因此这类病毒可以直接通过自我复制的方式感染其他同类文件,并且自我的异常处理变得非常容易。 4.传播范围大。这类病毒通过htm文档,Email附件或其它方式,可以在很短时间内传遍世界各地。 5.病毒源码容易被获取,变种多。由于VBS病毒解释执行,其源代码可读性非常强,即使病毒源码经过加密处理后,其源代码的获取还是比较简单。因此,这类病毒变种比较多,稍微改变一下病毒的结构,或者修改一下特征值,很多杀毒软件可能就无能为力。 6.欺骗性强。脚本病毒为了得到运行机会,往往会采用各种让用户不大注意的手段,譬如,邮件的附件名采用双后缀,如“.jpg”,“.vbs”,由于系统默认不显示后缀,这样,用户看到这个文件的时候,就会认为它是一个jpg图片文件。 7.使得病毒生产机实现起来非常容易。 8.vbs脚本病毒的弱点 vbs脚本病毒由于其编写语言为脚本,因而它不会像PE文件那样方便灵活,它的运行是需要条件的。 5.2 功能流程图 脚本病毒程序流程:首先是初始化工作及创建主函数过程,其次是搜索文件,选择某一文件并判断感染条件,如果已经感染,则结束感染破坏文件模块,并选择下一文件。如果未感染,则执行感染破坏文件模块,再选择下一文件。并使用递归算法调用搜索文件模块本身,对子文件夹进行操作。对磁盘搜索,文件感染破坏操作完成后,执行注册表修改操作,最后结束程序。 5.3 设计思路 1.初始化部分:定义相关全局变量。 2.主函数部分:使用系统文件操作(FSO)对象来对各个文件进行操作,调用scan过程,磁盘遍历过程,注册表操作过程。 3.文件搜索部分:使用系统文件操作对象,通过调用getfolder方法,得到路径下的文件,再用递归算法,调用过程本身,实现对自文件夹的访问。 4.文件破坏部分:判断文件后缀,如果符合条件,执行删除操作。 5.文件感染部分:如果文件未感染,则将脚本病毒自身代码覆盖源文件,实现对目标文件的感染。 6.注册表操作部分:创建注册表键值修改过程,再调用该过程对注册表进行修改操作。 |