前言:想要写出一篇引人入胜的文章?我们特意为您整理了计算机病毒免疫思索范文,希望能给你带来灵感和参考,敬请阅读。
一、建立程序的特征值档案
这是对付病毒最有效的办法。如对每一个指定的可装载执行的二进制文件,在确保它没被感染的情况下进行登记,然后计算出它的特征值填入文件特征值表中。以后,每当系统的命令处理程序执行它的时候,先将程序读入内存检查其特征值是否变化,由此决定是否运行该程序,若发现某程序的特征值改变,应当做病毒传染的嫌疑,坚决予以放弃。如果用此方法管理DOS的文件以及那些以非文件方式存在的引导记录(BOOT区)、主引导记录等,它可及时指出这些磁盘记录信息是否发生了变化。也可阻止任何病毒对应用程序的入侵。但是,本方法只能在操作系统引导以后发生作用,因此其主要缺点是,不能阻止操作系统引导之前引导记录病毒及DOS引导过程中的病毒。这点是可以通过配合别的方法加以克服的。
二、严格内存管理
PC系列的微机在启动过程中,ROM中的BIOS将初始化程序调试到的系统主内存大小以K字节为单位,记录在RAM区的0040:0013单元里,以后的操作系统相应用程序都是通过直接或间接(INT21H)的手段读取该单元的内容,以确定系统的内存大小。由于本单元内容可以随便改写,它使后序DOS的内存管理再完善也是枉然。许多抢在DOS之前进入内存的病毒都是通过减少该单元值的大小,从而在内存高端空出一块块DOS毫无觉察的死角,给病毒留下了栖身之处。一个解决的办法,就是自己编制一个系统外围接口芯片直接读出内存大小的INT12H中断处理程序。当然,它必须在系统调用INT12H之前设置完毕。另一种办法是作—个内存大小记录的备份。对于通过合法方式要求驻留内存的程序,我们要提高警惕。DOS应在应用程序使用INT27H及DOS31H号功能调用申请驻留时,向用户提出警告,并由用户决定是否同意让该程序驻留。为了将好的应用程序和病毒分开,用户必须具有足够的计算机知识。例如知道什么样的程序才真正需要驻留内存。只有那些时钟程序、扩充键盘功能的程序、打印机驱动程序以及CCDOS、SK之类的软件才会有这种要求。不管怎么讲,以前从没有过驻留要求的应用程序,如果哪一天突然向DOS提出驻留申请,它很可能已被病毒感染。
三、中断向量管理
病毒驻留内存时,常常会修改一些中断向量。如果只是收回其所占的内存而不恢复其破坏的中断向量,是不行的,因为被修改的中断向量可能会指向一些毫无意义的代码,这样就可能引起死机。因此,中断向量表的恢复是必要的。为了使这项工作简单一些,只要我们事先保存ROMBIOS和DOS引导后设立的中断向量表备份就行了,因为同一台计算机,在同一种DOS版本下,其ROMBIOS和DOS设立的中断向量都是一成不变的,有了上述中断向量表的备份之后,我们可以着手以下工作:
1.在DOS的引导记录阶段、重新覆盖一遍中断向量表。当然,也可以将中断向量表与备份的向量表做比较以此决定是否重新覆盖当前中断向量。这样还可以提供当前盘的BOOT是否包含病毒之类的信息。以此方法可以阻止任何BOOT引导阶段的病毒。
2.在AUTOEXEC.BAT中包含一条覆盖当前中断向量表的外部命令。此命令仍然是比较与判别当前的中断向量是否变异,由此提示用户,并校正其中变化了的中断向量。
3.在程序结束处理中断INT22H里也可插入具有上述功能的程序,其处理类似于前述内存管理。它可以阻止有中断向量修改行为的应用程序病毒。
总之,合适的中断向量管理,可以阻止任何有中断修改企图的病毒。通过上述分析,我们已经得到许多种能抑制病毒活动的免疫方法。但是这些方法各有长短。实际使用时,还需要根据具体的情况,对它们取长补短地进行最优组合,以得到一个较完美的病毒免疫系统。