分享

宏病毒详解

 工藤佑作 2010-04-04

宏病毒详解



认识“宏病毒”
              既然了解了宏的概念,那么宏病毒也就不难理解了。宏病毒与有用的正常宏采用相同的语言编写,只是这些宏的
            执行效果有害,而且在编写上利用了Word允许宏自动执行这一特点,使用户在打开文件时不知不觉地就运行了这些病
            毒程序。早期的宏病毒破坏方式往往是更改所附着的文档内容、扰乱文档的正常打印、开启一个无法关闭的对话框或
            不断开启新的文件直到系统资源耗尽,Word运行出错为止等。随着Office新版本的推出,微软不断加强宏的功能,宏
            病毒的危害也就越来越大。前一段流行的Melissa病毒是利用宏来使E-Mail管理程序Outlook自动根据其通讯录中记录
            的前五十个地址发信,而最近较有影响的July Killer(七月杀手)宏病毒的破坏方式则是产生一个只有一句话
            "deltree/y c:\"的Autoexec.bat文件来替代你现有的该文件,当你下次启动机器时这条指令就会删除你C盘中的所
            有文件, 同时该病毒还会使“工具”菜单下的“宏”、“模板和加载项”、“自定义”、“选项”等选项无法工作,
            以达到阻止采用编辑宏等一般方法来手动清除病毒的目的。由此可见,当今宏的功能已经强大到可以操纵软件运行,更
            改文件内容的地步,这也是防"宏"成为反病毒工作重要组成部分的原因。
            宏病毒的传染
             
              前面提到,病毒的最基本特征是传染性,那宏病毒又是怎样传染的呢?首先让我们来看看Word的工作过程。为了使
            Word更易用,微软在Word中集成了许多模板,如典雅型传真、典雅型报告、典雅型通讯录模板等。 这些模板不仅包含
            了相应类型文档的一般格式,而且还允许用户在模板内添加宏,使得用户在制作自己的特定格式文件时,减少重复劳
            动。在所有这些模板中,最常用的就是Normal.dot模板(通用模板),它是启动Word时载入的缺省模板。任何一个W_
            ord文件,其背后都有相应的模板,我们打开或建立大多数Word文档时,系统都会自动装入Normal.dot 模板并执行其
            中的宏。Word处理文档时,需要进行各种不同的操作,如打开文件、关闭文件、读取数据资料以及储存和打印等等。
            每一种动作其实都对应着特定的宏命令,如存文件与File Save相对应、改名存文件对应着File Save AS, 打印则对
            应着File Print等等。这些宏命令集合在一起构成了通用宏,通用宏保存在模板文件中,以使得Word启动后可以有效
            地工作。Word打开文件时,它首先要检查文件内包含的宏是否有自动执行的宏(AutoOpen宏)存在,假如有这样的宏
            ,Word就启动它。当然,如果Auto Close宏存在,则系统在关闭一个文件时,会自动执行它。通常,Word宏病毒至少
            会包含一个以上的自动宏,当Word运行这类自动宏时,实际上就是在运行病毒代码。宏病毒的内部都具有把带病毒的
            宏移植(复制)到通用宏的代码段,也就是说当病毒代码被执行过后,它就会将自身复制到通用宏集合内。当Word系统
            退出时,它会自动地把所有通用宏(当然也包括传染进来的病毒宏)保存到模板文件中(通常是Normal.dot模板)。 这
            样,一旦Word系统遭受感染,则以后每当系统进行初始化时,系统都会随着Normal.dot的装入而成为带毒的Word系统,
            继而在打开和创建任何文档时感染该文档。
            感染Normal.dot模板是宏病毒的最常用传染方式。此外,与系统启动相类似,Word在启动过程中会自动执行 C盘根目
            录下名为Autoexec.dot文档中包含的宏和office\startup\(是指Word的安装目录)目录内的模板文件所包含的宏,
            有些病毒通过这两个“突破口”感染Word系统,使每次启动后的Word都成为带毒环境。
            宏病毒的防御
              防御宏病毒的根本,在于打开Word文档时先禁止所有自动执行的宏(以Auto开头的宏)的执行。由于宏病毒的肆虐,
            微软公司在Word 97版本中提供了此项功能,用户只需将其打开激活即可。方法是:单击工具菜单下的“选项”, 在
            随后出现的选项卡中选择“常规”选项卡,用鼠标勾选“宏病毒防护”选项(见图6)这样Word就有了防止“自动宏”
            执行的功能,如果打开的文件带有“自动宏”。Word 97将自动弹出宏警告对话框,来让用户选择是否执行宏, 如果
            选择了“取消宏”,那么这个Word文档将用只读形式打开,其内含的所有宏都没有执行。这个方法在理论上能防住所
            有宏病毒的侵袭,但它有两个很大的缺陷:一是它拒绝了所有宏的执行,包括正常宏和病毒宏,这会造成某些文档在
            打开时出现错误。二是宏病毒防护无法阻止启动Word时Autoexec.dot中的宏和Normal.dot中的宏的自动执行。也就是
            说,一旦你的Word被宏病毒感染过了,生成了带毒的Autoexec.dot或Normal.dot,那么宏病毒防护也就没有任何作用
            了。基于以上原因,用户千万不可认为拥有宏病毒防护这一屏障就能高枕无忧了,选择优秀的反病毒软件才是解决问
            题的根本。对于还在使用Word 97以前版本的用户来说,根本就没有宏病毒 防护这一武器,在选择反病毒产品时就更
            要慎重了。
            技巧:治疗Word
            问题:我的Word被宏病毒感染了,使用Word时常常会出现一些异常情况。我用杀毒软件将所有带毒的Word文件都处理
            了一遍,软件提示病毒被顺利杀除了。但是我重新打开它们时病毒又回来了,而且所有用我的Word制作的文档都带有
            病毒,我该怎么办?
            这是一个常常令电脑用户感到困惑的问题,怎样使被感染的Word系统恢复正常?许多用户采用的是将Word卸载然后重
            装的方法,但是有时候问题依旧没有被解决。其实了解了宏病毒的传染原理后,可以非常轻松地将系统恢复正常。下
            面我们分步骤详细说明:
            退出Word,然后先到C盘跟目录下察看有没有Autoexec.dot文件,如果有这个文件, 而你又不知道它是什么时侯出现
            的话,请删除它。
            找到Normal.dot文件(一般位于\Templates\目录下,指的是Office的安装目录,缺省为C:\Program Fil_
            es\Microsoft Office目录),然后删除它。不用担心,Word不会因为找不到Normal.dot而拒绝启动, 它会自动重新
            生成一个干净的没有任何外来宏的Normal.dot文件。
            到目录\Office\Starup下察看有没有模板文件,如果有而且不是你自己拷贝进去的话,删除它。
            重新启动Word,这时你的Word已经恢复正常了。
            检查宏病毒防护是否被启用了,有些病毒(如Jully Killer)会自动将其改为禁用,如果不启用宏病毒警告功能,你
            的Word会很快再次被病毒感染的。具体启用方法在宏病毒防御一节中已经介绍过了。
            做完以上五步,你的Word就恢复正常了。只要在使用中不随便让Word执行来路不明的宏,你就可以一直保持它的 "纯
            净"。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多