1971 · Security
Creeper: the 1971 program often called the first computer virus
In 1971 an engineer at BBN wrote Creeper, a harmless program that hopped between computers on the ARPANET printing “I’M THE CREEPER : CATCH ME IF YOU CAN”. A self-copying version followed, and so did Reaper, a program written to hunt it down.
What Creeper was
Creeper was an experimental program written in 1971 by Bob Thomas, an engineer at Bolt Beranek and Newman (BBN), the Massachusetts company that built much of the ARPANET, the US research network that grew into the internet. It ran on DEC PDP-10 computers using BBN’s TENEX operating system, which were linked over the ARPANET.
Creeper did one thing. It moved from one TENEX machine to another across the network and, on each terminal it reached, printed a message: “I’M THE CREEPER : CATCH ME IF YOU CAN”. It did not damage files or steal anything. It was a test of an idea: could a running program pick itself up and continue on another computer?
From moving to copying
Thomas’s original Creeper moved rather than spread. When it started on a new machine it stopped on the old one, so only one copy existed at a time. Ray Tomlinson, the BBN engineer who had just sent the first network email, then wrote a version that copied itself to the next machine while the original kept running.
That change is what makes Creeper important. A program that makes copies of itself and sends them across a network to other computers is what we now call a worm, and Tomlinson’s Creeper is generally described as the first one. The number of machines it could reach was small: at most 28 TENEX computers on the ARPANET at the time, run by researchers who knew about the experiment.
Reaper, the first antivirus
Tomlinson also wrote Reaper, a program that moved through the ARPANET looking for copies of Creeper and deleting them. Reaper is often called the first antivirus program, although it worked the same way as the thing it was hunting: it was itself a self-moving program that went looking for another one.
The contest between the two programs later inspired Core War, a programming game in which players write small programs that fight for control of a simulated computer’s memory. A. K. Dewdney introduced it in his “Computer Recreations” column in Scientific American in 1984, which brought ideas about self-copying code to a wide audience.
Was Creeper really the first computer virus?
It depends on the definition. Strictly, a virus attaches itself to another program or disk and spreads when that host is run or shared. A worm spreads by itself across a network. By that standard Creeper was a worm, and the label “first computer virus” is a convenient shorthand rather than a precise description.
The idea is also older than the program. In 1949 the mathematician John von Neumann gave lectures at the University of Illinois on the theory of complicated self-reproducing automata, showing in principle that a machine could contain instructions to build a copy of itself. His work was later published as the Theory of Self-Reproducing Automata, and he is often called the theoretical father of computer viruses.
Other “firsts” are often quoted. Elk Cloner, written by the 15-year-old Rich Skrenta and spread on Apple II floppy disks from early 1982, is usually called the first personal computer virus to spread in the wild. In 1984 Fred Cohen, a student at the University of Southern California, published “Computer Viruses: Theory and Experiments”, the first paper to call self-reproducing programs viruses, a term suggested by his supervisor Leonard Adleman. Brain, created in 1986 by the brothers Basit and Amjad Farooq Alvi in Lahore, Pakistan, was the first virus for IBM PC compatible computers.
Why Creeper still matters
Creeper was harmless and was written in a small, trusting research network where everyone knew everyone else. But it showed early on that a networked computer would run code that arrived from another machine, and that such code could keep going without its author.
Every later worm used the same basic trick on a far bigger and less friendly network. Within three decades worms such as ILOVEYOU, Code Red and Slammer were reaching hundreds of thousands of machines in hours. The Creeper and Reaper pair also set the pattern that still describes computer security: a program that spreads, followed by a program written to catch it.
Sources
- Wikipedia: Creeper and Reaper
- Wikipedia: Computer virus
- Cohen, F., “Computer Viruses: Theory and Experiments”, 1984
- Dewdney, A. K., “Computer Recreations”, Scientific American, May 1984
- von Neumann, J., Theory of Self-Reproducing Automata, edited by A. W. Burks, University of Illinois Press, 1966