- Virus Simulation Suite
Virus Simulation Suite, the Hirst program, is described in the program
documentation as simulating the visual and aural effects of some of the
PC viruses [1]. The copyright dates of the files are 1988, 1989 and 1990,
which explains why the viruses simulated are the ones from "the early
days". The program was distributed as freeware, and came with two
tests designed to prevent execution of any tampered-with portion of the
package. The simulations which came with the version we examined are:
- CASC-SIM.COM Cascade virus (standard activation)
- CSC-SIMX.COM Cascade virus (display only)
- DDAN-SIM.COM Devil's Dance virus
- DDN-SIMD.COM Devil's Dance virus (single shot display)
- DENZ-SIM COM Denzuk virus (single shot display)
- FUMN-SIM.COM Jerusalen (2) (Fu Manchu) virus
- FUM-SIMD COM Jerusalen (2) (Fu Manchu) virus (single shot display)
- FUM-SIMX.COM Jerusalen (2) (Fu Manchu) virus (censored)
- ITAL-SIM.COM Italian virus (standard activation)
- ITL-SIMX.COM Italian virus (display only)
- JERU-SIM.COM Jerusalem (1) virus
- OROP-SIM.COM Music virus
- ORO-SIMX.COM Music virus (minimum delay)
- YANK-SIM.COM Yankee Doodle virus (standard activation)
- YNK-SIMX.COM Yankee Doodle virus (tune only)
[from Virus Simulation Suite Documentation, (c) Joe Hirst, 1988-1990]
Although at first glance, the number and variety of simulations seems
woefully insufficient, one must remember that at the time of its
development, there were a limited number of viruses to simulate.
This limitation aside, the programs do a good job of simulating the
viruses' on-screen performance.
- Virlab
Virlab [2], a product of research at the Institute for Informatiks of the
Technical University of Munich, was initially released as a public domain
program. The version discussed here is v1.5. There is said to be a newer,
commercial version available, but we have been unable to
obtain a copy of it for review.
The program is described in its documentation as being designed to simulate the spread
of DOS computer viruses, as well as to teach about virus prevention. The "free, riskless
experimenting" is said to teach how viruses spread from one infected machine/disk to another,
and allow the infection process to be studied at various stages in its lifecycle. Rudimentary simulation
of over 530 viruses is provided, as well as the option to design a customized
simulated virus using a menu.
Virlab makes virus activity visible in a variety of ways, including a display of infected memory,
the use of color to demonstrate disks infected disks, and
notation of failures of simulated antivirus programs (via a pop-up window). Virlab
explicitly states it is not a scanner, a prevention program, a file
modification program, or a virus construction kit. It also clearly
states it does not contain viral code or viral scan strings.
The principal benefit of Virlab is that it provides
users with the ability to learn about viruses hands-on, without
unnecessary or undesirable exposure to real viruses. The actual program
contains too many options to list, and is definitely worth examination
although when carrying out research for this article, it had a tendency
to crash the test computer with monotonous regularity.
- AntiVirus Toolkit Pro
Although several developers make available virus demonstrations
and simulations of viruses and virus-like activity, the most complete
collection of simulations which we are aware of is
Antiviral Toolkit Pro (AVP) [4], by Eugene Kaspersky. This
program provides an excellent source of aural and visual virus
displays, is professionally and elegantly designed, is easy to
use and contains no actual viruses.
- Simulated Viruses for testing purposes: Virus Simulator
While the idea of supplying users with a safe and easy way
to test the efficacy of anti-virus software is an appealing one,
we are only aware of one product which is designed to
produce "test" viruses - Virus Simulator.
Virus Simulator's author states the program is intended to
"generate safe and sterile, controlled test suites of sample
virus programs." Further, that "Virus Simulator's ability to
harmlessly compile and infect with safe viruses, is valuable
for demonstrating and evaluating anti-virus security
measures without harm or contamination of the system."
Despite the fact that the documentation clearly states the
the test simulations are "not intended to replace the comprehensive
collection of real computer virus samples" we are aware of
several reviews in which products have been unfairly
criticized for failing to detect these simulated viruses.
Later in this article we will explore these criticisms, and what
role, if any, Virus Simulator can play in the tool box of an
anti-virus product tester.
The program is designed to produce COM and EXE files, as
well as boot sectors and memory-resident programs which
contain "virus signatures". Furthermore, there is a
supplemental MtE module, which is said to provide "test
viruses and special dummy files". When the program was
first installed on my test machine, it locked up the system.
However, after a reboot, the program seemed to operate as
described, and created a number of COM and EXE simulated
virus files. The COM files created, could be executed (see
below), but the EXE files caused the machine to lock up
when executed.
An examination of the .COM files shows they perform several functions;
specifically the programs print the message "This is a SIMUTATED VIRUS
for testing. Copyright Rosenthal Engineering 1991" [sic] to the screen
and exit. A short disassembly of a COM format test virus is given below:
0100 E9A100 JMP 01A4
...
01A4 B440 MOV AH, 40
01A6 BB0100 MOV BX, 0001
01A9 B9A000 MOV CX, 00A0
01AC BA0401 MOV DX, 0104
01AF CD21 INT 21 ; Print message to screen
01B1 E80000 CALL 01B4
01B4 B8004C MOV AX, 4C00
01B7 CD21 INT 21 ; Terminate
Thus, very little code inside the file is actually executed; the
virus "signature" lies dormant elsewhere in the file.
The MtE portion of the Virus Simulator program contains real viruses written by the simulator
author. Although they are protected from modification, and are designed
to only infect certain special goat files, it is conceivably possible to
disable this protection.