自己动手检测电脑病毒

Author: 河北 姜振龙 Date: 1996-01-26

        1.查看COMMAND.COM的长度。你的电脑配备某一版本的操作系统,请记住命令处理程序COMMAND.COM(DOS软盘中)的长度,当发现硬盘中COMMAND.COM文件长度改变时,则你的电脑肯定已经感染了病毒。这时要及时用清病毒软件杀死病毒,如果杀不死,应将硬盘重新格式化,并要检查最近一时期使用过的软磁盘,进行必要的处理(用清病毒软件检测杀死病毒或将盘格式化)。例如:MS-DOS 3.3A的命令处理程序COMMAND.COM文件长度为25308字节(用DIR命令查看),当其感染“黑色星期五”病毒后,其文件长度变为27121字节(用DIR命令查看)。这种方法只适合检测感染可执行程序(.EXE和.COM文件)的病毒。
        2.查看DOS的Boot区(引导记录)。由于操作系统类病毒占据DOS的引导记录(该引导记录负责装入DOS的核心部分__IBMDOS.COM和IBMBIO.COM,实现引导操作系统成功),可通过查看该记录(512字节)的内容来判断是否感染了病毒。用动态调试程序DEBUG或工具软件PCTOOLS读出磁盘的引导记录,将正常的引导记录(扇区)和带病毒引导记录(扇区)相对比。最明显的标志是:正常引导记录最后约128个字节大都是引导DOS出错时的英文提示信息,而感染有病毒的引导记录此处很多都是一些乱七八糟的字符,这样就可以得到确诊。具体方法如下:
        C>DEBUG
        -1 100 2 0 1
        -d 100 2ff
        -q      退出DEBUG
        如果发现软盘或硬盘引导扇区感染了操作系统类病毒,可使用清病毒软件自动清除,也可人工清除,下面介绍几种方法:
        a、执行SYS命令
        将DOS原系统盘插入软盘驱动器,重新启动电脑。要求此系统盘版本应与感染病毒的软盘或硬盘系统版本相同。在A>下打入SYS C∶(或A∶或B∶),之后重新启动电脑,即可恢复正常。但磁盘上存放病毒程序的若干扇区仍可能存在。
        b、替代Boot法
        因为操作系统类病毒程序修改了磁盘的引导扇区,所以将正常引导程序从磁盘中调出,再写入带毒磁盘的0柱面0磁道0扇区,将侵到该扇区的病毒程序覆盖。若文件分配表被破坏,这种方法并未恢复。具体操作如下:把同一版本DOS系统盘插入A驱动器并启动,之后执行下面命令:(假设C盘感染有病毒)
        A>DEBUG
        -L 100 0 0 1   将A盘0号扇区Boot内容调入内存
        -W 100 2 0 1   将此扇区写入C盘0扇区
        -Q    退出DEBUG
        c、格式化病毒磁盘
        首先要把有价值的文件备份起来,然后把感染病毒盘直接格式即可清除病毒。
        3.检测内存容量的变化
        ①用DOS 6.X下的MEM来检查
        当病毒驻留入内存后,都要占据一定的内存空间,这样可以通过检测内存容量的方法来检测系统中是否有病毒。如果内存容量莫明其妙的减少了(可能只减少1~2K),一般来说系统中可能存在病毒。
        ②C>DEBUG
        -D 0000:0413   ;断地址0000,偏移量地址413处开始的两个字节数是系统内存容量
        对于内存为1MB以上的电脑,由于DOS只能管理640KB,故段地址0000,偏移量为0413、0414处的内容应为80H和02H,即0280H换算成十进制为:0280H=2*16*16+8*16=640(KB)。如果上述内容不是80H、02H,则表明内存容量已经改变,系统中可能存在病毒。