4.1.2 病毒的三个基本结构
计算机病毒本身的特点是由其结构决定的,所以计算机病毒在其结构上有其共同性。计算机病毒一般包括引导模块、传染模块和表现(破坏)模块三大功能模块,但不是任何病毒都包含这三个模块。传染模块的作用是负责病毒的传染和扩散,而表现(破坏)模块则负责病毒的破坏工作,这两个模块各包含一段触发条件检查代码,当各段代码分别检查出传染和表现或破坏触发条件时,病毒就会进行传染和表现或破坏。触发条件一般由日期、时间、某个特定程序、传染次数等多种形式组成。
对于寄生在磁盘引导扇区的病毒,病毒引导程序占有了原系统引导程序的位置,并把原系统引导程序搬移到一个特定的地方。系统一启动,病毒引导模块就会自动地载入内存并获得执行权,该引导程序负责将病毒程序的传染模块和发作模块装入内存的适当位置,并采取常驻内存技术以保证这两个模块不会被覆盖,再对这两个模块设定某种激活方式,使之在适当时候获得执行权。处理完这些工作后,病毒引导模块将系统引导模块装入内存,使系统在带病毒状态下运行。
对于寄生在可执行文件中的病毒,病毒程序一般通过修改原有可执行文件,使该文件在执行时先转入病毒程序引导模块,该引导模块也可完成把病毒程序的其他两个模块驻留内存及初始化的工作,把执行权交给执行文件,使系统及执行文件在带毒的状态下运行。
对于病毒的被动传染而言,是随着拷贝磁盘或文件工作的进行而进行传染的。而对于计算机病毒的主动传染而言,其传染过程是:在系统运行时,病毒通过病毒载体即系统的外存储器进入系统的内存储器、常驻内存,并在系统内存中监视系统的运行。
在病毒引导模块将病毒传染模块驻留内存的过程中,通常还要修改系统中断向量入口地址(例如INT 13H或INT 21H),使该中断向量指向病毒程序传染模块。这样,一旦系统执行磁盘读写操作或系统功能调用,病毒传染模块就被激活,传染模块在判断传染条件满足的条件下,利用系统INT 13H读写磁盘中断把病毒自身传染给被读写的磁盘或被加载的程序,也就是实施病毒的传染,再转移到原中断服务程序执行原有的操作。
计算机病毒的破坏行为体现了病毒的杀伤力。病毒破坏行为的激烈程度,取决于病毒作者的主观愿望和其所具有的技术能量。
数以万计、不断发展扩张的病毒,其破坏行为千奇百怪,不可能穷举其破坏行为,也难以做全面的描述。病毒破坏目标和攻击部位主要有系统数据区、文件、内存、系统运行、运行速度、磁盘、屏幕显示、键盘、喇叭、打印机、CMOS、主板等。