可以这么说,一般的病毒,无论是文件型还是感染型,是会改变文件大小的。但是:
1.文件大小不等于占用空间大小。这要明确,占用空间是以簇为单位,一簇(FAT32的硬盘中为4KB)只能容纳同一个文件。所以一般来说,占用空间大小大于文件大小,那么,病毒感染的代码有可能用到此细小的空余空间,这样文件大小增大了,占用空间不变。
2.PE文件本身代码存储上是有空隙的,形象地说在文件中有“孔洞”可钻。也曾有病毒,把自身化整为零,嵌入代码中的空隙,当运行时再重新装嵌起来,这样,连文件大小都不会改变。至于具体的细节就不讲了,因为我也不太了解。
以上这些方法,都是90年代就出现的了。不过,好像不是现今的发展趋势。