The reason that my simple virus protection scheme was limited to *.COM
files is that *.EXE files are actually modified by the loader. For example,
the segment addresses must be installed by the *.EXE loader when the *.EXE
file is loaded into RAM. This same program could easily be corrupted and
used to infect the executable code with a virus. I could see not simple
means of detecting that such happened.
A CRC or checksum routine that verifed the integrity of the executable code
before that code executes could not be used in general purpose *.EXE programs
since the CRC and checksum routines do not know what legal values would be
assigned to instructions accessing Segment Registers.
--- Maximus 3.01
---------------
* Origin: Castrovalva BBS 610-917-0380 (1:2626/102)
|