计算机病毒免疫软件的制作方法

文档序号:6412367阅读:1592来源:国知局
专利名称:计算机病毒免疫软件的制作方法
技术领域
本发明属于计算机科学领域,主要涉及一种计算机病毒免疫软件的制作方法。
目前,计算机程序是易受计算机病毒感染的。传统的计算机病毒免疫技术是通过为程序加病毒特征码的方法来实现的。这种方法只能抵御一种或几种病毒的攻击,对于大多数病毒而言,它基本上是失效的,即它是不通用的。虽然存在种类繁多的消毒软件,但实际工作中仍存在下列问题不能及时发现系统中侵染的病毒,特别是新病毒,从而使侵入系统的病毒具有潜在的危害性;对新病毒不能及时作消毒处理,从而导致由于病毒的存在而影响工作的进度和质量;有时消毒软件本身也可能被病毒感染,即消毒软件本身的安全可靠性不能得到保障。为了解决这些问题,本发明在软件制作上作了改造,从而能使使用本发明制作的软件在受到计算机病毒感染后的第一次运行时即可发出病毒警告,并对自身进行消毒或自戕处理,自戕后的软件可通过程序医生予以修复。
本发明的目的在于给出一种制作能及时发现自身感染的病毒、发出病毒警告并对自身消毒或自戕的计算机病毒免疫软件的方法。
为实现该目的,本发明首先设计病毒通用免疫疫苗,而后将该疫苗植入相应的计算机软件中。病毒通用免疫疫苗在设计时同时包含下列功能测试它所在软件是否发生变化,设计时集中表现为感觉器;根据软件发生的变化决定对软件是否进行修复或自戕或正常运行,设计时集中表现为决策器;对软件修复或自戕,或正常运行,设计时集中表现为执行器。它的工作原理是通过感觉器进行测试计算机病毒的存在性,将情况给决策器判别,并根据判别结果由执行器对程序进行修复或自戕,或按正常的过程执行。为了避免病毒通用免疫疫苗只能对抗一种或几种计算机病毒,以及编制的代码较长,病毒通用免疫疫苗的感觉器在设计上不采用测试病毒特征码的方法,而是通过测试一些由于计算机病毒感染而使计算机程序必定和极大可能发生的变化或具有的特征程序长度是否被改变、与程序运行相关的数据结构的数据是否被改变、程序运行前各定位信息是否被改变、程序的开始程序段是否被改变来完成。这些特征若被改变,则可能存在计算机病毒。当然,如果程序能够测试这些变化或特征,它必须首先能测试出自己的名字,因此,测试自己的名字也是感觉器的一项内容。决策器的设计是通过感觉器得到的信息,作出是否执行程序消毒、程序自戕、程序正常执行的决定,并驱动执行器工作。执行器在设计上能根据感觉器得到的信息和执行器发出的指令,执行修复自身程序(即对自身程序进行消毒处理)、程序自戕、程序正常运行的功能。设计程序自戕功能的原因是在计算机病毒已经激活的系统中,计算机病毒对程序的修改是在程序存盘的一瞬间,这使得在带毒环境下消过毒的程序在存盘时有可能又重新被病毒感染,因此通过病毒通用免疫疫苗的程序自戕功能以避免这种病毒的再感染。自戕后的程序可用程序医生来修复。这里的程序自戕是指为使程序不受计算机病毒感染而对程序作的一种改动,被改动后的程序不能直接运行,程序医生可以通过约定修复已自戕的程序。这里的程序医生是指可以根据病毒通用免疫疫苗中自戕程序的约定去修复已自戕的程序。最后,在病毒通用免疫疫苗的设计中,另一个考虑的因素是不影响被植入软件的功能,以便能方便植入相应软件。为了做到这一点,在病毒通用免疫疫苗的设计上开始时设计保护程序现场部分,结束时设计恢复程序现场部分。这里所谓的将病毒通用免疫疫苗植入软件是指通过修改软件目标程序使病毒通用免疫疫苗成为软件的一部分的方法和通过修改软件所依赖的语言系统使软件在再次编译时包含病毒通用免疫疫苗的方法。
因此,用本发明制作的软件具有直接对抗几乎所有计算机病毒(即对几乎所有的计算机病毒是通用的)、及时发现侵犯软件的病毒(即可避免计算机病毒的潜在危害性)、及时对自身消毒或自戕以使自身无毒(即不对工作产生很大影响,并使软件具有很高的安全可靠性)、及时报告入侵系统的计算机病毒以使用户对系统及时采取消毒等措施的特点。这样,它不仅能为工矿企业的生产带来极大的好处,而且也能在一定程度上使军事、国防以及国家安全诸方面软件的安全可靠性得到提高。另外,用该方法制作的软件构成的系统,能有效地提高信息对抗能力。
本发明给出的


如下附图1为病毒通用免疫疫苗与所在软件的连接图。它主要给出了病毒通用免疫疫苗与它可能植入的软件的连接关系。其中,软件(1)是指被病毒通用免疫疫苗植入的软件,决策器(2)、感觉器(3)、执行器(4)分别是病毒通用免疫疫苗的主要构成部分,程序自身或系统环境是感觉器(3)可测试信息的渠道,同时也是执行器(4)执行相关程序操作所能作用的渠道,正常软件输入和正常软件输出只经过软件(1)而不对病毒通用免疫疫苗程序的任何部分起作用。这就是说,病毒通用免疫疫苗仅起保护程序免受病毒感染的作用,并不影响软件(1)的正常操作。附图2是病毒通用免疫疫苗工作流程的一种情况,它说明首先通过感觉器测试程序相关数据,而后,决策器判别程序是否被病毒感染。若不被感染的话,返回程序正常操作;若被病毒感染,则由执行器发出病毒警告,并修复程序或自戕程序后存盘。最后返回程序正常操作。附图3是病毒通用免疫疫苗工作流程的另一种情况,它说明首先通过感觉器测试程序相关数据,而后,决策器判别程序是否被病毒感染。若不被感染的话,返回程序正常操作;若被病毒感染,则由执行器发出病毒警告,并修复程序或自戕程序后存盘。最后程序终止。附图4是DOS系统上相关于EXE文件和COM文件的病毒通用免疫疫苗程序流程图。该图是本发明为实现病毒通用免疫疫苗而给出的一个例子。它首先为不影响被植入软件的功能而保护程序现场,而后计算程序开始运行时的DS、CS、IP、SS、SP的初始值,计算程序文件长度,查找程序名称,从而构成病毒通用免疫疫苗程序的感觉器部分。之后判别DS、CS、IP、SS、SP的初始值与程序文件的要求是否一致。若一致则判别程序文件中与运行相关的数据结构的数据是否被改变。这里的数据结构主要是指EXE文件的头信息。若没有改变,则判别由感觉器得到的程序文件的正确长度与当前程序文件的长度是否一致。若一致,则恢复程序现场,以不影响被植入软件的功能。上述三个条件有一个不正确,病毒通用免疫疫苗程序就认为它所在的软件已被病毒感染。它首先发出病毒警告,根据DS、CS、IP、SS、SP的初始值和文件长度的正确值修复程序。通过判别程序是否自戕而作出程序自戕后存盘或程序修复后存盘的决定。最后恢复程序现场,以确保不影响被植入软件的功能。其中,发出病毒警告、将修复后程序以及自戕后程序存盘的一系列操作属于执行器部分。而判别程序是否被病毒感染的条件判别部分属于决策器部分。
实现本发明的最好方式有两个编制能将病毒通用免疫疫苗植入一般程序目标代码的程序,以使当前流行的大量软件受到保护;编制能将病毒通用免疫疫苗植入当前有影响的高级语言系统中的程序,以使由它们生成的软件受到保护。第一种方式可以保护正在使用的软件,第二种方式可以保护大量的将要面市的软件和提高与军事、国防以及国家安全诸方面有关的软件的安全可靠性,并使它们具有一定的信息对抗能力。
权利要求
1.一种计算机病毒免疫软件的制作方法,其特征是将病毒通用免疫疫苗植入软件中;
2.权力要求1中所述的计算机病毒免疫软件的制作方法中,病毒通用免疫疫苗主要由感觉器(3)、决策器(2)、执行器(4)组成,在植入软件(1)后不影响软件(1)的正常功能,其特征是感觉器(3)能测试它所在软件(1)是否发生变化;决策器(2)能根据软件(1)的变化决定对软件是否进行修复或自戕或正常运行;执行器(4)能对软件(1)修复或自戕,或正常运行;
3.权利要求1中所述的计算机病毒免疫疫苗的制作方法中,植入的特征是通过修改软件目标程序使病毒通用免疫疫苗成为软件的一部分,或通过修改软件所依赖的语言系统使软件在再次编译时包含病毒通用免疫疫苗;
4.权力要求1中所述的计算机病毒免疫疫苗的制作方法,用该方法产生的软件的特征是由病毒通用免疫疫苗和软件(1)组成。
全文摘要
本发明属于计算机科学领域,主要涉及一种计算机病毒免疫软件的制作方法。它主要是将病毒通用免疫疫苗植入软件或语言中,使相应的软件或相应语言生成的软件在使用中能及时发现病毒、发出病毒警告、对自身进行消毒或自戕,无毒时执行软件正常操作。自戕软件可由程序医生修复。用该方法制作的软件比传统方法生成的软件更安全可靠,由于它能及时发现入侵系统的病毒,使用户及时采取措施,从而起到保护程序和数据的作用。
文档编号G06F11/00GK1204085SQ9711871
公开日1999年1月6日 申请日期1997年9月17日 优先权日1997年9月17日
发明者田军营 申请人:田军营
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1