A compression virus is an example of a benevolent
computer virus
A computer virus is a type of computer program that, when executed, replicates itself by modifying other computer programs and inserting its own code. If this replication succeeds, the affected areas are then said to be "infected" with a compu ...
, invented by
Fred Cohen. It searches for an uninfected
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
file, compresses the file and prepends itself to it. The virus can be described in pseudo code
program compression-virus:=
The ''01234567'' is the
virus signature, and is used to make sure (''if first-line-of-file = 01234567'') the file is not already infected. The virus then asks for permission (''ask-permission'') to infect a random
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
(''get-random-executable-file''). If the permission is granted, it
compresses the executable (''infect-executable''), prepends itself to it (''prepend''), uncompresses the current executable file (''uncompress the-rest-of-this-file'') into a
temporary file (''tmpfile'') and runs it (''run tmpfile'').
''Cruncher'' is an example of a compression virus, a strain of which – ''Cruncher.2092''
[{{Cite web , url=http://vil.nai.com/vil/content/v_318.htm , title=McAfee article on Cruncher.2092, ''read Characteristics'' , access-date=2009-07-29 , archive-url=https://web.archive.org/web/20100823073607/http://vil.nai.com/vil/content/v_318.htm , archive-date=2010-08-23 , url-status=dead ] – is described by
McAfee as
memory-resident virus that infects all but small
com
Com or COM may refer to:
Computing
* COM (hardware interface), a serial port interface on IBM PC-compatible computers
* COM file, or .com file, short for "command", a file extension for an executable file in MS-DOS
* .com, an Internet top-level d ...
files, making them smaller. The reason for excluding small programs is that their infected versions will be bigger than their originals.
References
Computer viruses